Download as pdf or txt
Download as pdf or txt
You are on page 1of 45

Subject : CA 117 Operating

System Concepts

Unit 1 : Basics of Operating System


Basic Terms
Computer :
• A computer is a device that can be instructed to carry out sequences of arithmetic
or logical operations automatically via computer programming.
Hardware :
• Hardware includes the physical, tangible components of a computer, such as the
CPU, monitor, keyboard, data storage, graphic card, speakers and
motherboard.
Software :
• Software is a set of programs, which is designed to perform a well-defined
function.
Basic Terms
Two Types of Software :
• System Software : It is a collection of programs designed to operate, control,
and extend the processing capabilities of the computer itself. System software is
interact with the hardware at a very basic level. E.g. Device Drivers, Operating
System (OS),BIOS Software, Compilers
• Application Software : It is a computer software package that performs a
specific function directly for an end user. E.g. database programs, word
processors, Web browsers.
Computer System :
• Computer system is a complete, working computer.
• Computer systems will include the computer along with any software and
peripheral devices that are necessary to make the computer function.
Basic Terms
• Key structural elements of Computer System
• Processor (CPU): It controls the processes within the computer and carries out its
data processing functions.
• Main memory: It stores data and programs within it. This memory is volatile because
contents that are inside the memory gets lost when the computer is shut down. Main
memory is also termed as primary memory.
• I/O modules: This transfer the data from computer to its peripheral external
environment and vice versa. E.g. secondary memory devices (e.g., pen drives, CDs, etc.),
communications equipment (such as LAN cable), terminals, keyboard, printers etc.
• System bus: It provides communication between processors, main memory, and I/O
modules.
Operating System
• An Operating System can be defined as an interface
between user and hardware.

• An operating system (OS) is system software that


manages computer hardware and software
resources and provides common services for
computer programs.

• It is responsible for the execution of all the


processes, Resource Allocation, CPU management,
File Management and many more.

• It is being initially loaded into the computer by a


bootstrap loader program.

• Some well-liked Operating Systems are Ubuntu,


Windows, OS X, Solaris, Android, etc.
Brief History of Operating System
• The first operating system was called GMOS created by General Motors in 1956 to
run a single IBM mainframe computer.

• the earliest operating systems varied wildly from one computer to the next, and
while they did make it easier to write programs, they did not allow programs to be
used on more than one mainframe without a complete rewrite.

• In the late 1960s, the first version of the Unix operating system was developed which
was Written in C.

• The first OS built by Microsoft was called MS-DOS.

• The name Windows was first used in 1985 when a graphical user interface was
created and paired with MS-DOS.
Components of Operating System
Operating systems are built out of two main parts:

• The kernel

• System programs

The kernel is the heart of the operating system.

• It is the first program loaded when the computer starts up.

• It manages computer resources, and it handles requests from system programs and applications.

System programs run on top of the kernel.

• These are the programs necessary to connect the kernel to user applications and peripheral
devices.

• Device drivers, file systems, networking programs, and system utilities like disk defragmenters are
all examples of system programs.
Objective Operating System

Convenience:

• It makes a computer more suitable to use.

Efficiency:

• It provides the computer system resources with efficiency and in easy to use.

Ability to develop:

• It should be built in such a way that it permits the efficient development, testing
and installation of new applications.
Functions or Features of Operating System

• Memory Management Processor


Memory Device
Management Management Management
• Processor Management

• Device Management

• File Management Functions or


File Features of
Security
• Security Management Operating
System
• System Performance Management

• Job accounting System Error


Job
Performance detecting
accounting
• Error detecting supports Management supports
Functions or Features of Operating System
Memory Management
• Computer memory is a vital hardware resource of the computer system.
• OS is responsible to manage the primary and secondary memory. All the memory devices such
as hard disk, pen drive etc. are managed by OS.
• Memory Manager is responsible for the coordination of all types of memory devices and move
data among them ,tracking of memory occupancy, memory allocation and de-allocation.

