SlideShare a Scribd company logo
1 of 16
Download to read offline
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Course Title: Operating System Concepts
Course code: 21BCADSC7
Unit 1: Introduction to Operating System: Definition, History and Examples of Operating
System; Computer System organization; Types of Operating Systems; Functions of Operating
System; Systems Calls; Operating System Structure.
Introduction to Operating System:
Definition:
An Operating System (OS) is an interface between a computer user and computer hardware. An
operating system is a software which performs all the basic tasks like file management, memory
management, process management, handling input and output, and controlling peripheral devices
such as disk drives and printers.
The primary purposes of an Operating System are to enable applications (software’s) to interact
with a computer's hardware and to manage a system's hardware and software resources.
Some popular Operating Systems include Linux Operating System, Windows Operating System,
VMS, OS/400, AIX, z/OS, etc. Today, Operating systems is found almost in every device like
mobile phones, personal computers, mainframe computers, automobiles, TV, Toys etc.
History:
The history of operating systems is a fascinating journey that parallels the evolution of computing
technology. Here's a simplified overview of the key milestones:
1950s - Early Mainframe Systems:
- The earliest electronic computers, such as the UNIVAC I and IBM 701, were large mainframe
systems that required operators to manually load programs and input data using punched cards or
paper tape.
- Operating systems were basic control programs that managed the execution of user programs
and hardware resources.
1960s - Batch Processing Systems:
- Batch processing systems emerged, allowing multiple jobs to be submitted and processed
sequentially without user intervention.
- Operating systems like IBM's OS/360 introduced features such as job scheduling, spooling,
and resource allocation.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Late 1960s - Time-Sharing Systems:
- Time-sharing systems enabled multiple users to interact with a computer simultaneously by
dividing CPU time into small slices.
- Operating systems like CTSS (Compatible Time-Sharing System) and MULTICS (Multiplexed
Information and Computing Service) pioneered interactive computing.
1970s - Rise of Minicomputers and Microcomputers:
- The introduction of minicomputers and microcomputers brought computing power to smaller
organizations and individuals.
- Operating systems like UNIX, developed at Bell Labs, became popular for their portability and
flexibility.
1980s - Personal Computers and GUIs:
- The 1980s saw the rise of personal computers (PCs) and graphical user interfaces (GUIs) with
the introduction of systems like Apple Macintosh and Microsoft Windows.
- Operating systems became more user-friendly and accessible to non-technical users.
1990s - Networked Computing and the Internet:
- The proliferation of networking technologies and the advent of the internet transformed
computing.
- Operating systems like Linux gained popularity for their stability, flexibility, and open-source
nature.
2000s - Mobile and Cloud Computing:
- The 2000s witnessed the emergence of mobile computing platforms like iOS and Android, as
well as cloud computing services like Amazon Web Services (AWS) and Google Cloud Platform
(GCP).
- Operating systems adapted to support new paradigms such as virtualization, containerization,
and distributed computing.
2010s - IoT and Edge Computing:
- The Internet of Things (IoT) and edge computing brought computing power to everyday objects
and devices.
- Operating systems like Google's Android Things and Microsoft's Windows IoT catered to the
needs of embedded and connected systems.
2020s - AI and Quantum Computing:
- In recent years, advancements in artificial intelligence (AI) and quantum computing have
pushed the boundaries of computing technology.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
- Operating systems continue to evolve to support emerging technologies and address new
challenges in security, scalability, and performance.
Examples of Operating System
Here are some examples of operating systems across various platforms:
Microsoft Windows:
- Microsoft Windows is one of the most widely used operating systems for personal computers.
It offers a graphical user interface (GUI) and supports a wide range of software applications.
Versions of Windows include Windows 10, Windows 8, Windows 7, and earlier versions like
Windows XP and Windows 98.
macOS:
- macOS is the operating system developed by Apple Inc. for their Macintosh line of computers.
It is known for its user-friendly interface, stability, and integration with other Apple devices and
services. macOS versions include macOS Big Sur, macOS Catalina, macOS Mojave, and earlier
versions like OS X.
Linux:
- Linux is an open-source operating system kernel that serves as the foundation for many
different Linux distributions (distros). Linux distros are widely used in servers, embedded systems,
and personal computers. Examples of Linux distributions include Ubuntu, Debian, Fedora,
CentOS, and Arch Linux.
Unix:
- Unix is a family of multitasking, multi-user operating systems originally developed in the
1970s. While commercial Unix variants like AIX, HP-UX, and Solaris exist, there are also open-
source versions like FreeBSD, OpenBSD, and NetBSD. Unix has been influential in the
development of other operating systems, including Linux and macOS.
iOS:
- iOS is the mobile operating system developed by Apple Inc. for their iPhone, iPad, and iPod
Touch devices. It is known for its intuitive touch-based interface and extensive library of mobile
apps. iOS undergoes regular updates, with major releases typically announced annually.
Android:
- Android is a mobile operating system developed by Google, based on the Linux kernel. It is
used by a variety of smartphones, tablets, smartwatches, and other devices. Android is known for
its customization options and integration with Google services. Different versions of Android are
released periodically, with names based on desserts or sweet treats.
Chrome OS:
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
- Chrome OS is a Linux-based operating system developed by Google, designed primarily for
use with Chromebook laptops. It is optimized for web browsing and cloud computing, with
applications running primarily in the Chrome browser. Chrome OS receives regular updates from
Google.
RTOS (Real-Time Operating Systems):
- Real-Time Operating Systems are designed to handle real-time processing requirements, where
tasks must be completed within strict time constraints. Examples of RTOS include FreeRTOS,
VxWorks, QNX, and RTLinux. These operating systems are commonly used in embedded systems,
automotive systems, and industrial automation.
Computer System organization
Computer System Organization refers to the structure and components of a computer system and
how they interact to perform various functions. It encompasses hardware, software, and firmware
components and their organization to facilitate the execution of tasks efficiently. Here's an
overview of the key aspects of computer system organization:
Hardware Components:
- Central Processing Unit (CPU): The CPU is the brain of the computer, responsible for executing
instructions and performing calculations. It consists of the Arithmetic Logic Unit (ALU), Control
Unit (CU), and registers.
- Memory: Computer memory is used to store data and instructions temporarily or permanently.
It includes Random Access Memory (RAM) for temporary storage and Read-Only Memory
(ROM) for storing firmware and system instructions.
- Input Devices: Input devices like keyboards, mice, touchscreens, and sensors allow users to
input data and commands into the computer system.
- Output Devices: Output devices such as monitors, printers, speakers, and actuators display or
produce the results of computations and operations.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
- Storage Devices: Storage devices like hard disk drives (HDDs), solid-state drives (SSDs),
optical drives, and flash drives are used to store data and programs persistently.
- Bus Architecture: Buses are communication pathways that allow data and instructions to flow
between different hardware components. Examples include the system bus, memory bus, and
peripheral bus.
Software Components:
- Operating System: The operating system manages hardware resources, provides a user
interface, and facilitates the execution of software applications.
- Application Software: Application software includes programs and tools used to perform
specific tasks or functions, such as word processors, web browsers, games, and multimedia
players.
- System Software: System software includes utility programs and drivers that help manage and
maintain the computer system, such as antivirus software, disk utilities, and device drivers.
Firmware Components:
- BIOS/UEFI: Basic Input/Output System (BIOS) or Unified Extensible Firmware Interface
(UEFI) is firmware that initializes hardware components during the boot process and provides
low-level system services.
- Bootloader: The bootloader is responsible for loading the operating system into memory and
initiating the boot process.
- Embedded Systems Firmware: Firmware in embedded systems provides control and
functionality for specific devices or appliances, such as microcontrollers in automotive systems,
industrial machinery, and consumer electronics.
System Architecture:
- Von Neumann Architecture: The Von Neumann architecture is a theoretical framework for
computer design, featuring a single shared memory for both data and instructions.
- Harvard Architecture: The Harvard architecture separates memory for data and instructions,
allowing simultaneous access to both, which can improve performance in some scenarios.
- Parallel Processing: Parallel processing architectures utilize multiple processing units to
execute tasks concurrently, improving performance and scalability.
Interconnection and Communication:
- Computer systems utilize various interconnection technologies, such as wired and wireless
networks, to facilitate communication between components, devices, and external systems.
- Communication protocols define standards and rules for exchanging data and commands
between different entities within a computer system or between multiple systems.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Understanding the organization of computer systems is essential for designing, building,
programming, and maintaining efficient and reliable computing environments for various
applications and use cases.
Types of Operating Systems:
Operating systems (OS) can be categorized into various types based on different criteria such as
the number of users they support, the number of tasks they handle simultaneously, their design
philosophy, and the platforms they run on. Here are some common types of operating systems:
Single-User, Single-Tasking:
- These operating systems are designed to support one user at a time and can only run one task
or process at a time. Users must wait for the completion of one task before starting another.
Examples include early versions of MS-DOS and some embedded systems.
Single-User, Multi-Tasking:
- Single-user, multi-tasking operating systems allow a single user to run multiple tasks or
processes concurrently. The OS manages task switching and resource allocation to ensure efficient
utilization of system resources. Examples include modern desktop operating systems like
Microsoft Windows, macOS, and Linux distributions.
Multi-User:
- Multi-user operating systems support multiple users accessing the system simultaneously. Each
user can have their own session and run multiple processes independently. These systems provide
mechanisms for user authentication, access control, and resource sharing. Examples include
Unix/Linux variants, such as Ubuntu Server, CentOS, and FreeBSD.
Batch operating system:
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
The users of a batch operating system do not interact with the computer directly. Each user
prepares his job on an off-line device like punch cards and submits it to the computer operator.
To speed up processing, jobs with similar needs are batched together and run as a group. The
programmers leave their programs with the operator and the operator then sorts the programs
with similar requirements into batches.
The problems with Batch Systems are as follows −
• Lack of interaction between the user and the job.
• CPU is often idle, because the speed of the mechanical I/O devices is slower than the
CPU.
• Difficult to provide the desired priority.
Real-Time Operating System (RTOS):
- Real-Time Operating Systems are designed to meet strict timing constraints and deadlines for
processing tasks. They prioritize tasks based on their urgency and ensure timely response to
external events. RTOSs are commonly used in embedded systems, industrial automation, and
mission-critical applications. Examples include FreeRTOS, VxWorks, and QNX.
Distributed Operating System:
- Distributed operating systems manage a group of independent computers and make them
appear as a single coherent system. They provide features like transparency, fault tolerance, and
resource sharing across multiple nodes in a network. Examples include Google's Chrome OS,
which leverages cloud-based resources, and various grid computing systems.
Network Operating System (NOS):
- Network operating systems are specialized operating systems that facilitate communication and
resource sharing between computers in a network. They provide services like file sharing, printing,
and directory services to networked devices. Examples include Windows Server, Linux-based
network operating systems like Samba, and Novell NetWare (though less common today).
Mobile Operating Systems:
- Mobile operating systems are designed for smartphones, tablets, and other mobile devices.
They are optimized for touch input and support mobile-specific features like location services,
sensors, and power management. Examples include Google's Android, Apple's iOS, and
Microsoft's Windows Phone (now discontinued).
Embedded Operating Systems:
- Embedded operating systems are tailored for use in embedded systems with limited resources
and specific functionality requirements. They are often used in devices like microcontrollers, IoT
devices, and industrial equipment. Examples include Embedded Linux, Free RTOS, and Windows
Embedded Compact.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Functions of Operating System:
The operating system (OS) serves as a vital intermediary between computer hardware and
software, providing essential functions to manage resources, facilitate communication, and enable
efficient operation. Here are the primary functions of an operating system:
Process Management:
- The OS oversees the creation, scheduling, and termination of processes, which are instances of
running programs. It allocates CPU time to processes, manages process priorities, and ensures fair
access to system resources.
Memory Management:
- Memory management involves allocating and deallocating memory to processes, ensuring
efficient utilization of system memory. The OS manages virtual memory, swapping data between
RAM and disk storage, and implements memory protection to prevent unauthorized access.
File System Management:
- The OS provides a file system that organizes and manages files on storage devices such as hard
disks and SSDs. It handles file creation, deletion, reading, and writing operations, as well as file
access permissions and security.
Device Management:
- Device management involves controlling and coordinating access to hardware devices such as
printers, disk drives, network interfaces, and input/output devices. The OS provides device drivers
to interface with hardware components and ensures efficient and reliable communication between
devices and software.
Input/Output Management:
- The OS manages input/output (I/O) operations between peripheral devices and the CPU,
including data transfer, interrupt handling, and device synchronization. It buffers and caches data
to improve I/O performance and coordinates I/O requests from multiple processes.
User Interface:
- The OS provides a user interface (UI) that allows users to interact with the computer system.
This can take the form of a command-line interface (CLI), where users type commands, or a
graphical user interface (GUI), with windows, icons, menus, and pointing devices for navigation.
Security and Access Control:
- Security is a critical function of the OS, involving user authentication, access control, data
encryption, and protection against malware and unauthorized access. The OS implements security
policies to safeguard system resources and user data from threats.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Networking:
- Many operating systems include networking capabilities to enable communication and data
exchange between computers and devices in a network. The OS supports protocols for network
communication, such as TCP/IP, and provides services like network configuration, routing, and
socket management.
Error Handling and Recovery:
- The OS detects and handles errors and exceptions that occur during system operation, such as
hardware faults, software crashes, and invalid operations. It provides mechanisms for error
reporting, logging, and recovery to maintain system stability and reliability.
Resource Allocation and Scheduling:
- The OS manages system resources such as CPU time, memory, and I/O devices and allocates
them to processes based on priority, fairness, and efficiency. It employs scheduling algorithms to
optimize resource utilization and ensure responsive system performance.
These functions collectively enable the efficient operation of computer systems, providing a
platform for running applications, managing data, and facilitating communication in diverse
computing environments.
Systems Calls
A system call is a way for a user program to interface with the operating system. The program
requests several services, and the OS responds by invoking a series of system calls to satisfy the
request. A system call can be written in assembly language or a high-level language
like C or Pascal. System calls are predefined functions that the operating system may directly
invoke if a high-level language is used.
What is a System Call?
A system call is a method for a computer program to request a service from the kernel of
the operating system on which it is running. A system call is a method of interacting with the
operating system via programs. A system call is a request from computer software to an operating
system's kernel.
The Application Program Interface (API) connects the operating system's functions to user
programs. It acts as a link between the operating system and a process, allowing user-level
programs to request operating system services. The kernel system can only be accessed using
system calls. System calls are required for any programs that use resources.
Why do you need system calls in Operating System?
There are various situations where you must require system calls in the operating system.
Following of the situations are as follows:
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
1. It is must require when a file system wants to create or delete a file.
2. Network connections require the system calls to sending and receiving data packets.
3. If you want to read or write a file, you need to system calls.
4. If you want to access hardware devices, including a printer, scanner, you need a system
call.
5. System calls are used to create and manage new processes.
Types of System Calls
There are commonly five types of system calls. These are as follows:
1. Process Control
2. File Management
3. Device Management
4. Information Maintenance
5. Communication
Process Control
Process control is the system call that is used to direct the processes. Some process control
examples include creating, load, abort, end, execute, process, terminate the process, etc.
File Management
File management is a system call that is used to handle the files. Some file management examples
include creating files, delete files, open, close, read, write, etc.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Device Management
Device management is a system call that is used to deal with devices. Some examples of device
management include read, device, write, get device attributes, release device, etc.
Information Maintenance
Information maintenance is a system call that is used to maintain information. There are some
examples of information maintenance, including getting system data, set time or date, get time or
date, set system data, etc.
Communication:
Communication is a system call that is used for communication. There are some examples of
communication, including create, delete communication connections, send, receive messages, etc.
Operating System Structure:
An operating system is a design that enables user application programs to communicate with the
hardware of the machine. The operating system should be built with the utmost care because it is
such a complicated structure and should be simple to use and modify. Operating systems are
implemented using many types of structures like,
o Simple Structure
o Monolithic Structure
o Layered Approach Structure
o Micro-Kernel Structure
o Exo-Kernel Structure
o Virtual Machines
Simple structure
It is the most straightforward operating system structure, but it lacks definition and is only
appropriate for usage with tiny and restricted systems. Since the interfaces and degrees of
functionality in this structure are clearly defined, programs are able to access I/O routines, which
may result in unauthorized access to I/O procedures.
This organizational structure is used by the MS-DOS operating system:
o There are four layers that make up the MS-DOS operating system, and each has its own set
of features.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
o These layers include ROM BIOS device drivers, MS-DOS device drivers, application
programs, and system programs.
o The MS-DOS operating system benefits from layering because each level can be defined
independently and, when necessary, can interact with one another.
o If the system is built in layers, it will be simpler to design, manage, and update. Because
of this, simple structures can be used to build constrained systems that are less complex.
o When a user program fails, the operating system as whole crashes.
o Because MS-DOS systems have a low level of abstraction, programs and I/O procedures
are visible to end users, giving them the potential for unwanted access.
The following figure illustrates layering in simple structure:
Advantages of Simple Structure:
o Because there are only a few interfaces and levels, it is simple to develop.
o Because there are fewer layers between the hardware and the applications, it offers superior
performance.
Disadvantages of Simple Structure:
o The entire operating system breaks if just one user program malfunctions.
o Since the layers are interconnected, and in communication with one another, there is no
abstraction or data hiding.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
o The operating system's operations are accessible to layers, which can result in data
tampering and system failure.
Monolithic structure
The monolithic operating system controls all aspects of the operating system's operation, including
file management, memory management, device management, and operational operations.
The core of an operating system for computers is called the kernel (OS). All other System
components are provided with fundamental services by the kernel. The operating system and the
hardware use it as their main interface. When an operating system is built into a single piece of
hardware, such as a keyboard or mouse, the kernel can directly access all of its resources.
The monolithic operating system is often referred to as the monolithic kernel. Multiple
programming techniques such as batch processing and time-sharing increase a processor's
usability. Working on top of the operating system and under complete command of all hardware,
the monolithic kernel performs the role of a virtual computer. This is an old operating system that
was used in banks to carry out simple tasks like batch processing and time-sharing, which allows
numerous users at different terminals to access the Operating System.
Advantages of Monolithic Structure:
o Because layering is unnecessary and the kernel alone is responsible for managing all
operations, it is easy to design and execute.
o Due to the fact that functions like memory management, file management, process
scheduling, etc., are implemented in the same address area, the monolithic kernel runs
rather quickly when compared to other systems. Utilizing the same address speeds up and
reduces the time required for address allocation for new processes.
Disadvantages of Monolithic Structure:
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
o The monolithic kernel's services are interconnected in address space and have an impact
on one another, so if any of them malfunctions, the entire system does as well.
o It is not adaptable. Therefore, launching a new service is difficult.
Layered structure
The OS is separated into layers or levels in this kind of arrangement. Layer 0 (the lowest layer)
contains the hardware, and layer 1 (the highest layer) contains the user interface (layer N). These
layers are organized hierarchically, with the top-level layers making use of the capabilities of the
lower-level ones.
The functionalities of each layer are separated in this method, and abstraction is also an option.
Because layered structures are hierarchical, debugging is simpler, therefore all lower-level layers
are debugged before the upper layer is examined. As a result, the present layer alone has to be
reviewed since all the lower layers have already been examined.
Advantages of Layered Structure:
o Work duties are separated since each layer has its own functionality, and there is some
amount of abstraction.
o Debugging is simpler because the lower layers are examined first, followed by the top
layers.
Disadvantages of Layered Structure:
o Performance is compromised in layered structures due to layering.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
o Construction of the layers requires careful design because upper layers only make use of
lower layers' capabilities.
Micro-kernel structure
The operating system is created using a micro-kernel framework that strips the kernel of any
unnecessary parts. Systems and user applications are used to implement these optional kernel
components. So, Micro-Kernels is the name given to these systems that have been developed.
Each Micro-Kernel is created separately and is kept apart from the others. As a result, the system
is now more trustworthy and secure. If one Micro-Kernel malfunctions, the remaining operating
system is unaffected and continues to function normally.
The image below shows Micro-Kernel Operating System Structure:
Advantages of Micro-Kernel Structure:
o It enables portability of the operating system across platforms.
o Due to the isolation of each Micro-Kernel, it is reliable and secure.
o The reduced size of Micro-Kernels allows for successful testing.
o The remaining operating system remains unaffected and keeps running properly even if a
component or Micro-Kernel fails.
Unit 1 : Introduction to Operating System
Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET
Disadvantages of Micro-Kernel Structure:
o The performance of the system is decreased by increased inter-module communication.
o The construction of a system is complicated.
Virtual machines (VMS)
The hardware of our personal computer, including the CPU, disc drives, RAM, and NIC (Network
Interface Card), is abstracted by a virtual machine into a variety of various execution contexts
based on our needs, giving us the impression that each execution environment is a separate
computer. A virtual box is an example of it.
Using CPU scheduling and virtual memory techniques, an operating system allows us to execute
multiple processes simultaneously while giving the impression that each one is using a separate
processor and virtual memory. System calls and a file system are examples of extra functionalities
that a process can have that the hardware is unable to give. Instead of offering these extra features,
the virtual machine method just offers an interface that is similar to that of the most fundamental
hardware. Avirtual duplicate of the computer system underneath is made available to each process.
Advantages of Virtual Machines:
o Due to total isolation between each virtual machine and every other virtual machine, there
are no issues with security.
o A virtual machine may offer an architecture for the instruction set that is different from that
of actual computers.
o Simple availability, accessibility, and recovery convenience.
Disadvantages of Virtual Machines:
o Depending on the workload, operating numerous virtual machines simultaneously on a host
computer may have an adverse effect on one of them.
o When it comes to hardware access, virtual computers are less effective than physical ones.

