Operating System Tutorial
The Operating System(OS) Tutorial is divided into various parts based on its functions such as Process Management, Process Synchronization, Deadlocks and File Management.
What is an Operating System(OS)?
In the Computer System (comprises Hardware and software), Hardware can only understand machine code (in the form of 0 and 1) which doesn't make any sense to a naive user.
We need a system that can act as an intermediary and manage all the processes and resources present in the system.
An Operating System can be defined as an interface between user and hardware. It is responsible for the execution of all the processes, Resource Allocation, CPU management, File Management and many other tasks.
History of Operating System
The operating system is a system program that serves as an interface between the computing system and the end-user. Operating systems create an environment where the user can run any programs or communicate with software or applications in a comfortable and well-organized way.
Furthermore, an operating system is a software program that manages and controls the execution of application programs, software resources and computer hardware.
It also helps manage the software/hardware resources, such as file management, memory management, input/ output and many peripheral devices like a disk drive, printers, etc.
Examples of Operating System
- Laptops, tablets, and desktop computers all run operating systems that you've probably heard of. Some examples include versions of Microsoft Windows (like Windows 11, Windows 10, Windows 8, Windows 7), Apple's macOS (formerly OS X), Chrome OS, and various Unix and Linux distribution lists.
- Your smartphone runs mobile operating systems, probably either Apple's iOS or Google's Android.
- Servers, like those that host the websites you visit or serve the videos you watch, typically run specialized operating systems. Some examples include Windows Server, Linux, and FreeBSD.
Functions of Operating system
Important functions of an operating Systems:
Security – The operating system uses password protection to protect user data and similar other techniques. it also prevents unauthorized access to programs and user data.
Control over system performance – Monitors overall system health to help improve performance. records the response time between service requests and system response to have a complete view of the system health.
Job accounting – Operating system Keeps track of time and resources used by various tasks and users, this information can be used to track resource usage for a particular user or group of users.
Features of Operating System
Here are some common features of modern operating systems:
Process Management: The OS manages the execution of multiple processes and threads on the system, including scheduling, synchronization, and communication between processes.
Memory Management: The OS manages the allocation and deallocation of memory resources to running processes and manages virtual memory to enable efficient use of physical memory.
Device Management: The OS manages the input and output devices of the computer system, including the keyboard, mouse, storage devices, and network devices.
File System Management: The OS manages the organization, storage, and retrieval of files and directories on the storage devices.
Security Management: The OS provides security features to protect the system from unauthorized access, including authentication, authorization, and encryption.
Components of Operating System
The main components of an operating system are:
Kernel: The kernel is the core component of the operating system that manages system resources, including CPU, memory, and input/output (I/O) devices. It provides low-level services to other components of the operating system and manages system calls and interrupts.
Device Drivers: Device drivers are software components that enable the operating system to communicate with hardware devices, such as printers, scanners, and network adapters. They provide a standard interface between the hardware and the operating system and handle device-specific commands and data.
File System: The file system is a component of the operating system that manages files and directories on the storage devices. It provides a hierarchical structure for organizing files and directories and manages file access permissions and security.
User Interface: The user interface is the component of the operating system that enables users to interact with the computer system. It provides a graphical user interface (GUI), command-line interface (CLI), and other user-friendly interfaces for users to interact with the system.
System Libraries: System libraries are collections of software components that provide common functions and routines for applications to use. They include standard libraries for programming languages, such as C and Java, and system-specific libraries for accessing operating system features.
Types of Operating Systems
There are several types of operating systems, each with its own characteristics and purposes:
Single-user, Single-task: This type of operating system is designed to run on a single computer and can only perform one task at a time. Examples include MS-DOS and early versions of Apple Macintosh.
Single-user, Multi-tasking: This type of operating system allows multiple applications to run at the same time on a single computer. Examples include Microsoft Windows, macOS, and Linux.
Multi-user: Multi-user operating systems allow multiple users to access the same computer simultaneously. Each user has their own account and can run their own applications. Examples include Unix, Linux, and Windows Server.
Real-time: Real-time operating systems are designed for applications that require immediate response times, such as industrial control systems and medical equipment. Examples include VxWorks and QNX.
Network: Network operating systems are designed to manage and control network resources, such as servers, printers, and network storage devices. Examples include Novell NetWare and Windows Server.
Mobile: Mobile operating systems are designed for use on mobile devices, such as smartphones and tablets. Examples include Android, iOS, and Windows Phone.
Embedded: Embedded operating systems are designed for use in embedded systems, such as automotive systems, consumer electronics, and industrial control systems. Examples include Linux and VxWorks.
Operating Systems Market Share
The following points show the market share from March 2022 to March 2023:
- Windows is the most popular desktop/laptop operating system, with a global market share of 74.15%.
- macOS is the second most popular desktop/laptop operating system, with a global market share of 16.78%.
- Linux is a distant third in the desktop/laptop market, with a global market share of 1.98%.
- Android is the most popular mobile operating system, with a global market share of 72.92%.
- iOS is the second most popular mobile operating system, with a global market share of 26.44%.
- KaiOS, a mobile operating system designed for feature phones, has a global market share of 0.48%.
The market share for operating systems can vary significantly by region and industry.The market share figures are subject to change over time, as new operating systems are released and user preferences evolve.
Error detecting aids
The operating system constantly monitors the system to detect errors and avoid the malfunctioning of a computer system.
The operating system manages the Primary Memory or Main Memory. Main memory is made up of a large array of bytes or words where each byte or word is assigned a certain address. Main memory is fast storage and it can be accessed directly by the CPU.
Processor Management – In a multiprogramming environment, the OS decides the order in which processes have access to the processor, and how much processing time each process has.
An OS manages device communication via their respective drivers. It performs the following activities for device management. Keeps track of all devices connected to the system.
A file system is organized into directories for efficient or easy navigation and usage. These directories may contain other directories and other types of files. Features of Operating System
Protected and supervisor mode
- Allows disk access and file systems Device drivers Networking Security.
- Program Execution.
- Memory management Virtual Memory Multitasking.
- Handling I/O operations.
- Manipulation of the file system.
- Error Detection and handling.
- Resource allocation.
Advantages of Operating System
- User Friendly. The interface provided by the GUI is much more user friendly compared to a command-line interface
- Security. It is a responsibility of an operating system to make sure each data present inside them is secure
- Sharing Resources
- Hardware Accessibility
Disadvantages of Operating System
- Cost - Unless it is an open-source operating system, generally all other platforms are considered to be expensive.
- Reliability - An operating system is a vital software for any computer
- Virus Attacks
Career Opportunity of Learning Operating System
- Operating Systems Specialist
- Operating Systems Programmer
- IT Administrator