Processor Management
• A program under execution is said to be process.

• Process management is deals with multiple running processes on a single computer.

• Operating System keeps tracks of processor and status of process. Allocates and De-
allocate the processor (CPU) to a process according to requirements.

• Program that keeps track of processes is called as traffic controller.


Functions or Features of Operating System
Device Management
• An Operating System manages device communication via their respective drivers.

• It keep a track of all devices. This task is performed by I/O controller.

• Decides which process gets the device when and for how much time.

• Allocates and De-allocates the device in the efficient way.

File Management
• File Management of operating system also allows users to create, move, rename and delete
folders and files by specific name along with extension, search for a given file and list file
information.

Security
• It prevents unauthorized access to programs and data using password and similar other
techniques.
Functions or Features of Operating System
System Performance Management
• Recording delays between request for a service and response from the system.

• OS monitors the health of system’s hardware, giving information about how busy CPU is,
or how quickly hard drives retrieve data.

Job accounting
• Keeping track of time and resources used by various jobs and users.

Error detecting supports


• Errors which occur within CPU, memory hardware, I/O devices and in the user program,
the OS takes suitable action for ensuring correct and consistent computing.
Category of Operating Systems
There are basically three kinds of Operating systems.

Open Source Operating System


• Open source operating system which means that anyone can download and modify it. For
example, ( Linux based )Ubuntu

Free Operating System


• Free OS is free to download and use but cannot modifiable. For example, Google owns Chrome
OS and makes it free to use.

Commercial operating systems


• Commercial operating systems are privately owned by companies that charge money for them.
Examples include Microsoft Windows and Apple mac OS.

• These require to pay for the license to use their Operating systems.
Types of Operating System

• Batch Operating System Batch Operating Multiprogramming


System Operating System
• Multiprogramming Operating
System

• Time Sharing Operating System

• Distributed Operating System Time Sharing Distributed


Operating System Operating System
• Real Time Operating System

Real Time
Operating System
Types of Operating System
Batch Operating System
• This type of operating system do not interact with the
computer directly. There is an operator which takes
similar jobs having same requirement and group them
into batches. It is the responsibility of operator to sort the
jobs with similar needs.
• The main function of a batch processing system is to
automatically keep executing the jobs in a batch. This is
the important task of a batch processing system i.e.
performed by the 'Batch Monitor' resided in the low end
of main memory.
• Examples of Batch based Operating System: Payroll
System, Bank Statements etc.
Types of Operating System
Advantages of Batch Operating System

• No interruption from user once job started.

• Job execute one after another so it is time saving.

• Multiple users can share the batch systems.

• It is easy to manage large work repeatedly in batch systems.

Disadvantages of Batch Operating System

• No mechanism to priorities process

• CPU is often idle, because the speed of the mechanical I/O devices is slower than the CPU.

• No direct interaction between user and computer

• Batch systems are hard to debug

• The other jobs will have to wait for an unknown time if any job fails
Types of Operating System
Multiprogramming Operating Systems
• In multiprogramming, multiple programs (or jobs) of
different users can be executed simultaneously by
switching between them.
• The operating system keeps several jobs in memory at a
time.
• This set of jobs is a subset of the jobs kept in the job pool.
• The operating system picks and begins to execute one of
the jobs in the memory.

• Then some jobs may have to wait for certain tasks (such as I/O operation), to complete.
• In multi-programmed system, the CPU switches to second job and begins to execute it.
Similarly, when second job needs to wait, the processor is switched to third job, and so on.
The processor also checks the status of previous jobs, whether they are completed or not.
Types of Operating System
Multiprogramming Operating Systems
Types of Operating System
Advantages of Multiprogramming Operating System

• No interruption from user once job started.

• Takes less time to complete the same jobs than the simple batch system

• Increases the CPU's utilization

• Various computer resources are utilized effectively

• CPU always remains busy to run one of the jobs until all jobs complete their execution.