More Related Content

Similar to Introduction to Operating system for BCA syllabus

Fundamentals of operating system maam lugas.pptx
Fundamentals of operating system maam lugas.pptxFundamentals of operating system maam lugas.pptx
Fundamentals of operating system maam lugas.pptxKim Brian Tilandoca
 
Operating systems11 9-07 (1)
Operating systems11 9-07 (1)Operating systems11 9-07 (1)
Operating systems11 9-07 (1)vattikuti_sarada
 
Introduction to Operating System
Introduction to Operating SystemIntroduction to Operating System
Introduction to Operating SystemAiman Hafeez
 
Introduction to Operating System and its Types
Introduction to Operating System and its TypesIntroduction to Operating System and its Types
Introduction to Operating System and its Typessundas Shabbir
 
Operating systems
Operating systemsOperating systems
Operating systemsmhmahamuk
 
OPERATING SYSTUM class 9 Information.pptx
OPERATING SYSTUM class 9 Information.pptxOPERATING SYSTUM class 9 Information.pptx
OPERATING SYSTUM class 9 Information.pptxrajdeepcs10
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07ainfara
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07anishamca
 
Itk rawa t____operatingsystems2
Itk rawa t____operatingsystems2Itk rawa t____operatingsystems2
Itk rawa t____operatingsystems2KapiL RawaT
 
