Linked by Thom Holwerda on Sat 23rd Oct 2010 22:23 UTC
Thread beginning with comment 446840
To read all comments associated with this story, please click here.
To read all comments associated with this story, please click here.
RE: Maybe OT: The OS I am dreaming of
by nt_jerkface on Sun 24th Oct 2010 18:43
in reply to "Maybe OT: The OS I am dreaming of"
Microsoft has the .NET infrastructure on which such an OS could be based. Well, it has to be supported at least 5 years in parallel with the "classical" Microsoft Windows OSes to allow developers to provide applications and customers to migrate.
Part of the problem is that there are huge C++ codebases that were started before .NET and it would take billions to convert them all. Win32 support could be provided in a VM but it has to be there.
RE[2]: Maybe OT: The OS I am dreaming of
by pica on Mon 25th Oct 2010 07:40
in reply to "RE: Maybe OT: The OS I am dreaming of"
Part of the problem is that there are huge C++ codebases that were started before .NET and it would take billions to convert them all. Win32 support could be provided in a VM but it has to be there.
Yes, I know. And I do not have the resources to change this. Look at the JNode project, which is quite similar to what I suggest. They simple do not have the resources to compete.
That's why it is just a dream :-(
pica
RE: Maybe OT: The OS I am dreaming of
by Neolander on Mon 25th Oct 2010 13:45
in reply to "Maybe OT: The OS I am dreaming of"
would be modular and scalable. As a result it would support
* embedded systems
* mobile Phones
* tablets
* desktops
* servers
It would just have a minimal hardware abstraction layer. This HAL only would cover CPU, busses and memory. Only this tiny HAL and a small VM "bootloader" would be CPU Architecture dependend.
* embedded systems
* mobile Phones
* tablets
* desktops
* servers
It would just have a minimal hardware abstraction layer. This HAL only would cover CPU, busses and memory. Only this tiny HAL and a small VM "bootloader" would be CPU Architecture dependend.
Okay, until there I follow you. Sounds like a microkernel.
The VM runtime "bootloader" is a simple interpreter. It's only purpose is to bootload an optimizing VM runtime utilizing JIT technics. Everything else even the optimizing VM runtime itself would run on the optimizing VM runtime. This would include device drivers like graphic card, NIC or SATA drivers. As a result it would support several processor architectures. IMHO at least x86, x86-64, ARM Cortex Mx and Ax and MIPS 32bit and 64bit should be supported.
There I'm lost. It sounds like you would like to write almost all of this OS in interpreted code. This basically means recompiling most of the OS at every boot (except is JITed code is cached in some way). Performance would be horrible. Apart from technological achievement, what's the point of using this instead of platform-independent compiled languages like C and C++ ?
Also the OS itself the schedulers -- I think of schedules as "plugins" --, filesystems, etc. would run on the VM runtime.
Again, why not a microkernel and high-level components written in platform-independents component languages instead ? What's the added benefit ?
It would optionally offer a remote shell, a GUI optimized for handheld devices or a GUI optimized for desktops. The desktop optimzed GUI would support remote access.
Couldn't a properly done GUI infrastructure optimize for both ? (I'm thinking about this in my own OS project, but I'm not there yet so I can't tell about it being doable in practice)
Edited 2010-10-25 13:47 UTC
The benefit is ...
by pica on Mon 25th Oct 2010 15:19
in reply to "RE: Maybe OT: The OS I am dreaming of"
... that even closed source components (e.g. some graphic card drivers are closed source) are available on all hardware platforms.
The part up to the optimizing VM runtime can be provided be the hardware vendor.
The OS vendor provides the running on that runtime OS. Here is another benefit: The OS vendor only has to provide a single image. Has to patch only each issue once.
pica
About performance ...
by pica on Mon 25th Oct 2010 15:26
in reply to "RE: Maybe OT: The OS I am dreaming of"





Member since:
2005-07-10
would be modular and scalable. As a result it would support
* embedded systems
* mobile Phones
* tablets
* desktops
* servers
It would just have a minimal hardware abstraction layer. This HAL only would cover CPU, busses and memory. Only this tiny HAL and a small VM "bootloader" would be CPU Architecture dependend. The VM runtime "bootloader" is a simple interpreter. It's only purpose is to bootload an optimizing VM runtime utilizing JIT technics. Everything else even the optimizing VM runtime itself would run on the optimizing VM runtime. This would include device drivers like graphic card, NIC or SATA drivers. As a result it would support several processor architectures. IMHO at least x86, x86-64, ARM Cortex Mx and Ax and MIPS 32bit and 64bit should be supported.
Also the OS itself the schedulers -- I think of schedules as "plugins" --, filesystems, etc. would run on the VM runtime.
It would optionally offer a remote shell, a GUI optimized for handheld devices or a GUI optimized for desktops. The desktop optimzed GUI would support remote access.
Microsoft has the .NET infrastructure on which such an OS could be based. Well, it has to be supported at least 5 years in parallel with the "classical" Microsoft Windows OSes to allow develpopers to provide applications and customers to migrate.
Just dreaming,
pica