Disadvantages of Multiprogramming Operating System

• OS must be able to load multiple programs into separate areas of the main memory and
provide the required protection to avoid the chance of one process being modified by
another one.

• Big programs may not fit in memory.

• CPU scheduling is required.


Types of Operating System
Time-Sharing Operating Systems
• Each task has given some time to execute, so that all the
tasks work smoothly.
• Each user gets time of CPU as they use single system.
These systems are also known as Multitasking Systems.
• The task can be from single user or from different users
also.
• The time that each task gets to execute is called
quantum. After this time interval is over OS switches
over to next task.
• In time sharing systems the prime focus is on minimizing
the response time, while in multiprogramming the prime
focus is to maximize the CPU usage.
Types of Operating System
Advantages of Time Sharing Operating System

• Each task gets an equal opportunity

• CPU idle time can be reduced

Disadvantages of Time Sharing Operating System

• One must have to take care of security and integrity of user programs and data

• Data communication problem

Examples of Time-Sharing OS : Unix


Multiprogramming v\s Multi-tasking
Multiprogramming v\s Multi-tasking

Sr.no Multiprogramming Multi-tasking

1. Both of these concepts are for single CPU. Both of these concepts are for single CPU.

2. Concept of Context Switching is used. Concept of Context Switching and Time Sharing is used.

The processor is typically used in time sharing mode.


In multiprogrammed system, the operating system simply switches to, and executes, Switching happens when either allowed time expires or
3.
another job when current job needs to wait. where there other reason for current process needs to wait
(example process needs to do IO).

In multi-tasking also increases CPU utilization, it also


4. Multi-programming increases CPU utilization by organising jobs .
increases responsiveness.

The idea is to further extend the CPU Utilization concept by


5. The idea is to reduce the CPU idle time for as long as possible.
increasing responsiveness Time Sharing.
Types of Operating System
Distributed Operating System

• The Distributed OS involves a collection of autonomous


computer systems, capable of communicating and cooperating
with each other through a LAN / WAN.

• Distributed systems use multiple central processors to serve


multiple real time application and multiple users.

• The OS distributes computation logics among several


physical processors.

• The OS manages the communications between the


processors.

• They communicate with each other through various


communication lines.
Types of Operating System
Advantages of Distributed Operating System

• It delivers better performance than a single system.

• It is easily scalable.

• It allows resource sharing

Disadvantages of Distributed Operating System

• Sharing may cause security issues.

• Message loss occurs in the network.

• Resource overloading is an issue.

Examples of Distributed Operating System are- WWW, LAN, Google Server.


Types of Operating System
Real Time Operating System

• It is defined as an operating system known to give maximum time for each of the critical
operations that it performs.

• A real-time operating system (RTOS) is any operating system (OS) intended to serve real-time
applications that process data as it comes in, typically without delays.

• Example : Smart Home, Automatic Car, microwave oven, Washing machine, digital cameras
Types of Operating System
Advantages of Real Time Operating System
• Maximum Consumption

• Task Shifting

• Focus on Application

• Real time operating system in embedded system

• Less Error

Disadvantages of Real Time Operating System

• Limited Tasks

• Use heavy system resources

• Low multi-tasking
User Operating System Interface
Two types of Interface:
• Command Line Interface (CLI)

• Graphical User Interface

Command Line Interface (CLI)


• Command line interfaces (CLI) are the oldest of the interfaces.

• Users interact with Operating System by means of commands.

• It involves the computer responding to commands typed by the operator.

• This type of interface has the drawback that it requires the operator to remember a range of
different commands and is not ideal for novice users.

• Examples: MS-DOS, LINUX, etc.


User Operating System Interface
Command Line Interface: MS-DOS Interface
User Operating System Interface
Command Line Interface: Linux Interface
User Operating System Interface
Graphical user Interfaces (GUI)

• Graphical user interfaces (GUI) are sometimes


also referred to as WIMP because they
use Windows, Icons, Menus and Pointers.