Operating systems By Awais
Operating systems By AwaisOperating systems By Awais
Operating systems By AwaisAwaisch3
 

Similar to Introduction to Operating system for BCA syllabus (20)

Fundamentals of operating system maam lugas.pptx
Fundamentals of operating system maam lugas.pptxFundamentals of operating system maam lugas.pptx
Fundamentals of operating system maam lugas.pptx
 
Operating systems11 9-07 (1)
Operating systems11 9-07 (1)Operating systems11 9-07 (1)
Operating systems11 9-07 (1)
 
Introduction to Operating System
Introduction to Operating SystemIntroduction to Operating System
Introduction to Operating System
 
training report
training reporttraining report
training report
 
Opertaor system basic
Opertaor system basicOpertaor system basic
Opertaor system basic
 
Information sheet 1
Information sheet 1Information sheet 1
Information sheet 1
 
Introduction to Operating System and its Types
Introduction to Operating System and its TypesIntroduction to Operating System and its Types
Introduction to Operating System and its Types
 
os.ppt
os.pptos.ppt
os.ppt
 
Operating systems
Operating systemsOperating systems
Operating systems
 
OPERATING SYSTUM class 9 Information.pptx
OPERATING SYSTUM class 9 Information.pptxOPERATING SYSTUM class 9 Information.pptx
OPERATING SYSTUM class 9 Information.pptx
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07
 
