Avoiding OS Myopia, or what's the strangest OS you know?
Avoiding OS Myopia, or what's the strangest OS you know?
So, cliche as it may be, I think we've all had those "gotcha" moments in programming, where, when exploring a new language, be it Lisp, Prolog, Haskell, etc, our proverbial minds are "blown." For me, learning about functional programming completely changed my understanding of what it means to write a program, and what exactly a program is to begin with.
Unfortunately, probably due to being a much less obscure activity, there doesn't seem to be any equivalent list (I know of) in the OSDev world, of OSes to "blow your mind." There is somewhat (vast understatement) of a monoculture surrounding UNIX, even in the academic world, and even rather well educated people seem to think that the UNIX was not simply the best way to do things, but the only way. This is not to say that OSes like UNIX are in anyway bad, but at the same time, it's always a good idea to try and avoid myopia. And to be clear, I'm not saying that UNIX is popular by no merit of it's own, I think there is definitely a reason why the UNIX style has come to be so universal. Nevertheless, my ultimate goal in OSDeving is to have fun, explore, and if I'm lucky, learn something on the way, in roughly that order. So in short, what I want to know is what are, in your opinions, the most bizarre, out-there, off-the-wall OS designs? Obviously, sometimes there's a reason things are done a certain way, but seeing WHY this is, and examples of failures to try and do things differently can be incredibly enlightening. Anyway, yeah, right now, the most 'unusual' (for me) design I've been reading about has been capability based OSes, in particular the J. Shapiro family of OSes. I've also been really amazed by IBM's OS/400 (even with its, ehm, more "unusual" features).
Really interested to hear everyone's responses!
Unfortunately, probably due to being a much less obscure activity, there doesn't seem to be any equivalent list (I know of) in the OSDev world, of OSes to "blow your mind." There is somewhat (vast understatement) of a monoculture surrounding UNIX, even in the academic world, and even rather well educated people seem to think that the UNIX was not simply the best way to do things, but the only way. This is not to say that OSes like UNIX are in anyway bad, but at the same time, it's always a good idea to try and avoid myopia. And to be clear, I'm not saying that UNIX is popular by no merit of it's own, I think there is definitely a reason why the UNIX style has come to be so universal. Nevertheless, my ultimate goal in OSDeving is to have fun, explore, and if I'm lucky, learn something on the way, in roughly that order. So in short, what I want to know is what are, in your opinions, the most bizarre, out-there, off-the-wall OS designs? Obviously, sometimes there's a reason things are done a certain way, but seeing WHY this is, and examples of failures to try and do things differently can be incredibly enlightening. Anyway, yeah, right now, the most 'unusual' (for me) design I've been reading about has been capability based OSes, in particular the J. Shapiro family of OSes. I've also been really amazed by IBM's OS/400 (even with its, ehm, more "unusual" features).
Really interested to hear everyone's responses!
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Avoiding OS Myopia, or what's the strangest OS you know?
I found that Solar OS was quite unusual in some ways, particularly in its strictly hierarchical structure of widgets (that big button in the desktop window) and the way that every process has exactly one window of its own, and the window is strictly linked to the process.
My OS is stranger: it's a text-mode GUI with "multitasking" where only the foreground task is permitted to run, and when you change process halfway through bleeping out a computer chip tune then you get a stuck note until the resume the suspended process (unless of course the second process is playing another tune).
My OS is stranger: it's a text-mode GUI with "multitasking" where only the foreground task is permitted to run, and when you change process halfway through bleeping out a computer chip tune then you get a stuck note until the resume the suspended process (unless of course the second process is playing another tune).
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
- AndrewAPrice
- Member
- Posts: 2300
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: Avoiding OS Myopia, or what's the strangest OS you know?
Some are:
Plan 9 from Bell Labs - it was planned to be the successor of UNIX.
Inferno - Attempted to be universally cross platform by being a low-level VM, came with it's own language.
Oberon - Experimental UI, also was simultaneously developed with and in a language that shares the same name.
MenuetOS - Amazing graphical OS written in assembly that still fits on a floppy. Games, networking, video, TV tuners!
Syllable - Incredibly advanced graphical OS that descended from the old AtheOS.
SkyOS - Now discontinued, by one man's incredibly advanced graphical OS.
BeOS - The first alternative OS I ever used on my PC. It came as on a CD attached to a PC Magazine when I was younger.
Plan 9 from Bell Labs - it was planned to be the successor of UNIX.
Inferno - Attempted to be universally cross platform by being a low-level VM, came with it's own language.
Oberon - Experimental UI, also was simultaneously developed with and in a language that shares the same name.
MenuetOS - Amazing graphical OS written in assembly that still fits on a floppy. Games, networking, video, TV tuners!
Syllable - Incredibly advanced graphical OS that descended from the old AtheOS.
SkyOS - Now discontinued, by one man's incredibly advanced graphical OS.
BeOS - The first alternative OS I ever used on my PC. It came as on a CD attached to a PC Magazine when I was younger.
My OS is Perception.
- AndrewAPrice
- Member
- Posts: 2300
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: Avoiding OS Myopia, or what's the strangest OS you know?
That's quite a nice feature - even in a graphical windowing OS - only allow the focused application to run, unless an application has been given explicit permission to be allowed to execute in the background (such as an application that downloads/syncs, or you want a movie playing in an unfocused window). No more spyware or process hogs!onlyonemac wrote:My OS is stranger: it's a text-mode GUI with "multitasking" where only the foreground task is permitted to run, and when you change process halfway through bleeping out a computer chip tune then you get a stuck note until the resume the suspended process (unless of course the second process is playing another tune).
My OS is Perception.
Re: Avoiding OS Myopia, or what's the strangest OS you know?
Another interesting kernel design is MIT's exokernel- rather than moving everything into user-space processes and giving those processes the same permissions they would use in a monolithic kernel, it protects the hardware at a lower level (e.g. disk blocks rather than files) and lets applications use libraries to provide the usual higher-level abstractions.
Re: Avoiding OS Myopia, or what's the strangest OS you know?
I did some experiments with building the strangest GUI possible in my April 2013 - April 2014 release cycle: http://forum.osdev.org/viewtopic.php?f=2&t=27884 - Although from a technical point of view, this was bolted onto a Unix system due to time and effort constraints. This would certainly qualify as being the strangest GUI from a regular user's point of view (that isn't a wall of console text).
-
- Member
- Posts: 595
- Joined: Mon Jul 05, 2010 4:15 pm
Re: Avoiding OS Myopia, or what's the strangest OS you know?
If some people here had their way with the legislation, they would have outlawed any OS research and make illegal to question the UNIX/POSIX standard. Some Linux nerds think that Linus Torvalds is some kind of a god and live happily in their UNIX world with a green colored text terminal.krfkeith wrote:Unfortunately, probably due to being a much less obscure activity, there doesn't seem to be any equivalent list (I know of) in the OSDev world, of OSes to "blow your mind." There is somewhat (vast understatement) of a monoculture surrounding UNIX, even in the academic world, and even rather well educated people seem to think that the UNIX was not simply the best way to do things, but the only way. This is not to say that OSes like UNIX are in anyway bad, but at the same time, it's always a good idea to try and avoid myopia.
Even if many university OS projects tends to mimic UNIX, many of them are just emulating it them because they can port their test programs more easily. L4 for example is a UNIX OS but at the same isn't. It's a microkernel OS where the UNIX stuff is more or less thrown outside the kernel.
If we are going to take new OS designs to a new level, I think we also need to do some research how we describe a program. Most operating system are made for programs written in C/C++ but that's not necessary which we have seen with Singularity and Phantom OS. There seems to be a huge gap with what you can create in HW today and what you can describe in SW.
Re: Avoiding OS Myopia, or what's the strangest OS you know?
It is really the only way people can be creative and productive at the same time. To be creative people need knowledge, the open source gives the knowledge. To be productive people need a lot of programs, the UNIX world gives them a lot of programs. There's no more OS that can give such a vast quantity of programs and knowledge. Windows and other proprietaries are much more obscure because of closed source and corporate goals.krfkeith wrote:There is somewhat (vast understatement) of a monoculture surrounding UNIX, even in the academic world, and even rather well educated people seem to think that the UNIX was not simply the best way to do things, but the only way
As for me the viable alternative is open source Java OS with a vast array of existing Java applications. But it's still in it's embryo state.
There's a bit about WHY in the description part.krfkeith wrote:Obviously, sometimes there's a reason things are done a certain way, but seeing WHY this is, and examples of failures to try and do things differently can be incredibly enlightening.
Re: Avoiding OS Myopia, or what's the strangest OS you know?
If user wants some kind of job to be done and has closed source program - how it is possible to be sure, that while being granted run permission, the program would not install a spyware? And of course, the spyware will be installed within another program with the run permission.MessiahAndrw wrote:only allow the focused application to run, unless an application has been given explicit permission to be allowed to execute in the background (such as an application that downloads/syncs, or you want a movie playing in an unfocused window). No more spyware or process hogs!
Re: Avoiding OS Myopia, or what's the strangest OS you know?
There's no gap. There's just old plain legacy. You can describe anything in software or in hardware, but after it's done you still need to get to the market. And the market has a very huge legacy, which will prevent your design from being successful (unless you have a lot of money, of course).OSwhatever wrote:There seems to be a huge gap with what you can create in HW today and what you can describe in SW.
-
- Member
- Posts: 595
- Joined: Mon Jul 05, 2010 4:15 pm
Re: Avoiding OS Myopia, or what's the strangest OS you know?
You don't make any difference between people who make an OS for experimenting and people who are making a commercial OS, do you?embryo wrote:There's no gap. There's just old plain legacy. You can describe anything in software or in hardware, but after it's done you still need to get to the market. And the market has a very huge legacy, which will prevent your design from being successful (unless you have a lot of money, of course).
Re: Avoiding OS Myopia, or what's the strangest OS you know?
No, no, I definitely agree. I guess I should have been more clear. What I mean is that, with respect to the research, theory, etc. of OSes, there is this sort idea floating around that the creation of UNIX ending the discussion on how one might design an OS. My point is similar to Rob Pike's in Systems Software Research is Irrelevant, mainly that no one (not many anyway) seems to be interested in exploring new things.embryo wrote: It is really the only way people can be creative and productive at the same time. To be creative people need knowledge, the open source gives the knowledge. To be productive people need a lot of programs, the UNIX world gives them a lot of programs. There's no more OS that can give such a vast quantity of programs and knowledge. Windows and other proprietaries are much more obscure because of closed source and corporate goals.
- AndrewAPrice
- Member
- Posts: 2300
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: Avoiding OS Myopia, or what's the strangest OS you know?
However, many of us are. You are showing you are, I am, and many others on this forum start their design from scratch ignoring UNIX customs.krfkeith wrote:My point is similar to Rob Pike's in Systems Software Research is Irrelevant, mainly that no one (not many anyway) seems to be interested in exploring new things.
But I do agree with you that many people have the goal of having a system where they can port bash and GCC effectively creating a system which acts very similiar to UNIX, even if the underling kernel code differs.
My OS is Perception.
Re: Avoiding OS Myopia, or what's the strangest OS you know?
Well, what kind of gap prevents you from learning verilog and having fun with hardware design? Where is the commercial part here?OSwhatever wrote:You don't make any difference between people who make an OS for experimenting and people who are making a commercial OS, do you?
The freedom is here, if you have time to experiment with OS, then you have everything to fill any gap. Except funding, of course.
Re: Avoiding OS Myopia, or what's the strangest OS you know?
Yes, you've got the idea, but the idea has it's base in the order of things in this world. It is important to understand the order of things, then you will not wonder any more when meet with UNIX limit. Now just isn't the right time to see some diversity in the OS design area. May be future will bring us more appropriate time. But we can speak about new world and make it closer a bit.krfkeith wrote:What I mean is that, with respect to the research, theory, etc. of OSes, there is this sort idea floating around that the creation of UNIX ending the discussion on how one might design an OS.