Any operating system (OS) can be extended before runtime, by two means: 1) Programming; if one has the source code, by programming (coding) and then compiling the new code into a new system, and/or, 2) Patches; by applying patches into a system. Extensible OS is the accepted term for what can be more precisely and correctly termed a runtime extensible OS. In such systems, application and/or user software, with normal user privileges, can provide extensions to OS (kernel) functions during runtime to adjust OS behavior to application needs, with good safety, security, and efficiency (enough to be useful). Such runtime modifiability is similar to what a reflective OS allows, and can be viewed as a limited type of (application-level) OS reflectivity. On this page, OSs are arranged in three groups and levels: 1) Top group: types or classes of OSs. 2) Middle group: OSs for which there are more than one instance of an OS of this name/type, an OS family. 3) Bottom group: specific OSs, individual instances; there is only one OS of this name/type.
Last update:November 19, 2012 at 18:35:02 UTC