Operating systems11 9-07
Operating systems11 9-07Operating systems11 9-07
Operating systems11 9-07
 
Operating system
Operating systemOperating system
Operating system
 
Itc chapter # 9
Itc   chapter # 9Itc   chapter # 9
Itc chapter # 9
 
Operating system
Operating systemOperating system
Operating system
 
COMPUTER APPLICATIONS Module 2.pptx
COMPUTER APPLICATIONS Module 2.pptxCOMPUTER APPLICATIONS Module 2.pptx
COMPUTER APPLICATIONS Module 2.pptx
 
Chapter 5.0
Chapter 5.0Chapter 5.0
Chapter 5.0
 
Utility Programs
Utility ProgramsUtility Programs
Utility Programs
 
Itk rawa t____operatingsystems2
Itk rawa t____operatingsystems2Itk rawa t____operatingsystems2
Itk rawa t____operatingsystems2
 
Operating systems By Awais
Operating systems By AwaisOperating systems By Awais
Operating systems By Awais
 

Recently uploaded

Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Nistarini College, Purulia (W.B) India
 
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.PraveenaKalaiselvan1
 
‏‏VIRUS - 123455555555555555555555555555555555555555
‏‏VIRUS -  123455555555555555555555555555555555555555‏‏VIRUS -  123455555555555555555555555555555555555555
‏‏VIRUS - 123455555555555555555555555555555555555555kikilily0909
 
Harmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms PresentationHarmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms Presentationtahreemzahra82
 
Welcome to GFDL for Take Your Child To Work Day
Welcome to GFDL for Take Your Child To Work DayWelcome to GFDL for Take Your Child To Work Day
Welcome to GFDL for Take Your Child To Work DayZachary Labe
 
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxTHE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxNandakishor Bhaurao Deshmukh
 
Module 4: Mendelian Genetics and Punnett Square
Module 4:  Mendelian Genetics and Punnett SquareModule 4:  Mendelian Genetics and Punnett Square
Module 4: Mendelian Genetics and Punnett SquareIsiahStephanRadaza
 
Twin's paradox experiment is a meassurement of the extra dimensions.pptx
Twin's paradox experiment is a meassurement of the extra dimensions.pptxTwin's paradox experiment is a meassurement of the extra dimensions.pptx
Twin's paradox experiment is a meassurement of the extra dimensions.pptxEran Akiva Sinbar
 
Analytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptxAnalytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptxSwapnil Therkar
 
zoogeography of pakistan.pptx fauna of Pakistan
zoogeography of pakistan.pptx fauna of Pakistanzoogeography of pakistan.pptx fauna of Pakistan
zoogeography of pakistan.pptx fauna of Pakistanzohaibmir069
 
TOTAL CHOLESTEROL (lipid profile test).pptx
TOTAL CHOLESTEROL (lipid profile test).pptxTOTAL CHOLESTEROL (lipid profile test).pptx
TOTAL CHOLESTEROL (lipid profile test).pptxdharshini369nike
 
Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)DHURKADEVIBASKAR
 
Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.aasikanpl
 
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfBehavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfSELF-EXPLANATORY
 
Grafana in space: Monitoring Japan's SLIM moon lander in real time
Grafana in space: Monitoring Japan's SLIM moon lander  in real timeGrafana in space: Monitoring Japan's SLIM moon lander  in real time
Grafana in space: Monitoring Japan's SLIM moon lander in real timeSatoshi NAKAHIRA
 
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxSOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxkessiyaTpeter
 
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

Volatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -IVolatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -I
 
Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...
 
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
 
‏‏VIRUS - 123455555555555555555555555555555555555555
‏‏VIRUS -  123455555555555555555555555555555555555555‏‏VIRUS -  123455555555555555555555555555555555555555
‏‏VIRUS - 123455555555555555555555555555555555555555
 
Hot Sexy call girls in Moti Nagar,🔝 9953056974 🔝 escort Service
Hot Sexy call girls in  Moti Nagar,🔝 9953056974 🔝 escort ServiceHot Sexy call girls in  Moti Nagar,🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Moti Nagar,🔝 9953056974 🔝 escort Service
 
Harmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms PresentationHarmful and Useful Microorganisms Presentation
Harmful and Useful Microorganisms Presentation
 
Welcome to GFDL for Take Your Child To Work Day
Welcome to GFDL for Take Your Child To Work DayWelcome to GFDL for Take Your Child To Work Day
Welcome to GFDL for Take Your Child To Work Day
 
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxTHE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
 
Module 4: Mendelian Genetics and Punnett Square
Module 4:  Mendelian Genetics and Punnett SquareModule 4:  Mendelian Genetics and Punnett Square
Module 4: Mendelian Genetics and Punnett Square
 
Twin's paradox experiment is a meassurement of the extra dimensions.pptx
Twin's paradox experiment is a meassurement of the extra dimensions.pptxTwin's paradox experiment is a meassurement of the extra dimensions.pptx
Twin's paradox experiment is a meassurement of the extra dimensions.pptx
 
Engler and Prantl system of classification in plant taxonomy
Engler and Prantl system of classification in plant taxonomyEngler and Prantl system of classification in plant taxonomy
Engler and Prantl system of classification in plant taxonomy
 
Analytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptxAnalytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptx
 
zoogeography of pakistan.pptx fauna of Pakistan
zoogeography of pakistan.pptx fauna of Pakistanzoogeography of pakistan.pptx fauna of Pakistan
zoogeography of pakistan.pptx fauna of Pakistan
 
TOTAL CHOLESTEROL (lipid profile test).pptx
TOTAL CHOLESTEROL (lipid profile test).pptxTOTAL CHOLESTEROL (lipid profile test).pptx
TOTAL CHOLESTEROL (lipid profile test).pptx
 
Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)
 
Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Aiims Metro Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
 
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfBehavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
 
Grafana in space: Monitoring Japan's SLIM moon lander in real time
Grafana in space: Monitoring Japan's SLIM moon lander  in real timeGrafana in space: Monitoring Japan's SLIM moon lander  in real time
Grafana in space: Monitoring Japan's SLIM moon lander in real time
 
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxSOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
 
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
 

