Operating system refers to the collection of softwares that manages hardware resources of a computer and provides collective services to the user. Different types of Computer Operating Systems refer to the collection of various softwares. Every computer possesses an operating system to run other programs present in it.
Nowadays operating system has become very popular as it can be found on several devices ranging from personal computers to cell phones, particularly the smart phones. For example, almost every smart phone uses newest android operating system.
Operating system
Any operating system performs some basic tasks like recognizing the input data from a keyboard, sending output to the display screen, keeping files and directories of the disk and controlling the peripheral devices like printers. An operating system can perform a single task or operation as well as multiple tasks or operations at any time.
Types of Computer Operating systems
Computer Operating systems can be broadly classified into two types:
Normal Operating System
Real Time Operating System
Nowadays operating system has become very popular as it can be found on several devices ranging from personal computers to cell phones, particularly the smart phones. For example, almost every smart phone uses newest android operating system.
Operating system
Any operating system performs some basic tasks like recognizing the input data from a keyboard, sending output to the display screen, keeping files and directories of the disk and controlling the peripheral devices like printers. An operating system can perform a single task or operation as well as multiple tasks or operations at any time.
Types of Computer Operating systems
Computer Operating systems can be broadly classified into two types:
Normal Operating System
Real Time Operating System
1. Normal Operating System
The normal operating system is further classified into two types:
Character User Interface Operating System
Graphical User Interface Operating System
Character User Interface Operating System (CUI)
Character user interface Operating system
The CUI operating system is a text-based operating system, which is used for interacting with the software or files by typing commands to perform specific tasks. The command line operating system uses only keyboard to enter commands. The command line operating systems include DOS and UNIX. The advanced command line operating system is faster then the advanced GUI operating system.
Graphical User Interface Operating System (GUI)
The normal operating system is further classified into two types:
Character User Interface Operating System
Graphical User Interface Operating System
Character User Interface Operating System (CUI)
Character user interface Operating system
The CUI operating system is a text-based operating system, which is used for interacting with the software or files by typing commands to perform specific tasks. The command line operating system uses only keyboard to enter commands. The command line operating systems include DOS and UNIX. The advanced command line operating system is faster then the advanced GUI operating system.
Graphical User Interface Operating System (GUI)
Graphical User Interface Operating System
The graphical mode interface operating system is a mouse-based operating system (Windows Operating System, LINUX), wherein a user performs the tasks or operations without typing the commands from the keyboard. The files or icons can be opened or closed by clicking them with a mouse button.
In addition to this, the mouse and keyboard are used to control the GUI operating systems for several purposes. Most of the embedded-based projects are developed on this operating system. The advanced GUI operating system is slower than the command line operating system.
Architecture of Unix Operating systems
The operating systems control the hardware resources of a computer. The kernel and shell are the parts of the operating system that perform essential operations.
When a user gives commands for performing any operation, the request goes to the shell part, which is also known as interpreter. The shell part then translates the human program into a machine code, and then transfers the request to the kernel part.
The graphical mode interface operating system is a mouse-based operating system (Windows Operating System, LINUX), wherein a user performs the tasks or operations without typing the commands from the keyboard. The files or icons can be opened or closed by clicking them with a mouse button.
In addition to this, the mouse and keyboard are used to control the GUI operating systems for several purposes. Most of the embedded-based projects are developed on this operating system. The advanced GUI operating system is slower than the command line operating system.
Architecture of Unix Operating systems
The operating systems control the hardware resources of a computer. The kernel and shell are the parts of the operating system that perform essential operations.
When a user gives commands for performing any operation, the request goes to the shell part, which is also known as interpreter. The shell part then translates the human program into a machine code, and then transfers the request to the kernel part.
Architecture of operating system
When the kernel receives the request from the shell, it processes the request and displays the result on the screen. The kernel is also known as the heart of the operating system as every operation is performed by it.
Shell
The shell is a part of the software which is placed between the user and the kernel, and it provides services of the kernel. The shell thus acts as an interpreter to convert the commands from the user to a machine code. Shells present in different types of operating systems are of two types: command line shells and graphical shells.
The command line shells provide a command line interface while graphical line shells provide a graphical user interface. Though both shells perform operations, the graphical user interface shells perform slower than the command line interface shells.
Types of shells
Korn shell
Bourne shell
C shell
POSIX shell
Kernel
The kernel is a part of a software. It is like a bridge between the shell and hardware. It is responsible for running programs and providing secure access to the machine’s hardware. The kernel is used for scheduling, i.e., it maintains a time table for all processes.
Types of Kernels
Monolithic kernel
Microkernels
Exokernels
Hybrid kernels
Computer Operating System Functions
When the kernel receives the request from the shell, it processes the request and displays the result on the screen. The kernel is also known as the heart of the operating system as every operation is performed by it.
Shell
The shell is a part of the software which is placed between the user and the kernel, and it provides services of the kernel. The shell thus acts as an interpreter to convert the commands from the user to a machine code. Shells present in different types of operating systems are of two types: command line shells and graphical shells.
The command line shells provide a command line interface while graphical line shells provide a graphical user interface. Though both shells perform operations, the graphical user interface shells perform slower than the command line interface shells.
Types of shells
Korn shell
Bourne shell
C shell
POSIX shell
Kernel
The kernel is a part of a software. It is like a bridge between the shell and hardware. It is responsible for running programs and providing secure access to the machine’s hardware. The kernel is used for scheduling, i.e., it maintains a time table for all processes.
Types of Kernels
Monolithic kernel
Microkernels
Exokernels
Hybrid kernels
Computer Operating System Functions
Operating System functions
An operating system performs the following functions:
Memory management
Task or process management
Storage management
Device or input/output management
Kernel or scheduling
Memory Management
Memory management is the process of managing a computer memory. Computer memories are of two types: primary and secondary memory. The memory portion for programs and softwares is allocated after releasing the memory space.
An operating system performs the following functions:
Memory management
Task or process management
Storage management
Device or input/output management
Kernel or scheduling
Memory Management
Memory management is the process of managing a computer memory. Computer memories are of two types: primary and secondary memory. The memory portion for programs and softwares is allocated after releasing the memory space.
Memory Management
Memory management is important for the operating system involved in multitasking wherein the OS requires switching of memory space from one process to another. Every single program requires some memory space for its execution, which is provided by the memory management unit. A CPU consists of two types of memory modules: virtual memory and physical memory. The virtual memory is a RAM memory, and the physical memory is a hard disk memory. An operating system manages the virtual memory address spaces, and the assignment of real memory is followed by the virtual memory address.
Before executing instructions, the CPU sends the virtual address to the memory management unit. Subsequently, the MMU sends the physical address to the real memory, and then the real memory allocates space for the programs or data.
Task or Process Management
Process management is an instance of a program that is being executed. The process consists of a number of elements, such as identifier, program counter, memory pointer and context data, and so on. The Process is actually an execution of those instructions.
Process Management
There are two types of process methods: single process and multitasking method. The single process method deals with the single application running at a time. The multitasking method allows multiple processes at a time.
Storage Management
Storage management is a function of the operating system that handles memory allocation of the data. The system consists of different types of memory devices, such as primary storage memory (RAM), secondary storage memory, (Hard disk) and cache storage memory.
Memory management is important for the operating system involved in multitasking wherein the OS requires switching of memory space from one process to another. Every single program requires some memory space for its execution, which is provided by the memory management unit. A CPU consists of two types of memory modules: virtual memory and physical memory. The virtual memory is a RAM memory, and the physical memory is a hard disk memory. An operating system manages the virtual memory address spaces, and the assignment of real memory is followed by the virtual memory address.
Before executing instructions, the CPU sends the virtual address to the memory management unit. Subsequently, the MMU sends the physical address to the real memory, and then the real memory allocates space for the programs or data.
Task or Process Management
Process management is an instance of a program that is being executed. The process consists of a number of elements, such as identifier, program counter, memory pointer and context data, and so on. The Process is actually an execution of those instructions.
Process Management
There are two types of process methods: single process and multitasking method. The single process method deals with the single application running at a time. The multitasking method allows multiple processes at a time.
Storage Management
Storage management is a function of the operating system that handles memory allocation of the data. The system consists of different types of memory devices, such as primary storage memory (RAM), secondary storage memory, (Hard disk) and cache storage memory.
Scheduling
Instructions and data are placed in the primary storage or cache memory, which is referenced by the running program. However, the data is lost when power supply cut off. The secondary memory is a permanent storage device. The operating system allocates a storage place when new files are created and the request for memory access is scheduled.
Device or Input/output Management
In a computer architecture, the combination of CPU and main memory is the brain of the computer, and it is managed by the input and output resources. Humans interact with the machines by providing information through I/O devices.
The display, keyboard, printer and mouse are I/O devices. The management of all these devices affects the throughput of a system; therefore, the input and output management of the system is a primary responsibility of the operating system
Scheduling
Scheduling by an operating system is a process of controlling and prioritizing the messages sent to a processor. The operating system maintains a constant amount of work for the processor and thus balances the work load. As a result, each process is completed within a stipulated time frame.
Hence, scheduling is very important in real-time systems. The schedulers are mainly of three types:
Long term scheduler
Short term scheduler
Medium term schedule
2. Real-time Operating System
Real-time operating systems are also known as multitasking operating systems. The normal operating system is responsible for managing the hardware resources of a computer. The RTOS perform these tasks, but it is especially designed to run applications at a scheduled or precise time with high reliability.
Instructions and data are placed in the primary storage or cache memory, which is referenced by the running program. However, the data is lost when power supply cut off. The secondary memory is a permanent storage device. The operating system allocates a storage place when new files are created and the request for memory access is scheduled.
Device or Input/output Management
In a computer architecture, the combination of CPU and main memory is the brain of the computer, and it is managed by the input and output resources. Humans interact with the machines by providing information through I/O devices.
The display, keyboard, printer and mouse are I/O devices. The management of all these devices affects the throughput of a system; therefore, the input and output management of the system is a primary responsibility of the operating system
Scheduling
Scheduling by an operating system is a process of controlling and prioritizing the messages sent to a processor. The operating system maintains a constant amount of work for the processor and thus balances the work load. As a result, each process is completed within a stipulated time frame.
Hence, scheduling is very important in real-time systems. The schedulers are mainly of three types:
Long term scheduler
Short term scheduler
Medium term schedule
2. Real-time Operating System
Real-time operating systems are also known as multitasking operating systems. The normal operating system is responsible for managing the hardware resources of a computer. The RTOS perform these tasks, but it is especially designed to run applications at a scheduled or precise time with high reliability.
Real time operating system
Real-time operating system is designed for real-time applications, such as embedded systems, industrial robots, scientific research equipments and others. There are different types of operating systems in real time, such as soft real-time operating systems and hard real-time operating systems.
Real-time operating system is designed for real-time applications, such as embedded systems, industrial robots, scientific research equipments and others. There are different types of operating systems in real time, such as soft real-time operating systems and hard real-time operating systems.
Examples of RTOS
RTLinux
VxWorks
TRON
Windows CE
RTLinux
VxWorks
TRON
Windows CE