Mezzanine: A Common Lisp-based 64-bit OS for VirtualBox
slexy.org
slexy.org
Screenshot: https://dl.dropboxusercontent.com/u/46753018/Screen%20Shot%2...
I'm surprised how quiet this guy has been for years, don't ever seem to remember seeing him in IRC!
So any new operating system that is far from the beaten path should be very much welcomed, this one is more interesting than most since it is written using a high level language.
Looking forward to an eventual release.
Maybe that part of the theory never made it into practice.
Maybe that part of the theory never made it into practice.
When you think of what you want in a discussion forum, how high are sarcasm and snarkiness on your list?
There is always some garbage velocity beyond which any given system is not able to cope.
Usually that limit is kinda small compared to what you'd actually like your program to be able to do.
Under ephemeral garbage collection, if the software generates a lot of garbage fast, it means that it's rapidly making large numbers of "baby" objects (objects in the "nursery" or "generation 0") and immediately losing them. Whenever a generation pass comes along, there are hardly any nursery objects to visit (they almost all been lost due to the "garbage velocity"), and the tenured objects aren't traversed either, so ... it's quick. Quick isn't "free", but it's not "beyond the ability to cope".
You may as well be complaining that the Windows 1.0 press release from 1985 has trouble with multitasking. Duh, this is pre-alpha software we're looking at.
I agree. But let's keep in mind that this isn't the first OS kernel written in Common Lisp.
EDIT: In fact if you can announce your github id now/soon people can start watching in earnest.
Also, I agree with jacquesm's comment on the advantages of many operating systems.
edit: here's the screenshot (from another comment): https://dl.dropboxusercontent.com/u/46753018/Screen%20Shot%2...
The submission reminded me of: https://news.ycombinator.com/item?id=7126818
Here is an IRC log about it:
http://log.irc.tymoon.eu/freenode/lisp?around=2015-01-25T15:...
But, as with many Lisp OS images, there is an issue with explorability: how do I discover system commands in the REPL? I know a bit of Common Lisp, but it's not clear to me how to discover what system can and what not, how to explore the environment. Neither Filesystem Viewer provides any clues, nor does REPL.
Also might as well copy them here too:
1) Install VirtualBox from https://www.virtualbox.org/
2) Download and ungzip the disk image from https://dl.dropboxusercontent.com/u/46753018/Mezzanine%20Demo%201-disk1.vmdk.gz
3) Create a new VM in VirtualBox with the following settings:
Type: Other
Version: Other/Unknown 64-bit
Memory size: 512MB
Use an existing virtual hard drive file, the one you downloaded
4) Open the settings for the VM and switch to the Network tab.
5) Open the advanced settings and change the adapter type to virtio-net
6) Click OK. The VM is ready to start.Of course, for a toy OS it doesn't really matter, but it does unfortunately constrain this to the toy OS category.
We don't know whether that is the case here. If the authors get a real box that has the same peripherals as the VirtualBox, and bring the OS up on that, then this "toy" argument can no longer be made, in any case.
Back in the 1960s, one of the hot new things from IBM (you know, the company that wins on Jeopardy) was VM/CMS. VM is a VM, hence the imaginative name, and CMS stood for Conversational Monitor System, originally Cambridge Monitor System, for reasons I'll let you figure out.
Conversational meant "has a command line", as opposed to batch, which you might have heard of. CMS was, all told, somewhere between pond scum and MS-DOS on the complexity scale: it provided some APIs for applications, but didn't handle memory protection, multitasking, multiple users, or security policy. A mainframe running CMS on the bare metal would have been a really expensive version of a PC from twenty or so years later; obviously, you can only justify doing that in a Serious University.
However, it was convenient and user-friendly back before the term was coined, when that meant "not seeing raw machine code unless you asked for it", so the gag was to run multiple instances of CMS as guests under VM, which provided everything CMS didn't. Every user got their own copy of the OS, and the single physical mainframe was turned into dozens or hundreds of virtual mainframes by VM.
My punchline: As the decades wore on, CMS was never modified to take newer hardware into account. Why would it be? It never ran on the bare metal. VM gained emulation functionality, CMS grew to depend on that, and now CMS is effectively an appendage of VM, a friendly face to the thing which does all the hard work. You know, like marketing, or upper management.
Hehe. Priceless.
http://pdosnew.csail.mit.edu/6.828/2014/labs/lab6/
Drivers are also pluggable, by nature. Why do you think this constrains the OS to the "toy" category? Or do you mean it constrains only the current version, and if so, do you believe there to be an observable difference between "toy" and "prerelease"?
https://github.com/froggey/Mezzano
IRC log discussing building: http://log.irc.tymoon.eu/freenode/lisp?from=2015-01-27T19%3A...
But at this point, the distributed image is not any different than a proprietary solution. What good is it for me if I can't change it?
No flame-wars please.
Edit: Especially unclear is “Use an existing virtual hard drive file, the one you downloaded”. How do I do that?