Guillaume FORTAINE wrote:
Synergy : have enough developers with a common goal to achieve it. ( to avoid dead-born projects )
You do not necessarily need many developers to write an OS; many successful and well working OSes were written by < 10 people in 2-5 years. The other 1000s just tweak it here and there, add fancy features, redesign parts and thus introduce new bugs etc.
Abstraction ( meaning rigorous formalism ) :
Formally verified software can still be wrong, as it is verified against a model, which is also human-made and thus error-prone.
To avoid these types of errors :-) ! => have a pure reliable ( totally bug-free os )
Most of the code that does not have a chance to mature over time and be fixed once for all lies within device drivers and applications, not in the core OS.
Moreover, even in the core OS, bugs are mainly a social problem. Amateurs prefer to hack new code rather than to fix bugs in code they wrote yesterday:
Linux kernel 'getting buggier' http://news.zdnet.co.uk/0,39020330,39267255,00.htm
Why instead of starting a new project you don't fix the outstanding issues in one of the many existing ones? I am sure that people working on existing OSes will be happy to list lots of tricky problems to solve for you.
Here is one: why it takes two days to get a webcam working in Linux?
Why can't I just connect it at at a USB port, and have Linux to query an online database, download the appropriate kernel module, and install it? Why I need to download kernel headers, download a hackish code, get it to compile, hammer it in the kernel, get crazy to get a video application to access the right device in /dev/... ?
Sergio