SlideShare a Scribd company logo
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56
OPERATING SYSTEM
Mr. Anand H. D.
1
Operating System: Introduction
Department of Electronics & Communication Engineering
Dr. Ambedkar Institute of Technology
Bengaluru-56
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 2
Operating System: Introduction
Goals of an Operating System : Efficient Use User Convenience Noninterference
Operation of an Operating System: Program management Resource management Security and protection
Topics to be covered:
Goals of an Operating System
Operation of an Operating System
https://youtu.be/pTdSs8kQqSA
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 3
Operating System: Introduction
Goals of an Operating System : User Convenience Noninterference
Operation of an Operating System: Program management Resource management Security and protection
Goals of Operating System:
Efficient Use
 The fundamental goals of an operating system are:
• Efficient use
• User convenience
• Noninterference
 The goals of efficient use and user convenience sometimes conflict.
For example, emphasis on quick service would lead to inefficient use of resources,
the designer has to make a trade-off to obtain the combination of efficient use and user
convenience that best suits the environment-effective utilization of the computer system.
Interference with a user’s activities:-
Operating Systems:
illegal use or modification of a user’s programs or data,
denial of resources and services to a user.
: Ensure efficient use of a computer’s resources.
: Provide convenient methods of using a computer system.
: Prevent interference in the activities of its users.
fast service required by command and control applications,
make efficient use of computer resources to provide low-cost
computing
provide different combinations of the two extremes
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 4
Operating System: Introduction
Goals of an Operating System : User Convenience Noninterference
Operation of an Operating System: Program management Resource management Security and protection
Goals of Operating System:
Efficient Use
An operating system must ensure efficient use of the fundamental computer system
resources of memory, CPU, and I/O devices such as disks and printers.
Poor efficiency can result if a program does not use a resource allocated to it, e.g., if
memory or I/O devices allocated to a program remain idle - leads to snowballing effect
In addition, the OS itself consumes some CPU and memory resources during its own
operation, and this consumption of resources constitutes an overhead that also reduces the
resources available to user programs.
Efficient use of resources can be obtained by monitoring use of resources and performing
corrective actions when necessary. However, monitoring use of resources increases the
overhead, which lowers efficiency of use.
In practice, operating systems that emphasize efficient use limit their overhead by either
restricting their focus to efficiency of a few important resources, like the CPU and the
memory, or by not monitoring the use of resources at all, and instead handling user
programs and resources in a manner that guarantees high efficiency
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 5
Operating System: Introduction
Goals of an Operating System : Noninterference
Operation of an Operating System: Program management Resource management Security and protection
Goals of Operating System:
Efficient Use User Convenience
User convenience has many facets, as shown in following Table:
Fulfillment of necessity
Good Service
User friendly interfaces
New programming model
Web-oriented features
Evolution
Ability to execute programs, use the file system
Speedy response to computational requests
Easy-to-use commands, graphical user interface (GUI)
Concurrent programming
Means to set up Web-enabled servers
Add new features, use new computer technologies
Facet Examples
Table: Facets of User Convenience
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 6
Operating System: Introduction
Goals of an Operating System : Noninterference
Operation of an Operating System: Program management Resource management Security and protection
Goals of Operating System:
Efficient Use User Convenience
In the early days of computing, user convenience was synonymous with bare necessity
Other facets of user convenience evolved with the use of computers in new fields. Early
operating systems had command-line interfaces, which required a user to type in a
command and specify values of its parameters- scientists or computer professionals
Simpler interfaces were needed to facilitate use of computers by new classes of users. Hence
graphical user interfaces (GUIs) were evolved. These interfaces used icons on
a screen to represent programs and files and interpreted mouse clicks on the icons and
associated menus as commands concerning them.
New models were proposed for developing cost-effective solutions to new classes of
problems. Some of these models could be supported by the compiler technology and required
little support from the OS; modular and object-oriented program design are two such models.
Other models like the concurrent programming model required specific support features in
the OS.
Advent of the Internet motivated setting up of Web-enabled servers, which required
networking support and an ability to scale up or scale down the performance of a server in
response to the amount of load directed at it.
Users and their organizations invest considerable time and effort in setting up their
applications through an operating system. This investment must be protected when new
application areas and new computer technologies develop,
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 7
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Program management Resource management Security and protection
Goals of Operating System:
Efficient Use User Convenience Noninterference
A computer user can face different kinds of interference in his computational activities.
Execution of his program can be disrupted by actions of other persons, or the OS services.
The OS prevents such interference by allocating resources for exclusive use of
programs and OS services, and preventing illegal accesses to resources.
Another form of interference is when a computer user may collaborate with some other users
in the development or use of a computer application, so he may wish to share some of his files
with them.
Attempts by any other person to access his files are illegal and constitute interference.
To prevent this form of interference, an OS has to know which files of a user can
be accessed by which persons. It is achieved through the act of authorization,
whereby a user specifies which collaborators can access what files. The OS uses this
information to prevent illegal accesses to files.
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 8
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Resource management Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management
The primary concerns of an OS during its operation are execution of programs,
use of resources, and prevention of interference with programs and resources.
Accordingly, its three principal functions are:
• Program management: The OS initiates programs, arranges their execution on the CPU,
and terminates them when they complete their execution.
Since many programs exist in the system at any time, the OS performs a function called
scheduling to select a program for execution
• Resource management: The OS allocates resources like memory and I/O devices when a
program needs them.
When the program terminates, it de-allocates these resources and allocates them to other
programs that need them.
• Security and protection: The OS implements noninterference in users’ activities through
joint actions of the security and protection functions.
As an example, consider how the OS prevents illegal accesses to a file.
The security function prevents nonusers from utilizing the services and resources in the
computer system, hence none of them can access the file.
The protection function prevents users other than the file owner or users authorized by
him, from accessing the file.
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 9
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Resource management Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management
Table describes the tasks commonly performed by an operating system.
Construct a list of resource
Maintain information for security
Verify identity of a user
Initiate execution of programs
Maintain authorization information
Perform resource allocation
During booting
While registering new users
At user commands
When a user specifies which collaborators can access what
programs or data
When requested by users or programs
Task When performed
Table: Common Tasks Performed by Operating Systems
At login time
Maintain current status of resources
Maintain current status of programs
and perform scheduling
During resource allocation/de-allocation
Continually during OS operation
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 10
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Resource management Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management
When a computer system is switched on, it automatically loads a program stored on a
reserved part of an I/O device, typically a disk, and starts executing the program. This
program follows a software technique known as bootstrapping to load the software called
the boot procedure in memory
The boot procedure makes a list of all hardware resources in the system, and hands over
control of the computer system to the OS.
A system administrator specifies which persons are registered as users of the system. The
OS permits only these persons to log in to use its resources and services.
A user authorizes his collaborators to access some programs and data. The OS notes this
information and uses it to implement protection.
The OS also performs a set of functions to implement its notion of effective utilization.
These functions include scheduling of programs and keeping track of resource status
and resource usage information.
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 11
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Resource management Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management
Modern CPUs have the capability to execute program instructions at a very high rate, so it is
possible for an OS to interleave execution of several programs on a CPU and yet provide good
user service.
The key function in achieving interleaved execution of programs is scheduling, which decides
which program should be given the CPU at any time.
Figure shows an abstract view of scheduling.
Figure: A schematic of scheduling.
Scheduler CPU
Completed
Program
New
Program
…..
Programs in ready Queue
waiting for CPU
Scheduled
Program
P1P2Pn
Preempted Program
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 12
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Resource management Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management
The scheduler, which is an OS routine that performs scheduling, maintains a list of programs waiting
to execute on the CPU, and selects one program for execution.
In operating systems that provide fair service to all programs, the scheduler also specifies how long
the program can be allowed to use the CPU.
The OS takes away the CPU from a program after it has executed for the specified period of time, and
gives it to another program. This action is called preemption. A program that loses the CPU because of
preemption is put back into the list of programs waiting to execute on the CPU.
The scheduling policy employed by an OS can influence both efficient use of the CPU and user service.
If a program is preempted after it has executed for only a short period of time, the overhead of
scheduling actions would be high because of frequent preemption. However, each program would
suffer only a short delay before it gets an opportunity to use the CPU, which would result in good user
service.
If preemption is performed after a program has executed for a longer period of time, scheduling
overhead would be lesser but programs would suffer longer delays, so user service would be poorer
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 13
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management
Resource allocations and de-allocations can be performed by using a resource table. Each entry in the table
contains the name and address of a resource unit and its present status, indicating whether it is free or allocated
to some program.
Table below is one such table for management of I/O devices. It is constructed by the boot procedure by sensing
the presence of I/O devices in the system, and updated by the operating system to reflect the allocations and
deallocations made by it.
printer1
printer2
printer3
disk1
disk2
cdw1
Resource
Name
AddressClass Allocation
status
Printer
Printer
Printer
Disk
Disk
CD writer
101
102
103
201
202
301
Allocated to P1
Free
Free
Allocated to P1
Allocated to P2
Free
Resource Table for I/O Devices
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 14
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management
Two resource allocation strategies are popular.
In the resource partitioning approach, the OS decides a priori what resources should be allocated to
each user program,
for example, it may decide that a program should be allocated 1 MB of memory, 1000 disk
blocks, and a monitor. It divides the resources in the system into many resource partitions, or
simply partitions; each partition includes 1 MB of memory, 1000 disk blocks, and a monitor.
It allocates one resource partition to each user program when its execution is to be initiated. To
facilitate resource allocation, the resource table contains entries for resource partitions rather than
for individual resources as in Table shown.
Resource partitioning is simple to implement, hence it incurs less overhead; however, it lacks
flexibility. Resources are wasted if a resource partition contains more resources than what a
program needs.
Also, the OS cannot execute a program if its requirements exceed the resources available in a
resource partition. This is true even if free resources exist in another partition.
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 15
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management
In the pool-based approach to resource management, the OS allocates resources from a common pool of
resources. It consults the resource table when a program makes a request for a resource, and allocates the
resource if it is free. It incurs the overhead of allocating and de-allocating resources when requested.
However, it avoids both problems faced by the resource partitioning approach— an allocated resource is not
wasted, and a resource requirement can be met if a free resource exists.
A virtual resource is a fictitious resource—it is an illusion supported by an OS through use of a real resource.
An OS may use the same real resource to support several virtual resources. This way, it can give the impression
of having a larger number of resources than it actually does.
Each use of a virtual resource results in the use of an appropriate real resource. In that sense, a virtual resource
is an abstract view of a resource taken by a program. Use of virtual resources started with the use of virtual
devices.
To prevent mutual interference between programs, it was a good idea to allocate a device exclusively for use
by one program. However, a computer system did not possess many real devices, so virtual devices were used.
An OS would create a virtual device when a user needed an I/O device;
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 16
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Security and protection
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management
 In Table it could be two virtual disks based on the real disk, which are allocated to programs P1
