Operating System
♢ Definition By ModiTech77: Operating system is a program that provides interfaces between computer hardware and end-user. It is the first program that after being initially loaded into the computer system by a boot program, manages all the other programs in a computer. Without an operating system, the user can communicate with other application programs in the computer system.
An operating system is a layer of software that takes care of the technical aspects of acomputeroperation. The application makes use of os(operating system) by requesting services through a Define application program interface. Users can interact directly with os through a user interface such as commands language or GUI(graphical user interface).
♢ Kernel
Kernel is a computer program that is a core part of the operating system. it has complete control over a system. An operating system cannot run without the kernel. It requires a kernel for communicating with the user by providing a user interface. the kernel provides an interface between the application and computer hardware.
♢ There are two types of the kernel.
1. Micro kernel 2. Monolithic kernel
♢ Micro kernel:- Microkernel is software that contains the required amount of minimum function, method, and other features to implement an operating system. This mechanism includes such as- address space management, thread management, inter-process communication(IPC), etc.
♢ Monolithic kernel:- In a monolithic kernel, the operating system entirely works in kernel space. the monolithic kernel architecture is different from other operating system architecture. it provides services like- file management, memory management, process scheduling, etc.
Differences Between Micro kernel vs Monolithic kernel
♢ Microkernel
1. It is a large single process that runs entirely in a single address space.
2. Example:- L4linux, QNX, Sybaink42, mac osx, integity, Minix, Hurd, pike os, etc.
3. In the microkernel, some of the processes running in kernel address space, and some run in user address space.
4. It is slower than the monolithic kernel.
5. If we add a new feature to the microkernel it did not need to recompiles the whole kernel.
6. Kernel size is smaller than the monolithic kernel.
7. A single process crash will have no impact on the other process.
8. It more secure than the monolithic kernel.
9. servers communicate by IPC.
10.More code is required to write a microkernel.
♢ Monolithic kernel
1. It is a separate process, broken down into a small processes.
2. Example:- Linux, BSDs, Microsoft (95, 98), solaries, 0s-9, dos, xts-400, aix, Open-VMS, HP-UX etc.
3. In a monolithic kernel, all processes run in a single kernel address space.
4. It is faster than the microkernel.
5. If we add a new feature to the monolithic kernel it will recompile the whole kernel.
6. Kernel size is bigger than the microkernel.
7. If a single process crashes then the whole system will crash.
8. It less secure than the microkernel.
9. It is a single static binary file.
10.Less code required to write microkernel.
◈ History of Operating System
1. The first computer did not require an operating system. code that is needed to run the program is already added in the program to run on thecomputer system.
2. The first operating system was developed by general motors in 1950 for IBM cental computer. it can run only one program at a time.
3. In 1960, the first Unix operating system was introduced and written in programming language c.
4. The first operating system introduced by Microsoft is MS-DOS, not the windows operating system. it was developed in 1981.
5. Microsoft introduced the first windows operating system on Nov 20, 1985. it is based on GUI (graphical user interface)and combined with MS-DOS.
6.Today, In the market there are many operating system companies is running like - windows, mac-os, Linux, Unix, etc.
◈ Services of Operating System
An operating system provides services to both user and computer hardware.
♢ Program execution
It is a process that includes the complete execution of code written by the user in any programming language.
there some services activities performed by the operating system.
(1) Loading program in memory.
(2)It executes the complete program.
(3) Ii manipulates the execution of the program.
♢ I/O operations
Each program requires some input data to process data that entered into the computer and produces output to the user according to given input by the user and important thing is that for inputting some data into the computer system we must need an output hardware/devices to get the input data by the user. All this involves I/O (Input/Output)devices. this processing is handled by the operating system by providing communication user and I/O devices.
♢ File System manipulation
A file is a collection of related information is known as a file. the computer stores files on the secondary storage media/Storage device, for long-term storage purposes. there some examples of storage media:- the magnetic disk, magnetic tape, and optical disk drives like CD, DVD, etc.
each storage device has some properties like data access method, data transfer rate, storage capacity, speed of these vary from device to device.
A directory is a collection of files. The computer file system is arranged into directories for easy navigation and usages. the directory holds the file and another directory of a computer system.
There are some important activities of operating systems concerning file system manipulation.
(1) The user can delete/create a directory by using an interface provided by the operating system.
(2)The operating system provides an access to the program for performing a function on file.
(3)All program requires to read/write a file.
(4) User can delete/create files using the interface provided by the operating system.
(5)With the operating system, we can create a backup file system.
♢ Communication
Distributed system, In this case, there are some collection of processors and there doesn't share a memory, other connected peripheral devices or the clock, to each other. the communication between these processes managed by the operating system. multiple processes communicate with each other through communication lines in the computer network.
The following activities of the operating system in respect to the communication.
(1) Data transferring between devices requires two processes (sender/receiver).
(2) These two processes can be on one computer or different computers but communicate through a computer network.
(3) Communication is processed by two methods:- by shared memory or by message passing.
♢ Error Detection
Operating system needs to be constantly aware of possible errors. The operating system continuously monitors the computer system for detecting the error and fixing these errors.
In a computer system, error may occur anytime and anywhere like:- in c.p.u., I/O devices, or in memory devices.
The followings activities perform with the operating system concerning error Detection.
The followings activities perform by os respect to error Detection.
(1) The operating System regularly monitor the possible error.
(2) the operating system take suitable action to correct an error in the computer system.
♢ Resource Allocation
In case of multitasking or multi-user are running at the same time, the resources must be allocated to each other.
The followings activities are performed by the operating system concerning resource allocations.
(1) Using schedulers, the operating system manages all kinds of resources.
(2)For better c.p.u. utilization, CPU scheduling algorithm is used.
♢ Protection
Protection refers to a mechanism or way to control the access of programs, processes. In the computer system, multiple users have different multiple processes and these should be protected and secured. The operating system gives authentication for each user protection. the user can access it by using a user password.
♢ User Interface
The user interface is an important aspect provided by the operating system in which users can interact withhardwarecomputers. there are many user interfaces are provided in the market like- GUI(graphical user interface), CLI(command line interface), etc.
The Function of the Operating System
♢ Resource sharing: manages resources by ensuring proper and effective use.
♢ Provision of virtual machine: Hidings the hardware details from the user.
♢ Memory management: Allocation of main memory and other storage to the system programs and the user data and programs. It manages the effective usage of internal memory, RAM while running multi programs.
♢ File management: The files have to be stored in various storage devices. They have to be transferred from one storage device to another. This is taken care of by the Operating System.
♢ Data security and integrity: The data and programs have to be handled in such a way that they do not interfere with each other.
♢ Input/Output Management: Management of the input/output devices and their assignment to the various programs that are being executed.
♢ Processor Management: A process is a program in execution. The processor is a hardware device that processes a sequence of instructions. Assigning processors to the different tasks being executed by the computer isprocessormanagement.
♢ Manages multitasking: Determines which application should run, in what order, and how much time should be allowed for each application before giving another application access to run.
Types of Operating System
1. Batch Operating system.
2. Time sharing/multi-tasking Operating system.
3. Distributed Operating system.
4. Network Operating system.
5. Real-time Operating system.
1.Batch Operating system:-
In the Batch operating system, the user does not have direct interaction with the computer. To speed up the processing similar types of jobs are batched together and run as a group for faster processing. large works can be easy to manage in a batch system.
2.Time sharing / Multi-tasking Operating system:-
Time-sharing operating system provides multi-users to run different shells (terminal) using a single computer at the same time. it reduces CPU idle time by processing multiple terminals at a single time. CPU executes multiple jobs by switching between these jobs. the user cannot receive an immediate response due to frequently switching occur at a time.
The operating system allocates each user a bit of time to respond, using CPU multiprogramming and scheduling.
3.Distributed Operating System:-
Distributed Operating system, In which all resources reside in separate units connected with a network but which presents to the user in a uniform computing environment. In this they use multiples CPUs for providing service to multiple real-time applications with users and data processing is provided according to implemented job. Shared communication networks are used for communication in interconnected computers. these are called loosely coupled systems.
4.Network Operating System:-
It is a computer system that runs on a server. it provides the capability to the server to managing data, processing of data, user, security, group, and all other networking function. it allows thecomputerto communicate with the computer network and shared file and printer access within LAN.
5.Real time Operating System:-
In Real-Time Operating System, the interval between sending and receiving data is very quick. data process and response to input time very less. it is also called response time. for Eg:- robots, industrial experiments, medical image processing, scientific experiment.
It uses to serve real-time applications that process data in small time. it is a time limit(bound) system that has a fixed time limit. processing is done in a defined limited time or the system will fail.
You might like this :-
○ History of computer
○Types of computer
○Computer Storage Device
○Input Device