Introduction to Operating System
- An operating system is a program that controls the execution of application programs and acts as an interface between the user of a computer and the computer hardware.
Functionalities:
Resource Management:
- When parallel accessing happens in the OS means when multiple users are accessing the system the OS works as Resource Manager, Its responsibility is to provide hardware to the user.
- It decreases the load in the system.
Process Management:
- It includes various tasks like scheduling, termination of the process.
- OS manages various tasks at a time. Here CPU Scheduling happens means all the tasks would be done by the many algorithms that use for scheduling.
Storage Management:
- The file system mechanism used for the management of the storage. NIFS, CFS, CIFS, NFS, etc. are some file systems.
- All the data stores in various tracks of Hard disks that all managed by the storage manager. It included Hard Disk.
Memory Management:
- Refers to the management of primary memory.
- The operating system has to keep track, how much memory has been used and by whom. It has to decide which process needs memory space and how much.
- OS also has to allocate and deallocate the memory space.
Security/ Privacy Management:
- Privacy is also provided by the Operating system by means of passwords so that unauthorized applications can’t access programs or data.
- For example, Windows uses Kerberos authentication to prevent unauthorized access to data.
Types of Operating System
1. Batch Operating System
- This type of operating system does not interact with the computer directly.
- There is an operator which takes similar jobs having the same requirement and group them into batches.
- It is the responsibility of the operator to sort jobs with similar needs.
- Examples of Batch based Operating System: Payroll System
2. Time Sharing Operating System
- Each task is given some time to execute so that all the tasks work smoothly.
- Each user gets the time of CPU as they use a single system.
- After this time interval is over OS switches over to the next task.
- Examples of Time-Sharing OSs are: Unix, etc.
3. Distributed Operating System
- The Distributed Operating system is not installed on a single machine, it is divided into parts, and these parts are loaded on different machines.
- A part of the distributed Operating system is installed on each machine to make their communication possible.
- Examples of Distributed Operating System are- LOCUS, etc.
4. Network Operating System
- These systems run on a server and provide the capability to manage data, users, groups, security, applications, and other networking functions.
- These types of operating systems allow shared access of files, printers, security, applications, and other networking functions over a small private network.
- Examples of Network Operating System are: Linux.
5. Real-Time Operating System
- These types of OSs serve real-time systems.
- The time interval required to process and respond to inputs is very small. This time interval is called response time.
Types of Memory
RAM
- It is also called read-write memory or the main memory or the primary memory.
- The programs and data that the CPU requires during the execution of a program are stored in this memory.
- It is a volatile memory as the data is lost when the power is turned off.
- Types:
- SRAM:
- Used for cache.
- DRAM:
- Used for main memory.
ROM
- Stores crucial information essential to operate the system, like the program essential to boot the computer.
- It is not volatile.
- Always retains its data.
- Used in embedded systems or where the programming needs no change.
- Used in calculators and peripheral devices.
- Types: PROM, EPROM, EEPROM
Difference between 32-bit and 64-bit Operating System
-
A 32-bit system can access 2^32 different memory addresses, i.e 4 GB of RAM or physical memory ideally, it can access more than 4 GB of RAM also.
-
A 64-bit system can access 2^64 different memory addresses, i.e actually 18-Quintillion bytes of RAM. In short, any amount of memory greater than 4 GB can be easily handled by it.
Some Terminologies
- Multiprogramming : Multiprogramming is known as keeping multiple programs in the main memory at the same time ready for execution.
- Multiprocessing : A computer using more than one CPU at a time.
- Multitasking : Multitasking is nothing but multiprogramming with a Round-robin scheduling algorithm.
- Multithreading: It is an extension of multitasking.