Tuesday, December 2, 2008

RMoX Operating System

-> On the whole, operating-systems are large, complex concurrent systems
->Real world operating-systems, even eithout attempting to exploit multiprocessor hardware, suffer from concurrency-related problems:

• subtle race-hazard errors, that in some cases lead to serious security
problems — e.g. local and remote exploits.
• or concurrency is “locked-down” to the point where it damages performance.

-> Multiprocessor architectures (typically SMP) just scale these problems.
->The programming language, in most cases C, does not help:

• synchronisation and locking must be programmed correctly, compiler cannot police usage.

• lack of appropriate encapsulation — e.g. a device-driver may in advertently (or deliberately) interfere with another part of the system.

-> Theory is: construct an operating system using occam-pi and it will be:

• scalable: from small embedded devices to distributed multi computers
• safe: freedom from race-hazard and aliasing errors (incl. array-bounds, etc.)
• fast: due to the extremely light concurrency overheads.








-> The various “core” components utilise internal concurrency
ram disk par port floppy net.

->Drivers themselves may be concurrent internally.

->Some drivers mostly complete, others under construction.







Putting it together



-> With suitable interfacing, RMoX will also run in a Linux environment (user-mod RMoX)

-> We have an experimental version that runs directly on hardware
• running with Linux provides various useful features for development.

No comments:


Find It