what is an OS ?
big question, good question, one basic definition is: "you can call OS the program that runs all the time enabling other programs to be launched without any conflicts"
maybe think about what kinds of things it mean:
- providing environment for other programs to operate in
- control access to system resources
- allocate system resources
- promotes efficient use of system resources
- provides convenient interface for interactive users
Safety Critical Products
The INTEGRITY®-178B operating system is the most secure operating system in the world having been certified by the NSA-managed NIAP lab to EAL6+ High Robustness. No other commercial operating system has attained his level of security. No other commercial operating system has entered into an evaluation at EAL6+ High Robustness.
In the past, Safety Critical software systems with multiple levels of safety criticality have been deployed on federated systems, where each function executes on a dedicated processor. The need to lower maintenance costs and reduce the size/weight/power of older embedded computer systems, combined with the availability of modern processor technology, has created the demand for a commercial run-time system that permits multiple programs at different safety levels to execute on a single processor. In addition, the run-time system must be certifiable to a level of criticality as high or higher than that of any program running on the processor.
The cost to test and certify safety critical software is directly proportional to the level of safety criticality. The higher the safety level, the more complex and expensive the certification process. The most economical and architecturally ideal single processor solution is to certify only those programs that operate at the highest level of safety criticality to the highest level of certification. The programs or functions that operate at lower levels of criticality would then be certified to lower levels of safety. This method is valid as long as the run-time system guarantees that any failure resulting from a defect in a program operating at a lower safety level CAN NOT, under any circumstance, disrupt the operation of the higher safety level functions. The run-time system must guarantee protection in both the space and time domains. In other words, a commercial real-time operating system must be securely partitioned so that it provides both memory protection and real-time scheduling protection.
Practice: where can i see a good kernel ?
mips, xinu is a picokernel
XINU (MIPS oriented) http://xinu.mscs.mu.edu/Main_Page
embedded kernel =
- shark is POSIX/PSE51
- ucosII has its custom API
- ERIKA is OSEK/VDX