• A graphical user interface (GUI) uses graphics,


along with a keyboard and a mouse, to provide
an easy-to-use interface with operating system

• It allows users to interact with the computer in


a user friendly way.

• Examples: Windows 7, 8, 10, 11 & Mac OS 10.12


Generation of Operating System
Generation of Operating System
The First Generation (1946's to early 1959's)
• This is the earliest generation of computers, known as the first generation of computers.
• The first generation duration is considered from 1946 to 1959.
• During the first generation, computers were developed using vacuum tubes as the core
technology.
• First-generation computers used the machine language, the lowest-level programming
language so that it could be easily processed and understood by computers.
Generation of Operating System
The First Generation (1946's to early 1959's)
Generation of Operating System
The Second Generation (1959-1965)
• The second generation of computers began with the widespread use of transistors.
• In this generation, vacuum tubes were no longer the main piece of technology.
• They were replaced by transistors. The second-generation period is considered from 1959
to 1965.
• Magnetic cores (as primary memory devices) and magnetic tapes (as secondary storage
devices) were also used for memory requirements in computers.
• During the second generation, computers used assembly languages instead of binary
machine languages. Besides, early versions of high-level languages, such as COBOL and
FORTRAN, were also introduced in this generation.
Generation of Operating System
The Second Generation (1959-1965)
Generation of Operating System
The Third Generation (1965-1971)
• The third generation of computers was characterized by the use of integrated circuits (ICs) in
computers rather than transistors. The third generation period is considered from 1965 to 1971. In
this generation, integrated circuits were used as the main piece of technology. The integrated circuits
were very small in size and helped to make the computer smaller than its predecessor.
• Besides, advanced input-output devices, such as a mouse, keyboard, and monitor were introduced in
this generation. Before these devices, computers used punch cards and printouts. In terms of
languages, third-generation computers used higher-level languages such as COBOL, BASIC, ALGOL-
68, PASCAL PL / 1, FORTRAN-II to IV, etc.
• Computers developed under the IBM-360 family series are the best examples of third-generation
computers. Other examples include PDP-8, PDP-11, TDC-316, Honeywell-6000 series, ICL 2900 etc.
Besides, integrated circuits are still in use in today's generation of computers.
Generation of Operating System
The Third Generation (1965-1971)
Generation of Operating System
The Fourth Generation (1971-1980)
• The fourth-generation duration is considered from 1971 to 1980. During this generation,
computers were developed using the microprocessor as the main component of the
technology. Microprocessors were also based on LSI (Large Scale Integration) and VLSI
(Very Large Scale Integration) technologies. They were developed by assembling several
integrated circuits on a single silicon chip.
• Microprocessors not only helped make computers smaller but also made them so powerful
and reliable. Due to their compact size, computers became available for personal use
during the fourth generation. Besides, high-level programming languages such as C, C ++,
DBASE, etc. were used in computers of this generation. Time-sharing, network-based,
distributed operating systems were also used in computers of this generation.
Generation of Operating System
The Fourth Generation (1971-1980)
Generation of Operating System
The Fifth Generation (1980 – present days)
• Fifth-generation computers are based on ULSI (Ultra Large Scale Integration) technology,
AI (artificial intelligence) software, and parallel processing hardware. ULSI has
revolutionized the development of microprocessors. Now, about ten million electronic
devices can be assembled on a single microprocessor chip. On the other hand, AI is helping
computers to react efficiently against natural languages.
• The fifth-generation period is believed to have started in 1980 and is continuing. This
means that the current generation is the fifth generation of computers. Fifth-generation
computers are still using integrated circuits to meet various needs. However, the main
technology is AI where there is still room for improvement.
• In the fifth generation, computers are particularly based on logic programming and
massively parallel computing. All high-level languages are supported in this generation.
Generation of Operating System
The Fifth Generation (1980 – present days)
Generation of Operating System
Generation of Operating System
Generation of Operating System

You might also like