and P2, respectively.
Virtual devices are used in contemporary operating systems as well. A print server is a common
example of a virtual device.
When a program wishes to print a file, the print server simply copies the file into the print queue.
The program requesting the print goes on with its operation as if the printing had been performed.
The print server continuously examines the print queue and prints the files it finds in the queue.
Most operating systems provide a virtual resource called virtual memory, which is an illusion of a
memory that is larger in size than the real memory of a computer. Its use enables a programmer to
execute a program whose size may exceed the size of real memory.
Some operating systems create virtual machines (VMs) so that each machine can be allocated
to a user. The advantage of this approach is twofold.
Allocation of a virtual machine to each user eliminates mutual interference between users. It
also allows each user to select an OS of his choice to operate his virtual machine. In effect, this
arrangement permits users to use different operating systems on the same computer system
simultaneously
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 17
Operating System: Introduction
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management Security and protection
An OS must ensure that no person can illegally use programs and resources in the system, or interfere with
them in any manner.
The security function counters threats of illegal use or interference that are posed by persons or programs
outside the control of an operating system, whereas the protection function counters similar threats posed by its
users.
Figure illustrates how security and protection threats arise in an OS.
Overview of security and
protection threats.
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 18
Operating System: Introduction
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management Security and protection
In a classical stand-alone environment, a computer system functions in complete isolation. In such
a system, the security and protection issues can be handled easily..
The identity of a person wishing to use a computer system is verified through a password when
the person logs in. This action, which is called authentication, ensures that no person other than a
registered user can use a computer system. Consequently, security threats do not arise in the
system if the authentication procedure is foolproof.
The OS prevents disruption of program executions and OS services with the help of hardware
features such as memory protection.
It overcomes interference with files by allowing a user to access a file only if he owns it or has
been authorized by the file’s owner to access it
When a computer system is connected to the Internet, and a user downloads a program from
the Internet, there is a danger that the downloaded program may interfere with other programs
or resources in the system.
This is a security threat because the interference is caused by some person outside the system,
called an intruder, who either wrote the downloaded program, or modified it, so that it would
interfere with other programs.
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 19
Operating System: Introduction
Goals of Operating System:
operations of Operating System:
Efficient Use User Convenience Noninterference
Program management Resource management Security and protection
Another class of security threats is posed by programs called worms, which replicate by
themselves through holes in security setups of operating systems. Worms can replicate at
unimaginably high rates and cause widespread havoc. The Code Red worm of 2001 spread to a
quarter of a million computer systems in 9 hours.
Such security threats are posed either through a Trojan horse, which is a program that has a
known legitimate function and a well-disguised malicious function, or a virus, which is a piece of
code with a malicious function that attaches itself to other programs in the system and spreads to
other systems when such programs are copied.
Operating systems address security threats through a variety of means—
Users are expected to contribute to security by using passwords that are impossible to guess
and by exercising caution while downloading programs from the Internet
by using Internet firewalls to filter out unwanted Internet traffic through a computer system.
by using sophisticated authentication techniques,
by plugging security holes when they are discovered,
by ensuring that programs cannot be modified while they are copied over the Internet,
Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 20
Operating System: Introduction
Goals of an Operating System :
Operation of an Operating System: Program management Resource management Security and protection
Goals of Operating System:
operations of Operating System:
Reference
1. D.M.Dhamdhare, “Operating Systems”,
Second Edition, TMH, 2008
NoninterferenceEfficient Use User Convenience
21
Prof. Anand H. D.
M. Tech. (PhD.)
Assistant Professor,
Department of Electronics & Communication Engineering
Dr. Ambedkar Institute of Technology, Bengaluru-56
Email: anandhdece@dr-ait.org
Phone: 9844518832

More Related Content

PPTX
Football injuries
PDF
Weekly safety report abhishek vij
PDF
PPTX
OPERATING SYSTEM UNIT-1 [Autosaved].pptx
PPT
Operating systems1[1]
PDF
Lecture1423726024
PPT
unit-1 hi business of good honest awesome .ppt
PPTX
Operating system
Football injuries
Weekly safety report abhishek vij
OPERATING SYSTEM UNIT-1 [Autosaved].pptx
Operating systems1[1]
Lecture1423726024
unit-1 hi business of good honest awesome .ppt
Operating system

Similar to OS introduction (20)

PDF
Operating System Lecture Notes
PPTX
Operating system education. technology.
PPTX
OS-lec0(1DWQEDQWEFWQEFWQEFWQFWQFWQEFWFs).pptx
PPT
Operating System
PPT
Introduction to Operating Systems - Mary Margarat
PPT
Operating systems
PDF
operating systems classification university
PPTX
OSmodule1_ppt.pptx
PPTX
Basic topic on os
PDF
Operating system Concepts
PPTX
Unit 1-Operating Systems Overview .pptx
PDF
Csc 2313 (lecture 2)
PDF
Csc 2313 (lecture 2)
PPTX
Operating Systems R20 Unit 1.pptx
PDF
Os unit 1
PPT
Introduction to OS
PPTX
An operating system (OS) is a program that acts as an interface between the s...
PPTX
The Fundamentals of Operating Systems .pptx
PDF
CS311-Lec1.pdfCS311-Lec1.pdfCS311-Lec1.pdf
DOCX
Operating system notes
Operating System Lecture Notes
Operating system education. technology.
OS-lec0(1DWQEDQWEFWQEFWQEFWQFWQFWQEFWFs).pptx
Operating System
Introduction to Operating Systems - Mary Margarat
Operating systems
operating systems classification university
OSmodule1_ppt.pptx
Basic topic on os
Operating system Concepts
Unit 1-Operating Systems Overview .pptx
Csc 2313 (lecture 2)
Csc 2313 (lecture 2)
Operating Systems R20 Unit 1.pptx
Os unit 1
Introduction to OS
An operating system (OS) is a program that acts as an interface between the s...
The Fundamentals of Operating Systems .pptx
CS311-Lec1.pdfCS311-Lec1.pdfCS311-Lec1.pdf
Operating system notes
Ad

More from anand hd (20)

PDF
RMV sensors
PDF
RMV robot programming
PDF
Robot applications
PDF
RMV Mechanics
PDF
Robot Machine Vision
PDF
RMV Artificial Intelligence
PDF
OS file systems
PDF
OS virtual memory
PDF
OS scheduling
PDF
OS Memory Management
PPTX
Modules and ports in Verilog HDL
PDF
Characteristics and Quality Attributes of Embedded System
PDF
Basic concepts in Verilog HDL
PDF
Overview of digital design with Verilog HDL
PDF
Typical Embedded System
PDF
OS-Process Management
PDF
Robotics Endeffectors
PDF
Structure of Operating System
PDF
Fundamentals of Robotics and Machine Vision System
PDF
Os overview
RMV sensors
RMV robot programming
Robot applications
RMV Mechanics
Robot Machine Vision
RMV Artificial Intelligence
OS file systems
OS virtual memory
OS scheduling
OS Memory Management
Modules and ports in Verilog HDL
Characteristics and Quality Attributes of Embedded System
Basic concepts in Verilog HDL
Overview of digital design with Verilog HDL
Typical Embedded System
OS-Process Management
Robotics Endeffectors
Structure of Operating System
Fundamentals of Robotics and Machine Vision System
Os overview
Ad

