Settings

Theme

MenuetOS

menuetos.net

179 points by je_bailey 4 years ago · 56 comments

Reader

Sirened 4 years ago

Always love hobby operating systems which leave UNIX and POSIX behind. It's really a shame that we're slowly converging on POSIX being the basis of _all_ operating systems since it forces some bizarre and undesirable design decisions [1]. Dropping POSIX and building something new gives us a chance to actually explore novel ideas in operating systems design.

[1] https://www.microsoft.com/en-us/research/uploads/prod/2019/0...

  • conradev 4 years ago

    Fuchsia is not a hobby operating system (it is deployed to production by Google) and it kinda leaves POSIX behind, which I find cool

    https://fuchsia.googlesource.com/docs/+/d4f9b980f18fc6722b06...

  • pjmlp 4 years ago

    Depends where you look.

    The cloud OSes have long left classical UNIX behind, Kubernetes or managed languages on top of type 1 hypervisors are the name of the game, even if there is some POSIX based kernel somewhere on the stack.

    On the mobile side, although Android and iOS have some POSIX support, it hardly matters for app development.

    Even on macOS, which is a certified UNIX, if you want access to some of the modern networking APIs, they are only exposed at Objective-C level.

    So while POSIX kind of has won, long term it has been yet another phase in the history of computing, thus looking forward to such alternatives.

    • conradev 4 years ago

      All of these things are ultimately abstractions built on top of POSIX (aside from actual unikernels which can be used in the virtualization scenario)

      It absolutely does free OS designers to remove the POSIX parts from in between, but no one really has yet

      • pjmlp 4 years ago

        There is no POSIX on many type 1 hypervisors, specially stuff like Hyper-V.

        Android and ChromeOS developers also don't have any access to any kind of POSIX abstractions or APIs.

  • mike_hock 4 years ago

    > In this paper, we argue that fork was a clever hack for machines and programs of the 1970s that has long outlived its usefulness and is now a liability.

    Based.

  • mahkoh 4 years ago

    Any paper that proposes to remove functionality without attempting to steelman said functionality can safely be disregarded.

atgs 4 years ago

I have really fond memories of playing with this sometime around 2005.

I would download as many ISOs as I could get my hands on during the week at one parent’s house (where we had the better PC and broadband) and then at the weekend staying with the other parent I would try out all kinds of linux distros and hobby OSes.

Menuet was incredible to me at the time, it was fast as hell. I played with it for hours and probably would have stuck with it over the crappy Win ‘95 install if not for the fact it basically didn’t have any useful software at the time. It was great fun to tinker with and explore though.

I’ve come across it every few years since and I’m always happy to see it still worked on.

cmeacham98 4 years ago

The author seems to be violating the GPL with Menuet64? Menuet64 is pretty clearly a derivative work of Menuet32, which is GPL. However, Menuet64 is released under a non-free license.

