New generation of OS coming.
Operating Systems are about to enter their 4th generation with a revolutionary change. These being
- Basic
- TimeSharing
- Hardware memory protection ( most were UNIX/MULTICS derived designs)
- Managed OS. ( or OOOS)
While Singularity/Midori is a Manged OS it is still a traditional style OS. Not all 4th gen OS will be so traditional , things a operating system does like memory segmentation are not even needed.
A better name for these OS may be an Object Oriented Operating System or even Object Oriented Framework. Tradditional things like IPC (Asynch = events) and security can be done with language features (Interfaces ,Private members etc) especially using Capability OS techniques with the reference being a capability. In effect these OS are just huge OO applications with user apps being part of it.
The only thing regarding scheduling that may be required is preemption especially on single threaded CPU's. Yet this can still be done entirely in the OO framework .
Why do this ?
Better performance than existing OS due to no IPC/memory overheads.
More reliable , the OS can be easily tested and even proved.
More secure. ( really more secure ,not like OSX/Linux due to fewer attacks)
All these things are especially needed in small internet linked devices ( including phones , Netbooks etc) , notice the latest iphone patch ? It will not be long before you will NEED a virus scanner and firewall on your phone as they will be attacked like windows.
I believe this is totally a revolutionary step as big as protected memory systems ( which are not needed now) were in building a stable OS remember early versions of Windows compared to NT /2000/XP .
However research is completely lacking . Consider the nameless OS im building with the Cosmos managed OS toolkit.
-
Managed OS - very little research
-
Single Address space - no modern research eg Multi core .
-
Asych IPC - little modern research
-
Capability Managed OS - no one has done it .
-
OO security for Capabilities - no one has done it.
-
Moving hardware access into user process and limit with capabilities - Very few people have done it most modern designs have user mode drivers but the hardware access is the HAL.
-
No Kernel calls - Minix is the only other OS I know of where IPC is used for Kernel calls .
-
No kernel - Even "Nano" kernels have primatives and hardware in the Kernel .
How does this effect Linux ? I dont believe the open source community can move significant resources fast enough for a new completely incompatible Linux ( including all C and C++ user applications) and it needs a very dedicated individual to complete a kernel . Compare Linux ( mainly Linus initial effort ) to Gnu Herd ( an open source effort) . Note there are small open source managed OS efforts (Cosmos and MOSA) .
Why can Microsoft do it ? Because they have been working on this since 2002-2003 and have released a "Research Kernel" in 2005. They can pressure driver manufacturers and most .NET and Java applications can be fully supported and MS will move key apps like Office , IIS , Sql server to the new platform.
There is a real danger to open source where MS will sell a Midori OS to corporates like they did with NT and leave windows as a cheap alternative if Midori sells well. While this may not maximize short term revenue it will hold Microsofts dominant position and reinforce there sales for other applications eg Word for Windows 2 ( when windows was released) ,Office 2000 and SQL server for NT /win 2000.
Anyway Midori if the designers get it right will make its appearance in the next Major Windows Mobile version , it will be a great area as a lot of backward compatibility will be provided via Compact Framework.
Print | posted on Tuesday, August 04, 2009 9:58 AM