Introduction to Operating system for BCA syllabus

  • 1. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Course Title: Operating System Concepts Course code: 21BCADSC7 Unit 1: Introduction to Operating System: Definition, History and Examples of Operating System; Computer System organization; Types of Operating Systems; Functions of Operating System; Systems Calls; Operating System Structure. Introduction to Operating System: Definition: An Operating System (OS) is an interface between a computer user and computer hardware. An operating system is a software which performs all the basic tasks like file management, memory management, process management, handling input and output, and controlling peripheral devices such as disk drives and printers. The primary purposes of an Operating System are to enable applications (software’s) to interact with a computer's hardware and to manage a system's hardware and software resources. Some popular Operating Systems include Linux Operating System, Windows Operating System, VMS, OS/400, AIX, z/OS, etc. Today, Operating systems is found almost in every device like mobile phones, personal computers, mainframe computers, automobiles, TV, Toys etc. History: The history of operating systems is a fascinating journey that parallels the evolution of computing technology. Here's a simplified overview of the key milestones: 1950s - Early Mainframe Systems: - The earliest electronic computers, such as the UNIVAC I and IBM 701, were large mainframe systems that required operators to manually load programs and input data using punched cards or paper tape. - Operating systems were basic control programs that managed the execution of user programs and hardware resources. 1960s - Batch Processing Systems: - Batch processing systems emerged, allowing multiple jobs to be submitted and processed sequentially without user intervention. - Operating systems like IBM's OS/360 introduced features such as job scheduling, spooling, and resource allocation.
  • 2. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Late 1960s - Time-Sharing Systems: - Time-sharing systems enabled multiple users to interact with a computer simultaneously by dividing CPU time into small slices. - Operating systems like CTSS (Compatible Time-Sharing System) and MULTICS (Multiplexed Information and Computing Service) pioneered interactive computing. 1970s - Rise of Minicomputers and Microcomputers: - The introduction of minicomputers and microcomputers brought computing power to smaller organizations and individuals. - Operating systems like UNIX, developed at Bell Labs, became popular for their portability and flexibility. 1980s - Personal Computers and GUIs: - The 1980s saw the rise of personal computers (PCs) and graphical user interfaces (GUIs) with the introduction of systems like Apple Macintosh and Microsoft Windows. - Operating systems became more user-friendly and accessible to non-technical users. 1990s - Networked Computing and the Internet: - The proliferation of networking technologies and the advent of the internet transformed computing. - Operating systems like Linux gained popularity for their stability, flexibility, and open-source nature. 2000s - Mobile and Cloud Computing: - The 2000s witnessed the emergence of mobile computing platforms like iOS and Android, as well as cloud computing services like Amazon Web Services (AWS) and Google Cloud Platform (GCP). - Operating systems adapted to support new paradigms such as virtualization, containerization, and distributed computing. 2010s - IoT and Edge Computing: - The Internet of Things (IoT) and edge computing brought computing power to everyday objects and devices. - Operating systems like Google's Android Things and Microsoft's Windows IoT catered to the needs of embedded and connected systems. 2020s - AI and Quantum Computing: - In recent years, advancements in artificial intelligence (AI) and quantum computing have pushed the boundaries of computing technology.
  • 3. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET - Operating systems continue to evolve to support emerging technologies and address new challenges in security, scalability, and performance. Examples of Operating System Here are some examples of operating systems across various platforms: Microsoft Windows: - Microsoft Windows is one of the most widely used operating systems for personal computers. It offers a graphical user interface (GUI) and supports a wide range of software applications. Versions of Windows include Windows 10, Windows 8, Windows 7, and earlier versions like Windows XP and Windows 98. macOS: - macOS is the operating system developed by Apple Inc. for their Macintosh line of computers. It is known for its user-friendly interface, stability, and integration with other Apple devices and services. macOS versions include macOS Big Sur, macOS Catalina, macOS Mojave, and earlier versions like OS X. Linux: - Linux is an open-source operating system kernel that serves as the foundation for many different Linux distributions (distros). Linux distros are widely used in servers, embedded systems, and personal computers. Examples of Linux distributions include Ubuntu, Debian, Fedora, CentOS, and Arch Linux. Unix: - Unix is a family of multitasking, multi-user operating systems originally developed in the 1970s. While commercial Unix variants like AIX, HP-UX, and Solaris exist, there are also open- source versions like FreeBSD, OpenBSD, and NetBSD. Unix has been influential in the development of other operating systems, including Linux and macOS. iOS: - iOS is the mobile operating system developed by Apple Inc. for their iPhone, iPad, and iPod Touch devices. It is known for its intuitive touch-based interface and extensive library of mobile apps. iOS undergoes regular updates, with major releases typically announced annually. Android: - Android is a mobile operating system developed by Google, based on the Linux kernel. It is used by a variety of smartphones, tablets, smartwatches, and other devices. Android is known for its customization options and integration with Google services. Different versions of Android are released periodically, with names based on desserts or sweet treats. Chrome OS:
  • 4. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET - Chrome OS is a Linux-based operating system developed by Google, designed primarily for use with Chromebook laptops. It is optimized for web browsing and cloud computing, with applications running primarily in the Chrome browser. Chrome OS receives regular updates from Google. RTOS (Real-Time Operating Systems): - Real-Time Operating Systems are designed to handle real-time processing requirements, where tasks must be completed within strict time constraints. Examples of RTOS include FreeRTOS, VxWorks, QNX, and RTLinux. These operating systems are commonly used in embedded systems, automotive systems, and industrial automation. Computer System organization Computer System Organization refers to the structure and components of a computer system and how they interact to perform various functions. It encompasses hardware, software, and firmware components and their organization to facilitate the execution of tasks efficiently. Here's an overview of the key aspects of computer system organization: Hardware Components: - Central Processing Unit (CPU): The CPU is the brain of the computer, responsible for executing instructions and performing calculations. It consists of the Arithmetic Logic Unit (ALU), Control Unit (CU), and registers. - Memory: Computer memory is used to store data and instructions temporarily or permanently. It includes Random Access Memory (RAM) for temporary storage and Read-Only Memory (ROM) for storing firmware and system instructions. - Input Devices: Input devices like keyboards, mice, touchscreens, and sensors allow users to input data and commands into the computer system. - Output Devices: Output devices such as monitors, printers, speakers, and actuators display or produce the results of computations and operations.
  • 5. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET - Storage Devices: Storage devices like hard disk drives (HDDs), solid-state drives (SSDs), optical drives, and flash drives are used to store data and programs persistently. - Bus Architecture: Buses are communication pathways that allow data and instructions to flow between different hardware components. Examples include the system bus, memory bus, and peripheral bus. Software Components: - Operating System: The operating system manages hardware resources, provides a user interface, and facilitates the execution of software applications. - Application Software: Application software includes programs and tools used to perform specific tasks or functions, such as word processors, web browsers, games, and multimedia players. - System Software: System software includes utility programs and drivers that help manage and maintain the computer system, such as antivirus software, disk utilities, and device drivers. Firmware Components: - BIOS/UEFI: Basic Input/Output System (BIOS) or Unified Extensible Firmware Interface (UEFI) is firmware that initializes hardware components during the boot process and provides low-level system services. - Bootloader: The bootloader is responsible for loading the operating system into memory and initiating the boot process. - Embedded Systems Firmware: Firmware in embedded systems provides control and functionality for specific devices or appliances, such as microcontrollers in automotive systems, industrial machinery, and consumer electronics. System Architecture: - Von Neumann Architecture: The Von Neumann architecture is a theoretical framework for computer design, featuring a single shared memory for both data and instructions. - Harvard Architecture: The Harvard architecture separates memory for data and instructions, allowing simultaneous access to both, which can improve performance in some scenarios. - Parallel Processing: Parallel processing architectures utilize multiple processing units to execute tasks concurrently, improving performance and scalability. Interconnection and Communication: - Computer systems utilize various interconnection technologies, such as wired and wireless networks, to facilitate communication between components, devices, and external systems. - Communication protocols define standards and rules for exchanging data and commands between different entities within a computer system or between multiple systems.
  • 6. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Understanding the organization of computer systems is essential for designing, building, programming, and maintaining efficient and reliable computing environments for various applications and use cases. Types of Operating Systems: Operating systems (OS) can be categorized into various types based on different criteria such as the number of users they support, the number of tasks they handle simultaneously, their design philosophy, and the platforms they run on. Here are some common types of operating systems: Single-User, Single-Tasking: - These operating systems are designed to support one user at a time and can only run one task or process at a time. Users must wait for the completion of one task before starting another. Examples include early versions of MS-DOS and some embedded systems. Single-User, Multi-Tasking: - Single-user, multi-tasking operating systems allow a single user to run multiple tasks or processes concurrently. The OS manages task switching and resource allocation to ensure efficient utilization of system resources. Examples include modern desktop operating systems like Microsoft Windows, macOS, and Linux distributions. Multi-User: - Multi-user operating systems support multiple users accessing the system simultaneously. Each user can have their own session and run multiple processes independently. These systems provide mechanisms for user authentication, access control, and resource sharing. Examples include Unix/Linux variants, such as Ubuntu Server, CentOS, and FreeBSD. Batch operating system:
  • 7. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET The users of a batch operating system do not interact with the computer directly. Each user prepares his job on an off-line device like punch cards and submits it to the computer operator. To speed up processing, jobs with similar needs are batched together and run as a group. The programmers leave their programs with the operator and the operator then sorts the programs with similar requirements into batches. The problems with Batch Systems are as follows − • Lack of interaction between the user and the job. • CPU is often idle, because the speed of the mechanical I/O devices is slower than the CPU. • Difficult to provide the desired priority. Real-Time Operating System (RTOS): - Real-Time Operating Systems are designed to meet strict timing constraints and deadlines for processing tasks. They prioritize tasks based on their urgency and ensure timely response to external events. RTOSs are commonly used in embedded systems, industrial automation, and mission-critical applications. Examples include FreeRTOS, VxWorks, and QNX. Distributed Operating System: - Distributed operating systems manage a group of independent computers and make them appear as a single coherent system. They provide features like transparency, fault tolerance, and resource sharing across multiple nodes in a network. Examples include Google's Chrome OS, which leverages cloud-based resources, and various grid computing systems. Network Operating System (NOS): - Network operating systems are specialized operating systems that facilitate communication and resource sharing between computers in a network. They provide services like file sharing, printing, and directory services to networked devices. Examples include Windows Server, Linux-based network operating systems like Samba, and Novell NetWare (though less common today). Mobile Operating Systems: - Mobile operating systems are designed for smartphones, tablets, and other mobile devices. They are optimized for touch input and support mobile-specific features like location services, sensors, and power management. Examples include Google's Android, Apple's iOS, and Microsoft's Windows Phone (now discontinued). Embedded Operating Systems: - Embedded operating systems are tailored for use in embedded systems with limited resources and specific functionality requirements. They are often used in devices like microcontrollers, IoT devices, and industrial equipment. Examples include Embedded Linux, Free RTOS, and Windows Embedded Compact.
  • 8. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Functions of Operating System: The operating system (OS) serves as a vital intermediary between computer hardware and software, providing essential functions to manage resources, facilitate communication, and enable efficient operation. Here are the primary functions of an operating system: Process Management: - The OS oversees the creation, scheduling, and termination of processes, which are instances of running programs. It allocates CPU time to processes, manages process priorities, and ensures fair access to system resources. Memory Management: - Memory management involves allocating and deallocating memory to processes, ensuring efficient utilization of system memory. The OS manages virtual memory, swapping data between RAM and disk storage, and implements memory protection to prevent unauthorized access. File System Management: - The OS provides a file system that organizes and manages files on storage devices such as hard disks and SSDs. It handles file creation, deletion, reading, and writing operations, as well as file access permissions and security. Device Management: - Device management involves controlling and coordinating access to hardware devices such as printers, disk drives, network interfaces, and input/output devices. The OS provides device drivers to interface with hardware components and ensures efficient and reliable communication between devices and software. Input/Output Management: - The OS manages input/output (I/O) operations between peripheral devices and the CPU, including data transfer, interrupt handling, and device synchronization. It buffers and caches data to improve I/O performance and coordinates I/O requests from multiple processes. User Interface: - The OS provides a user interface (UI) that allows users to interact with the computer system. This can take the form of a command-line interface (CLI), where users type commands, or a graphical user interface (GUI), with windows, icons, menus, and pointing devices for navigation. Security and Access Control: - Security is a critical function of the OS, involving user authentication, access control, data encryption, and protection against malware and unauthorized access. The OS implements security policies to safeguard system resources and user data from threats.
  • 9. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Networking: - Many operating systems include networking capabilities to enable communication and data exchange between computers and devices in a network. The OS supports protocols for network communication, such as TCP/IP, and provides services like network configuration, routing, and socket management. Error Handling and Recovery: - The OS detects and handles errors and exceptions that occur during system operation, such as hardware faults, software crashes, and invalid operations. It provides mechanisms for error reporting, logging, and recovery to maintain system stability and reliability. Resource Allocation and Scheduling: - The OS manages system resources such as CPU time, memory, and I/O devices and allocates them to processes based on priority, fairness, and efficiency. It employs scheduling algorithms to optimize resource utilization and ensure responsive system performance. These functions collectively enable the efficient operation of computer systems, providing a platform for running applications, managing data, and facilitating communication in diverse computing environments. Systems Calls A system call is a way for a user program to interface with the operating system. The program requests several services, and the OS responds by invoking a series of system calls to satisfy the request. A system call can be written in assembly language or a high-level language like C or Pascal. System calls are predefined functions that the operating system may directly invoke if a high-level language is used. What is a System Call? A system call is a method for a computer program to request a service from the kernel of the operating system on which it is running. A system call is a method of interacting with the operating system via programs. A system call is a request from computer software to an operating system's kernel. The Application Program Interface (API) connects the operating system's functions to user programs. It acts as a link between the operating system and a process, allowing user-level programs to request operating system services. The kernel system can only be accessed using system calls. System calls are required for any programs that use resources. Why do you need system calls in Operating System? There are various situations where you must require system calls in the operating system. Following of the situations are as follows:
  • 10. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET 1. It is must require when a file system wants to create or delete a file. 2. Network connections require the system calls to sending and receiving data packets. 3. If you want to read or write a file, you need to system calls. 4. If you want to access hardware devices, including a printer, scanner, you need a system call. 5. System calls are used to create and manage new processes. Types of System Calls There are commonly five types of system calls. These are as follows: 1. Process Control 2. File Management 3. Device Management 4. Information Maintenance 5. Communication Process Control Process control is the system call that is used to direct the processes. Some process control examples include creating, load, abort, end, execute, process, terminate the process, etc. File Management File management is a system call that is used to handle the files. Some file management examples include creating files, delete files, open, close, read, write, etc.
  • 11. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Device Management Device management is a system call that is used to deal with devices. Some examples of device management include read, device, write, get device attributes, release device, etc. Information Maintenance Information maintenance is a system call that is used to maintain information. There are some examples of information maintenance, including getting system data, set time or date, get time or date, set system data, etc. Communication: Communication is a system call that is used for communication. There are some examples of communication, including create, delete communication connections, send, receive messages, etc. Operating System Structure: An operating system is a design that enables user application programs to communicate with the hardware of the machine. The operating system should be built with the utmost care because it is such a complicated structure and should be simple to use and modify. Operating systems are implemented using many types of structures like, o Simple Structure o Monolithic Structure o Layered Approach Structure o Micro-Kernel Structure o Exo-Kernel Structure o Virtual Machines Simple structure It is the most straightforward operating system structure, but it lacks definition and is only appropriate for usage with tiny and restricted systems. Since the interfaces and degrees of functionality in this structure are clearly defined, programs are able to access I/O routines, which may result in unauthorized access to I/O procedures. This organizational structure is used by the MS-DOS operating system: o There are four layers that make up the MS-DOS operating system, and each has its own set of features.
  • 12. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET o These layers include ROM BIOS device drivers, MS-DOS device drivers, application programs, and system programs. o The MS-DOS operating system benefits from layering because each level can be defined independently and, when necessary, can interact with one another. o If the system is built in layers, it will be simpler to design, manage, and update. Because of this, simple structures can be used to build constrained systems that are less complex. o When a user program fails, the operating system as whole crashes. o Because MS-DOS systems have a low level of abstraction, programs and I/O procedures are visible to end users, giving them the potential for unwanted access. The following figure illustrates layering in simple structure: Advantages of Simple Structure: o Because there are only a few interfaces and levels, it is simple to develop. o Because there are fewer layers between the hardware and the applications, it offers superior performance. Disadvantages of Simple Structure: o The entire operating system breaks if just one user program malfunctions. o Since the layers are interconnected, and in communication with one another, there is no abstraction or data hiding.
  • 13. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET o The operating system's operations are accessible to layers, which can result in data tampering and system failure. Monolithic structure The monolithic operating system controls all aspects of the operating system's operation, including file management, memory management, device management, and operational operations. The core of an operating system for computers is called the kernel (OS). All other System components are provided with fundamental services by the kernel. The operating system and the hardware use it as their main interface. When an operating system is built into a single piece of hardware, such as a keyboard or mouse, the kernel can directly access all of its resources. The monolithic operating system is often referred to as the monolithic kernel. Multiple programming techniques such as batch processing and time-sharing increase a processor's usability. Working on top of the operating system and under complete command of all hardware, the monolithic kernel performs the role of a virtual computer. This is an old operating system that was used in banks to carry out simple tasks like batch processing and time-sharing, which allows numerous users at different terminals to access the Operating System. Advantages of Monolithic Structure: o Because layering is unnecessary and the kernel alone is responsible for managing all operations, it is easy to design and execute. o Due to the fact that functions like memory management, file management, process scheduling, etc., are implemented in the same address area, the monolithic kernel runs rather quickly when compared to other systems. Utilizing the same address speeds up and reduces the time required for address allocation for new processes. Disadvantages of Monolithic Structure:
  • 14. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET o The monolithic kernel's services are interconnected in address space and have an impact on one another, so if any of them malfunctions, the entire system does as well. o It is not adaptable. Therefore, launching a new service is difficult. Layered structure The OS is separated into layers or levels in this kind of arrangement. Layer 0 (the lowest layer) contains the hardware, and layer 1 (the highest layer) contains the user interface (layer N). These layers are organized hierarchically, with the top-level layers making use of the capabilities of the lower-level ones. The functionalities of each layer are separated in this method, and abstraction is also an option. Because layered structures are hierarchical, debugging is simpler, therefore all lower-level layers are debugged before the upper layer is examined. As a result, the present layer alone has to be reviewed since all the lower layers have already been examined. Advantages of Layered Structure: o Work duties are separated since each layer has its own functionality, and there is some amount of abstraction. o Debugging is simpler because the lower layers are examined first, followed by the top layers. Disadvantages of Layered Structure: o Performance is compromised in layered structures due to layering.
  • 15. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET o Construction of the layers requires careful design because upper layers only make use of lower layers' capabilities. Micro-kernel structure The operating system is created using a micro-kernel framework that strips the kernel of any unnecessary parts. Systems and user applications are used to implement these optional kernel components. So, Micro-Kernels is the name given to these systems that have been developed. Each Micro-Kernel is created separately and is kept apart from the others. As a result, the system is now more trustworthy and secure. If one Micro-Kernel malfunctions, the remaining operating system is unaffected and continues to function normally. The image below shows Micro-Kernel Operating System Structure: Advantages of Micro-Kernel Structure: o It enables portability of the operating system across platforms. o Due to the isolation of each Micro-Kernel, it is reliable and secure. o The reduced size of Micro-Kernels allows for successful testing. o The remaining operating system remains unaffected and keeps running properly even if a component or Micro-Kernel fails.
  • 16. Unit 1 : Introduction to Operating System Course In charge: Mrs. Vidya Pol MCA, Ph.D., UGC-NET Disadvantages of Micro-Kernel Structure: o The performance of the system is decreased by increased inter-module communication. o The construction of a system is complicated. Virtual machines (VMS) The hardware of our personal computer, including the CPU, disc drives, RAM, and NIC (Network Interface Card), is abstracted by a virtual machine into a variety of various execution contexts based on our needs, giving us the impression that each execution environment is a separate computer. A virtual box is an example of it. Using CPU scheduling and virtual memory techniques, an operating system allows us to execute multiple processes simultaneously while giving the impression that each one is using a separate processor and virtual memory. System calls and a file system are examples of extra functionalities that a process can have that the hardware is unable to give. Instead of offering these extra features, the virtual machine method just offers an interface that is similar to that of the most fundamental hardware. Avirtual duplicate of the computer system underneath is made available to each process. Advantages of Virtual Machines: o Due to total isolation between each virtual machine and every other virtual machine, there are no issues with security. o A virtual machine may offer an architecture for the instruction set that is different from that of actual computers. o Simple availability, accessibility, and recovery convenience. Disadvantages of Virtual Machines: o Depending on the workload, operating numerous virtual machines simultaneously on a host computer may have an adverse effect on one of them. o When it comes to hardware access, virtual computers are less effective than physical ones.