A distributed OS can coordinate the processing of a single task across multiple computers networked together. A program can be run by the user that uses data or resources from any other computer. Resources could include:
Processor time
Memory
I/O facilities
The distribution of tasks is coordinated by the OS passing instructions between computers. A large amount of processing power can be utilised for complex tasks.
Distributed Operating Systems
The user can access more computational power with the illusion of working with a single processor. The programmer however, has no control over the task distribution as this is entirely handled by the OS
Multi-tasking system
A single processor can appear to do more than one task simultaneously by scheduling processor time. Some systems use a very powerful computer called a mainframe. Multiple users at the same time with their own terminals access the mainframe's CPU and each gets a time slice. Each terminal is also running multiple processes.
Mobile Operating Systems
A smart phone is a computer with a multi-tasking operating system. A low level proprietary OS is used for handling the hardware and special features. The main OS handles the user interface and running applications.
Open Source OS
Allows for major customization. A device manufacturer can fine-tune the OS to suit their devices, and add additional features or user interfaces to enhance the user experience.
Embedded OS
Has minimal features with a dedicated function. Application programs are held in ROM so that they cannot be changed. There is only a limited amount of RAM. They user interface is simple and minimal.
Examples of an embedded system are:
Microwave
Washing machine
Dishwasher
Sat Nav
Real Time OS
Some operating systems work in real time so that they can respond quickly to inputs and cause they may need to cope with many inputs simultaneously. Real time OS's are usually seen in safety-critical environments. If a hardware component fails, the OS must have a failsafe to detect this. There is hardware redundancy - crucial components are duplicated in case one fails
BIOS (basic input output system)
BIOS is stored in ROM. The BIOS boots the computer at start up. It loads the operating system into RAM and initialises and test hardware.
Device Drivers
A driver is a program that provides an interface for the OS to interact with a device. Drivers are hardware dependent and OS specific. Drivers are need to allow the OS to control hardware devices e.g. speakers.
Device Drivers
The OS does not need to know the specifics of the hardware to be able to interact with it. The program requests the OS to control a device. The OS then invokes the driver routine. The Driver then sends the instructions the the device.
Virtual Machine
Can be used for running one OS inside another to emulate different hardware. A virtual machine can execute intermediate code e.g. Java virtual machine executes Java byte code.