Originally I believed the author may be the sole author of Menuet32, and thus could relicense to whatever they wanted. However, the release notes (https://www.menuetos.net/relnotes.htm) credit many other authors with their contributions.

  • prmoustache 4 years ago

    Well it depends on the potential agreement with the other authors, I would say it is none of our business if they don't complain about it.

    Not sure if it becomes "legal" to breach the GPL if original authors die though.

  • yjftsjthsd-h 4 years ago

    Any chance they required copyright assignment / CLA?

  • andai 4 years ago

    Does anyone know the history or motivation behind this? Wikipedia says "The 64-bit main distribution is now proprietary" implying it used to be free?

    • qwertfisch 4 years ago

      No, M64 was never free, as far as I can tell. I remember stumbling over M32 around 2006, when I was interested in OS development while being a CS student. I kept interest, and some time later a 64 bit version was published, but no source code, unfortunately.

      The project kept growing a bit, very slowly. Seems like after v1.00 the author lost most interest. So if it is still a prototype work without any commercial usage, it would be great to have it published with source code.

  • GekkePrutser 4 years ago

    I also don't really understand the reason for the relicensing. There doesn't seem to be a commercial version available.

upbeatlinux 4 years ago

It blows my mind (in a good way) that people are still posting this to Hacker news. I remember writing code for MenuetOS in both my Operating Systems and Hardware classes in ~2002. Love it!

Klonoar 4 years ago

There's a fork of this as well, though I don't know much about why the fork happened or anything:

http://kolibrios.org/en/

  • snvzz 4 years ago

    License. MenuetOS is proprietary. KolibriOS is open source.

  • sigzero 4 years ago

    I couldn't find anything about why. It's only the 32bit version it seems. 32bit MenuetOS is GPL but the 64bit is a different license.

  • anta40 4 years ago

    I haven't touch KolibriOS for a few years. It used to be 32-bit only, not sure today.

nick__m 4 years ago

The reported audio latency, in the release note, is incredible:

  05.05.2022  1.42.20  Below millisecond audio latency (intelhda,audio.asm)
                     - 0.083 msec @ 192 khz, 24 bit (playback)
                     - 0.667 msec @ 48 khz, 16 bit (record)
  • PaulDavisThe1st 4 years ago

    Actually, it really isn't.

    The numbers are not for through latency (-> audio interface -> cpu -> audio interface ->)

    Instead they are for "half-duplex" latency (-> audio interface -> cpu OR cpu -> audio interface ->).

    The 48kHz number represents a buffer size of 32 samples, which is entirely possible with Linux and macOS. The note also does not indicate how h/w specific these numbers are: there can be many h/w level issues with very low latency numbers that can't be solved by the OS (a classic example is a wifi chipset or video interface hogging the PCI bus for too long). On the "right" h/w, 32 samples for input latency is not really that remarkable.

    What would be remarkable is if MenuetOS can get this performance from arbitrary intel hardware.

dang 4 years ago

Related:

MenuetOS - https://news.ycombinator.com/item?id=28988778 - Oct 2021 (15 comments)

Menuet – A pre-emptive, real-time and multiprocessor OS written in assembly - https://news.ycombinator.com/item?id=15427848 - Oct 2017 (71 comments)

MenuetOS 1.0 – 1.5 MB OS written entirely in assembly [video] - https://news.ycombinator.com/item?id=9595507 - May 2015 (24 comments)

MenuetOS, an operating system written in assembly, hits 1.0 - https://news.ycombinator.com/item?id=9549808 - May 2015 (2 comments)

MenuetOS 0.85C released: an OS written entirely in 32/64 bit assembly - https://news.ycombinator.com/item?id=6309696 - Sept 2013 (15 comments)

MenuetOS - An OS written entirely in assembly - https://news.ycombinator.com/item?id=1494999 - July 2010 (26 comments)

MenuetOS: an OS that fits on a floppy, written entirely in assembly, has GUI - https://news.ycombinator.com/item?id=1477868 - July 2010 (8 comments)

MenuetOS: Written in Assembly, fits on a floppy, has GUI - https://news.ycombinator.com/item?id=776381 - Aug 2009 (45 comments)

idiocrat 4 years ago

Would be great to have an image in WASM v86 emulator

https://news.ycombinator.com/item?id=31270543

https://github.com/copy/v86

https://copy.sh/v86/

braingenious 4 years ago

This is so incredible. I would love to know if they’ve sold many commercial licenses, and what a typical commercial licensee use case would look like.

blondin 4 years ago

by the creator of flat assembler[1] or community, if i am not mistaken. not an assembly programmer, but the syntax of flat assembler looks clean and nice.

[1]: http://flatassembler.net

indigodaddy 4 years ago

Not really any current processors in the tested hardware list on the site. Would we expect it to work on current Intel/AMD architectures?

  • kingcharles 4 years ago

    I would expect it would boot and work fine. Drivers is where most hobby OSes fall down. Your sound card might not work. Or your USB chipset etc. And hobby OSes like this often do a lot of things in software that are available in hardware, which ruins their performance.

    • userbinator 4 years ago

      It has drivers for Intel HD Audio, which has been a standard for over a decade now, and of course USB 1.x and 2.x (EHCI). No USB 3 (XHCI) however.

    • vintermann 4 years ago

      Thing is, everything runs on hypervisors these days anyway. It already has to virtualize your sound card, your USB chipset etc.

      • Underphil 4 years ago

        What do you mean when you say 'everything runs on hypervisors'?

        That may be true in the datacentre and the cloud.

        • vintermann 4 years ago

          Well, it's of course a slight exaggeration, but our desktop computers have had hardware support for virtualization for a long time now. Even our GPUs are getting hardware support for virtualization. Does it really have to be a problem any more that "your operating system has no drivers for this thing"?

          • Underphil 4 years ago

            Yeah, fair point. It's less and less relevant for sure.

            But something like this lives in the hobbyist space where (I think) bare metal is still king.

afr0ck 4 years ago

That's a very cool project for tinkering. It's a small niche, especially that it's written in assembly, it limits the scope of the things one can play with. But nevertheless, it's a very enriching experience as well as a very unusual one.

obituary_latte 4 years ago

I miss Terry (https://en.m.wikipedia.org/wiki/TempleOS).

jotm 4 years ago

When I first stumbled upon it in the very early 00's people were hyped about it fitting on a floppy (the "save" icon :P). Pretty amazing even today.

  • pjerem 4 years ago

    Same. And to be honest, since I played with it as a teenager, MenuetOS pretty always come to my mind when I see how we waste computing ressources nowadays.

    Of course I know that MenuetOS fitting in a floppy is more a challenge for the author than something we should aim for for regular software. But still, I sometimes calculate in my mind "how much MenuetOS floppies is this" when I download and use some basic app written in Electron. Even a lot of websites are heavier than that.

    I think MenuetOS and a modern app are two extremes and I say to myself that we should aim for some just middle.

tpoacher 4 years ago

Has anyone here used this as their main OS (or at least made some reasonable use of it rather than simply "install to check it out")?

I'm always curious to install and try out such "alternative" OSes, but usually the novelty wears off quite quickly, as the bar to using it for anything nontrivial is usually too high to justify the time investment.

  • dsr_ 4 years ago

    I think that ChromeOS is an existence proof about the minimum set of features for a "main OS" these days.

peterburkimsher 4 years ago

The licence doesn't make sense to me.

"decompilation prohibited" - but I thought it's written in assembly?

Which means it's not compiled?

  • userbinator 4 years ago

    Probably standard legal copy. Most if not all proprietary EULAs have something like that. More interestingly, they're invalidated by the laws that permit RE in many countries.

    ...and on a somewhat related tangent, look at how many appliances have a "do not open/no user-serviceable parts inside" warning.

  • racingmars 4 years ago

    A purist might prefer to say that it needs to be "assembled" and that "disassembly" is prohibited; but I don't think many people these days would quibble that the assembler -> machine code process isn't "compiling".

    Assembly language is still a textual, human-friendly language where you can give memory locations symbolic names, you use mnemonics for the different machine instructions, many assemblers have various forms of macro support, etc. That all gets "assembled" or "compiled" into the machine code.

blacksoil 4 years ago

From their website: "written fully in assembly language (64bit and 32bit)." Whoa..

digisign 4 years ago

Thought that something like this would be good as a pre-boot environment. A lot smaller than EFI and perhaps more functional. Though debatable how good an idea that is. Guessing most folks don't want to program asm however.

ta988 4 years ago

Oh I'm so glad to see them still alive. I learned a lot with that project close to two decades ago.

frozenport 4 years ago

Decades

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection