0% found this document useful (0 votes)
39 views5 pages

Unit 1

Uploaded by

Niroj Thapa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views5 pages

Unit 1

Uploaded by

Niroj Thapa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Unit-1: Operating Systems

Introduction: Definition, Functions


An Operating System (OS) is a system software which act as an interface
between a computer user and computer hardware. An operating system
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) 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.

Function of Operating Systems


1. Memory Management
2. Processor Management
3. Device Management
4. File Management
5. Security
6. Control over system performance
7. Job accounting
8. Error detecting aids
9. Coordination between other software and users

Memory Management
Memory management refers to management of Primary Memory or Main
Memory. Main memory is a large
array of words or bytes where each word or byte has its own address.
An Operating System does the following activities for memory management −
1. Keeps track of primary memory, i.e., what part of it is in use by whom,
what part is not in use.
2. In multiprogramming, the OS decides which process will get memory when
and how much.
3. Allocates the memory when a process requests it to do so.
4. De-allocates the memory when a process no longer needs it or has been
terminated.
Processor Management
In a multiprogramming environment, the OS decides which process gets
the processor when and for how much time. This function is called
process scheduling. An Operating System does the following activities for
processor management −
1. Keeps track of processor and status of process. The program
responsible for this task is known as traffic controller.
2. Allocates the processor (CPU) to a process.
3. De-allocates the processor when a process is no longer required.

Device Management
An Operating System manages device communication via their
respective drivers. It does the following activities for device
management −
1. Keep track of all devices. Program responsible for this task is known as the
I/O controller.
2. Decides which process gets the device when and for how much time.
3. Allocates the device in an efficient way.
4. De-allocates devices.

File Management
A file system is normally organized into directories for easy navigation
and usage. These directories may contain files and other directions.
An Operating System does the following activities for file management −
1. Keep track of information, location, uses, status etc. The collective
facilities are often known as file systems.
2. Decides who gets the resources.
3. Allocates the resources.
4. De-allocates the resources.

Security
The OS helps to protect computer from unauthorized access and malicious
software. It manages user accounts and permissions to control what users can do
on the system.

Operating System Evolution


Operating system is divided into four generations, which are explained as follows −
First Generation (1945-1955)
It is the beginning of the development of electronic computing systems which are
substitutes for mechanical computing systems. Because of the drawbacks in
mechanical computing systems like, the speed of humans to calculate is limited and
humans can easily make mistakes. In this generation there is no operating system,
so the computer system is given instructions which must be done directly.
Example − Type of operating system and devices used is Plug Boards.
Second Generation (1955-1965)
The Batch processing system was introduced in the second generation, where a
job or a task that can be done in a series, and then executed sequentially. In this
generation, the computer system is not equipped with an operating system, but
several operating system functions exist like FMS and IBSYS.
Example − Type of operating system and devices used is Batch systems.
Third Generation (1965-1980)
The development of the operating system was developed to serve multiple users at
once in the third generation. Here the interactive users can communicate through
an online terminal to a computer, so the operating system becomes multi-user and
multiprogramming.
Example − Type of operating system and devices used is Multiprogramming.
Fourth Generation (1980-Now)
In this generation the operating system is used for computer networks where users
are aware of the existence of computers that are connected to one another. At this
generation users are also comforted with a Graphical User Interface (GUI).
Example − Type of operating system and devices used is personal computers

Components of an operating system


Process Management - This component is responsible for creating and
destroying processes, scheduling processes for execution on the CPU, and
handling process synchronization and communication.
Memory Management - This component is responsible for allocating and
freeing memory space for programs and data. It also handles virtual
memory, which allows the computer to run programs that are larger than the
amount of physical memory available.
File Management - This component is responsible for creating, deleting,
and modifying files and directories. It also keeps track of where files are
stored on disk and provides access control to files.
I/O Device Management - This component is responsible for controlling
input and output (I/O) devices, such as printers, scanners, and disk drives. It
provides a uniform interface for programs to access I/O devices, regardless
of the specific type of device.
Security Management - This component is responsible for protecting the
computer system from unauthorized access, use, disclosure, disruption,
modification, or destruction. It includes features such as user authentication,
authorization, and encryption.

Network Management - This component is responsible for managing


network connections and resources. It includes features such as routing,
network access control, and network monitoring.
User Interface - This component provides a way for users to interact with
the computer system. It can be a graphical user interface (GUI) or a
command-line interface (CLI).

System Call
A system call is a programmatic way in which a computer program requests a
service from the kernel of the operating system it is executed on. A system call is a
way for programs to interact with the operating system. A computer program
makes a system call when it makes a request to the operating system’s kernel.
System call provides the services of the operating system to the user programs via
Application Program Interface (API). It provides an interface between a process and
an operating system to allow user-level processes to request services of the
operating system. System calls are the only entry points into the kernel system. All
programs needing resources must use system calls.

Services Provided by System Calls:


1. Process creation and management
2. Main memory management
3. File Access, Directory and File system management
4. Device handling(I/O)
5. Protection
6. Networking

Shell
The shell is a program that provides the user with an interface to use the operating
system’s functions through some commands. A shell script is a program that is used
to perform specific tasks. Shell scripts are mostly used to avoid repetitive work. You
can write a script to automate a set of instructions to be executed one after the
other, instead of typing in the commands one after the other n number of times.
Some Shell Commands:
ls : For listing file
pwd : for view present work directory
cd /.. : change directory backward
cd ./root : go to root directory
touch filename.extension : create new file
rm filename : delete file
mkdir foldername : create folder
cp filename directory_for_pasting : copy the file
adduser username : for adding user
passwd username : change the password
Note: This are Linux based commands

Example of operating system:


Windows
Windows OS, developed by Microsoft, is the most popular operating system for
personal computers. It features a user-friendly graphical interface and allows users
to run programs, manage files, and connect to the internet. Some popular version of
windows OS are winodws XP, windows 7, windows 10, windows 11, windows server
2003 etc.
Features
 Graphical User Interface (GUI)
 Multitasking
 Security Features
 Software Compatibility

UNIX
Unix is an Operating System that is truly the base of all Operating Systems like
Ubuntu, Solaris, POSIX, etc. It was developed in the 1970s by Ken Thompson,
Dennis Ritchie, and others in the AT&T Laboratories. UNIX is a family of
multitasking, multiuser computer operating systems developed in the mid-1960s at
Bell Labs. It was originally developed for mini computers and has since been ported
to various hardware platforms. UNIX has a reputation for stability, security, and
scalability, making it a popular choice for enterprise-level computing.
Features
 Multiuser support
 Multitasking
 Shell scripting
 Security
 Portability
 Communication

Linux
Linux is an open-source Unix-like operating system kernel that serves as the
foundation for numerous distributions catering to diverse computing needs. Known
for its stability, security, and reliability, Linux is a preferred choice for servers,
embedded systems, and desktops. Some popular distribution of Linux are: Kali
Linux, Ubuntu, Fedora, Mint etc.
Features
 Open-source
 Security
 Stability
 Multitasking and Multi-user
 Hardware Compatibility
 Command-Line Interface (CLI)
 Graphical User Interface (GUI)
 Customizability

Handheld OS
A handheld operating system (OS) is software that manages the resources and
programs on a small, portable device like a smartphone, tablet, personal digital
assistant (PDA), or gaming console. Some of the popular handheld OS are:- Android,
iOS, Palm OS etc.

You might also like