|
Kinds of Operating System
Broad family of Operating Systems are categorized in four general types based on types of computer they control and the sort
of applications they support. The broad categories are:
1. Real-time operating system (RTOS) - Real-time operating systems are used to control machinery, scientific instruments and
industrial systems.
2. Single-user, single task – As the name implies, this operating system is designed to manage the computer so that
one user can effectively do one thing at a time.
3. Single-user, multi tasking - This is the type of operating systems most people use on their desktop and laptop computers
today.
4. Multi-user – a multi-user operating system allows many different users to take advantage of the computer’s
resources simultaneously.
Operating system’s task in the most general sense, fall into six categories.
1. Processor Management
2. Memory Management
3. Device Management
4. Storage Management
5. Application Interface
6. User interface
Process (or Thread)– basic unit of software that the operating system deals with in scheduling the work done by the
processor.
* it is a software that performs some action and can be controlled—by a user, by other applications or by the operating
system.
Note: It is the process rather than applications that the operating system controls and schedules for execution by the CPU
Scheduling:
SINGLE-TASKING SYSTEM – the schedule is straight forward. The operating system allows the application to begin running,
suspending the execution only long enough enough to deal with interrupts and user input.
INTERRUPTS – special signals sent by hardware or software to the CPU.
- Adds some complications to the execution of processes in a single-tasking system
Kinds of interrupts
1. Masked – happens when the operating schedules the priority of processes by ignoring the interrupts from some sources
so that a particular job can be finished as quickly as possible.
2. Non-Maskable Interrupts(NMIs) – interrupts such as those from error conditions or problems with memory that are so
important that they can’t be ignored.
- Should be dealt with immediately, regardless of the other tasks at hand.
MULTI-TASKING SYSTEM – the scheduling is much more complicated because the operating system must arrange the execution
of applications so that you believe that there are several things happening at once. This is complicated because the CPU can
only do one thing at a time. In order to give the appearance of lots of things happening at the same time, the operating system
has to switch between different processes thousand of times a second.
1. Process Management
* ensures that each process and application receives enough of the processor’s time to function properly
* Using as many processor cycles for real work as is possible.
Process
* A process occupies a certain amount of RAM. It also makes use of registers, stacks and queues within the CPU and operating-system
memory space.
* When two processes are multi-tasking, the operating system alots a certain number of CPU execution cycles to one program.
* After that number of cycles, the operating system makes copies of all the registers, stacks and queues used by the processes,
and notes the point at which the process paused in its execution.
* It then loads all the registers, stacks and queues used by the second process and allows it a certain number of CPU cycles.
* When those are complete, it makes copies of all the registers, stacks and queues used by the second programs, and loads
the first program.
Process Control block - a data package which keeps all the information needed in keeping track of a process when switching.
* it typically contains
* An ID number that identifies the process
* Pointers to the locations in the programs and its data where processing last occurred
* Register contents
* States of various flags and switches
* Pointers to the upper and lower bounds of the memory required for the process
* A list of files opened by the process
* The priority of the process
* The status of all I/O devices needed by the process.
2. Memory Storage and Management
* Two broad task to be accomplished when an operating system manages the computer’s memory:
1. Each process must have enough memory in which to execute, and it can neither run into the memory space of another process
nor be run into by another process.
2. The different types of memory in the system must be used properly so that each process can run most effectively.
|