Recently uploaded (20)

PPT
INTRODUCTION -Data Warehousing and Mining-M.Tech- VTU.ppt
PPTX
introduction to high performance computing
PDF
22EC502-MICROCONTROLLER AND INTERFACING-8051 MICROCONTROLLER.pdf
PPT
Total quality management ppt for engineering students
PDF
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
PPTX
Fundamentals of safety and accident prevention -final (1).pptx
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PDF
Abrasive, erosive and cavitation wear.pdf
PPTX
Module 8- Technological and Communication Skills.pptx
PPT
Occupational Health and Safety Management System
PDF
Visual Aids for Exploratory Data Analysis.pdf
PDF
A SYSTEMATIC REVIEW OF APPLICATIONS IN FRAUD DETECTION
PDF
EXPLORING LEARNING ENGAGEMENT FACTORS INFLUENCING BEHAVIORAL, COGNITIVE, AND ...
PPTX
"Array and Linked List in Data Structures with Types, Operations, Implementat...
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PDF
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
PDF
Categorization of Factors Affecting Classification Algorithms Selection
PPTX
Software Engineering and software moduleing
PDF
III.4.1.2_The_Space_Environment.p pdffdf
INTRODUCTION -Data Warehousing and Mining-M.Tech- VTU.ppt
introduction to high performance computing
22EC502-MICROCONTROLLER AND INTERFACING-8051 MICROCONTROLLER.pdf
Total quality management ppt for engineering students
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
Fundamentals of safety and accident prevention -final (1).pptx
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
Abrasive, erosive and cavitation wear.pdf
Module 8- Technological and Communication Skills.pptx
Occupational Health and Safety Management System
Visual Aids for Exploratory Data Analysis.pdf
A SYSTEMATIC REVIEW OF APPLICATIONS IN FRAUD DETECTION
EXPLORING LEARNING ENGAGEMENT FACTORS INFLUENCING BEHAVIORAL, COGNITIVE, AND ...
"Array and Linked List in Data Structures with Types, Operations, Implementat...
Safety Seminar civil to be ensured for safe working.
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
Categorization of Factors Affecting Classification Algorithms Selection
Software Engineering and software moduleing
III.4.1.2_The_Space_Environment.p pdffdf

OS introduction

  • 1. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 OPERATING SYSTEM Mr. Anand H. D. 1 Operating System: Introduction Department of Electronics & Communication Engineering Dr. Ambedkar Institute of Technology Bengaluru-56
  • 2. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 2 Operating System: Introduction Goals of an Operating System : Efficient Use User Convenience Noninterference Operation of an Operating System: Program management Resource management Security and protection Topics to be covered: Goals of an Operating System Operation of an Operating System https://youtu.be/pTdSs8kQqSA
  • 3. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 3 Operating System: Introduction Goals of an Operating System : User Convenience Noninterference Operation of an Operating System: Program management Resource management Security and protection Goals of Operating System: Efficient Use  The fundamental goals of an operating system are: • Efficient use • User convenience • Noninterference  The goals of efficient use and user convenience sometimes conflict. For example, emphasis on quick service would lead to inefficient use of resources, the designer has to make a trade-off to obtain the combination of efficient use and user convenience that best suits the environment-effective utilization of the computer system. Interference with a user’s activities:- Operating Systems: illegal use or modification of a user’s programs or data, denial of resources and services to a user. : Ensure efficient use of a computer’s resources. : Provide convenient methods of using a computer system. : Prevent interference in the activities of its users. fast service required by command and control applications, make efficient use of computer resources to provide low-cost computing provide different combinations of the two extremes
  • 4. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 4 Operating System: Introduction Goals of an Operating System : User Convenience Noninterference Operation of an Operating System: Program management Resource management Security and protection Goals of Operating System: Efficient Use An operating system must ensure efficient use of the fundamental computer system resources of memory, CPU, and I/O devices such as disks and printers. Poor efficiency can result if a program does not use a resource allocated to it, e.g., if memory or I/O devices allocated to a program remain idle - leads to snowballing effect In addition, the OS itself consumes some CPU and memory resources during its own operation, and this consumption of resources constitutes an overhead that also reduces the resources available to user programs. Efficient use of resources can be obtained by monitoring use of resources and performing corrective actions when necessary. However, monitoring use of resources increases the overhead, which lowers efficiency of use. In practice, operating systems that emphasize efficient use limit their overhead by either restricting their focus to efficiency of a few important resources, like the CPU and the memory, or by not monitoring the use of resources at all, and instead handling user programs and resources in a manner that guarantees high efficiency
  • 5. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 5 Operating System: Introduction Goals of an Operating System : Noninterference Operation of an Operating System: Program management Resource management Security and protection Goals of Operating System: Efficient Use User Convenience User convenience has many facets, as shown in following Table: Fulfillment of necessity Good Service User friendly interfaces New programming model Web-oriented features Evolution Ability to execute programs, use the file system Speedy response to computational requests Easy-to-use commands, graphical user interface (GUI) Concurrent programming Means to set up Web-enabled servers Add new features, use new computer technologies Facet Examples Table: Facets of User Convenience
  • 6. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 6 Operating System: Introduction Goals of an Operating System : Noninterference Operation of an Operating System: Program management Resource management Security and protection Goals of Operating System: Efficient Use User Convenience In the early days of computing, user convenience was synonymous with bare necessity Other facets of user convenience evolved with the use of computers in new fields. Early operating systems had command-line interfaces, which required a user to type in a command and specify values of its parameters- scientists or computer professionals Simpler interfaces were needed to facilitate use of computers by new classes of users. Hence graphical user interfaces (GUIs) were evolved. These interfaces used icons on a screen to represent programs and files and interpreted mouse clicks on the icons and associated menus as commands concerning them. New models were proposed for developing cost-effective solutions to new classes of problems. Some of these models could be supported by the compiler technology and required little support from the OS; modular and object-oriented program design are two such models. Other models like the concurrent programming model required specific support features in the OS. Advent of the Internet motivated setting up of Web-enabled servers, which required networking support and an ability to scale up or scale down the performance of a server in response to the amount of load directed at it. Users and their organizations invest considerable time and effort in setting up their applications through an operating system. This investment must be protected when new application areas and new computer technologies develop,
  • 7. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 7 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Program management Resource management Security and protection Goals of Operating System: Efficient Use User Convenience Noninterference A computer user can face different kinds of interference in his computational activities. Execution of his program can be disrupted by actions of other persons, or the OS services. The OS prevents such interference by allocating resources for exclusive use of programs and OS services, and preventing illegal accesses to resources. Another form of interference is when a computer user may collaborate with some other users in the development or use of a computer application, so he may wish to share some of his files with them. Attempts by any other person to access his files are illegal and constitute interference. To prevent this form of interference, an OS has to know which files of a user can be accessed by which persons. It is achieved through the act of authorization, whereby a user specifies which collaborators can access what files. The OS uses this information to prevent illegal accesses to files.
  • 8. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 8 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Resource management Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management The primary concerns of an OS during its operation are execution of programs, use of resources, and prevention of interference with programs and resources. Accordingly, its three principal functions are: • Program management: The OS initiates programs, arranges their execution on the CPU, and terminates them when they complete their execution. Since many programs exist in the system at any time, the OS performs a function called scheduling to select a program for execution • Resource management: The OS allocates resources like memory and I/O devices when a program needs them. When the program terminates, it de-allocates these resources and allocates them to other programs that need them. • Security and protection: The OS implements noninterference in users’ activities through joint actions of the security and protection functions. As an example, consider how the OS prevents illegal accesses to a file. The security function prevents nonusers from utilizing the services and resources in the computer system, hence none of them can access the file. The protection function prevents users other than the file owner or users authorized by him, from accessing the file.
  • 9. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 9 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Resource management Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Table describes the tasks commonly performed by an operating system. Construct a list of resource Maintain information for security Verify identity of a user Initiate execution of programs Maintain authorization information Perform resource allocation During booting While registering new users At user commands When a user specifies which collaborators can access what programs or data When requested by users or programs Task When performed Table: Common Tasks Performed by Operating Systems At login time Maintain current status of resources Maintain current status of programs and perform scheduling During resource allocation/de-allocation Continually during OS operation
  • 10. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 10 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Resource management Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management When a computer system is switched on, it automatically loads a program stored on a reserved part of an I/O device, typically a disk, and starts executing the program. This program follows a software technique known as bootstrapping to load the software called the boot procedure in memory The boot procedure makes a list of all hardware resources in the system, and hands over control of the computer system to the OS. A system administrator specifies which persons are registered as users of the system. The OS permits only these persons to log in to use its resources and services. A user authorizes his collaborators to access some programs and data. The OS notes this information and uses it to implement protection. The OS also performs a set of functions to implement its notion of effective utilization. These functions include scheduling of programs and keeping track of resource status and resource usage information.
  • 11. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 11 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Resource management Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Modern CPUs have the capability to execute program instructions at a very high rate, so it is possible for an OS to interleave execution of several programs on a CPU and yet provide good user service. The key function in achieving interleaved execution of programs is scheduling, which decides which program should be given the CPU at any time. Figure shows an abstract view of scheduling. Figure: A schematic of scheduling. Scheduler CPU Completed Program New Program ….. Programs in ready Queue waiting for CPU Scheduled Program P1P2Pn Preempted Program
  • 12. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 12 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Resource management Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management The scheduler, which is an OS routine that performs scheduling, maintains a list of programs waiting to execute on the CPU, and selects one program for execution. In operating systems that provide fair service to all programs, the scheduler also specifies how long the program can be allowed to use the CPU. The OS takes away the CPU from a program after it has executed for the specified period of time, and gives it to another program. This action is called preemption. A program that loses the CPU because of preemption is put back into the list of programs waiting to execute on the CPU. The scheduling policy employed by an OS can influence both efficient use of the CPU and user service. If a program is preempted after it has executed for only a short period of time, the overhead of scheduling actions would be high because of frequent preemption. However, each program would suffer only a short delay before it gets an opportunity to use the CPU, which would result in good user service. If preemption is performed after a program has executed for a longer period of time, scheduling overhead would be lesser but programs would suffer longer delays, so user service would be poorer
  • 13. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 13 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management Resource allocations and de-allocations can be performed by using a resource table. Each entry in the table contains the name and address of a resource unit and its present status, indicating whether it is free or allocated to some program. Table below is one such table for management of I/O devices. It is constructed by the boot procedure by sensing the presence of I/O devices in the system, and updated by the operating system to reflect the allocations and deallocations made by it. printer1 printer2 printer3 disk1 disk2 cdw1 Resource Name AddressClass Allocation status Printer Printer Printer Disk Disk CD writer 101 102 103 201 202 301 Allocated to P1 Free Free Allocated to P1 Allocated to P2 Free Resource Table for I/O Devices
  • 14. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 14 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management Two resource allocation strategies are popular. In the resource partitioning approach, the OS decides a priori what resources should be allocated to each user program, for example, it may decide that a program should be allocated 1 MB of memory, 1000 disk blocks, and a monitor. It divides the resources in the system into many resource partitions, or simply partitions; each partition includes 1 MB of memory, 1000 disk blocks, and a monitor. It allocates one resource partition to each user program when its execution is to be initiated. To facilitate resource allocation, the resource table contains entries for resource partitions rather than for individual resources as in Table shown. Resource partitioning is simple to implement, hence it incurs less overhead; however, it lacks flexibility. Resources are wasted if a resource partition contains more resources than what a program needs. Also, the OS cannot execute a program if its requirements exceed the resources available in a resource partition. This is true even if free resources exist in another partition.
  • 15. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 15 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management In the pool-based approach to resource management, the OS allocates resources from a common pool of resources. It consults the resource table when a program makes a request for a resource, and allocates the resource if it is free. It incurs the overhead of allocating and de-allocating resources when requested. However, it avoids both problems faced by the resource partitioning approach— an allocated resource is not wasted, and a resource requirement can be met if a free resource exists. A virtual resource is a fictitious resource—it is an illusion supported by an OS through use of a real resource. An OS may use the same real resource to support several virtual resources. This way, it can give the impression of having a larger number of resources than it actually does. Each use of a virtual resource results in the use of an appropriate real resource. In that sense, a virtual resource is an abstract view of a resource taken by a program. Use of virtual resources started with the use of virtual devices. To prevent mutual interference between programs, it was a good idea to allocate a device exclusively for use by one program. However, a computer system did not possess many real devices, so virtual devices were used. An OS would create a virtual device when a user needed an I/O device;
  • 16. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 16 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Security and protection Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management  In Table it could be two virtual disks based on the real disk, which are allocated to programs P1 and P2, respectively. Virtual devices are used in contemporary operating systems as well. A print server is a common example of a virtual device. When a program wishes to print a file, the print server simply copies the file into the print queue. The program requesting the print goes on with its operation as if the printing had been performed. The print server continuously examines the print queue and prints the files it finds in the queue. Most operating systems provide a virtual resource called virtual memory, which is an illusion of a memory that is larger in size than the real memory of a computer. Its use enables a programmer to execute a program whose size may exceed the size of real memory. Some operating systems create virtual machines (VMs) so that each machine can be allocated to a user. The advantage of this approach is twofold. Allocation of a virtual machine to each user eliminates mutual interference between users. It also allows each user to select an OS of his choice to operate his virtual machine. In effect, this arrangement permits users to use different operating systems on the same computer system simultaneously
  • 17. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 17 Operating System: Introduction Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management Security and protection An OS must ensure that no person can illegally use programs and resources in the system, or interfere with them in any manner. The security function counters threats of illegal use or interference that are posed by persons or programs outside the control of an operating system, whereas the protection function counters similar threats posed by its users. Figure illustrates how security and protection threats arise in an OS. Overview of security and protection threats.
  • 18. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 18 Operating System: Introduction Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management Security and protection In a classical stand-alone environment, a computer system functions in complete isolation. In such a system, the security and protection issues can be handled easily.. The identity of a person wishing to use a computer system is verified through a password when the person logs in. This action, which is called authentication, ensures that no person other than a registered user can use a computer system. Consequently, security threats do not arise in the system if the authentication procedure is foolproof. The OS prevents disruption of program executions and OS services with the help of hardware features such as memory protection. It overcomes interference with files by allowing a user to access a file only if he owns it or has been authorized by the file’s owner to access it When a computer system is connected to the Internet, and a user downloads a program from the Internet, there is a danger that the downloaded program may interfere with other programs or resources in the system. This is a security threat because the interference is caused by some person outside the system, called an intruder, who either wrote the downloaded program, or modified it, so that it would interfere with other programs.
  • 19. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 19 Operating System: Introduction Goals of Operating System: operations of Operating System: Efficient Use User Convenience Noninterference Program management Resource management Security and protection Another class of security threats is posed by programs called worms, which replicate by themselves through holes in security setups of operating systems. Worms can replicate at unimaginably high rates and cause widespread havoc. The Code Red worm of 2001 spread to a quarter of a million computer systems in 9 hours. Such security threats are posed either through a Trojan horse, which is a program that has a known legitimate function and a well-disguised malicious function, or a virus, which is a piece of code with a malicious function that attaches itself to other programs in the system and spreads to other systems when such programs are copied. Operating systems address security threats through a variety of means— Users are expected to contribute to security by using passwords that are impossible to guess and by exercising caution while downloading programs from the Internet by using Internet firewalls to filter out unwanted Internet traffic through a computer system. by using sophisticated authentication techniques, by plugging security holes when they are discovered, by ensuring that programs cannot be modified while they are copied over the Internet,
  • 20. Prepared by Prof. Anand H. D., Dept. of ECE, Dr. AIT, Bengaluru-56 20 Operating System: Introduction Goals of an Operating System : Operation of an Operating System: Program management Resource management Security and protection Goals of Operating System: operations of Operating System: Reference 1. D.M.Dhamdhare, “Operating Systems”, Second Edition, TMH, 2008 NoninterferenceEfficient Use User Convenience
  • 21. 21 Prof. Anand H. D. M. Tech. (PhD.) Assistant Professor, Department of Electronics & Communication Engineering Dr. Ambedkar Institute of Technology, Bengaluru-56 Email: anandhdece@dr-ait.org Phone: 9844518832