Chapter 8-Operating System Notes 2
Chapter 8-Operating System Notes 2
Part 2
OPERATING SYSTEM
OVERVIEW
WHAT IS AN OPERATING SYSTEM?
• An interface between users and hardware - an environment "architecture”
• Allows convenient usage; hides the tedious stuff
• Allows efficient usage; parallel activity, avoids wasted cycles
• Provides information protection
• Gives each user a slice of the resources
• Acts as a control program.
2
What is an Operating System (2)?
For example, the DOS operating system contains commands such as COPY
and RENAME for copying files and changing the names of files, respectively.
The commands are accepted and executed by a part of the operating system.
Similarly, the UNIX operating system has commands like CP and MV to copy
and rename.
Where does the OS fit in?
A. Frank - P. Weisberg
OPERATING The Layers Of
A System
SYSTEM OVERVIEW
Humans
Program Interface
User Programs
O.S. Interface
O.S.
Hardware Interface/
Privileged Instructions
Disk/Tape/Memory
1: Operating Systems Overview 7
Layers of a Computer System
End
User
Programmer
Application
Programs
Utilities Operating-
System
Operating-System Designer
Computer Hardware
Structure of Operating System (Contd…):
(Contd…)
Structure of Operating System (Contd…):
3. System programs
This layer consists of compilers, Assemblers, linker
etc.
4. Application programs
This is dependent on users need. Ex. Railway
reservation system, Bank database management
etc.,
What OS does?
An operating system performs basic tasks such as,
1. Program creation
2. Program execution
3. Input/Output operations
4. Error detection
5. Resource allocation
6. Accounting
7. protection
Categories of Operating Systems
• Real-time operating system
– Very fast small OS
– Built into a device
– Respond quickly to user input
– MP3 players, Medical devices
Types of Operating Systems
• Single user/Single tasking OS
– One user works on the system
– Performs one task at a time
– MS-DOS and Palm OS
– Take up little space on disk
– Run on inexpensive computers
Types of Operating Systems
• Single user/Multitasking OS
– User performs many tasks at once
– Most common form of OS
– Windows XP and OS X
– Require expensive computers
– Tend to be complex
Types of Operating Systems
• Multi user/Multitasking OS
– Many users connect to one computer
– Each user has a unique session
– UNIX, Linux, and VMS
– Maintenance can be easy
– Requires a powerful computer
Multi user/Multi tasking OS
Providing a User Interface
• User interface
– How a user interacts with a computer
– Require different skill sets
Providing a User Interface
• Graphical user interface (GUI)
– Most common interface
• Windows, OS X, Gnome, KDE
– Uses a mouse to control objects
– Uses a desktop metaphor
– Shortcuts open programs or documents
– Open documents have additional objects
– Task switching
– Dialog boxes allow directed input
Graphical User Interface
Providing a User Interface
• Command line interfaces
– Older interface
• DOS, Linux, UNIX
– User types commands at a prompt
– User must remember all commands
– Included in all GUIs
Command Line Interface
Running Programs
• Many different applications supported
• System call
– Provides consistent access to OS features
• Share information between programs
– Copy and paste
– Object Linking and Embedding
Managing Hardware
• Programs need to access hardware
• Interrupts
– CPU is stopped
– Hardware device is accessed
• Device drivers control the hardware
Organizing Files and Folders
• Organized storage
• Long file names
• Folders can be created and nested
• All storage devices work consistently
Types of OS
Microsoft Windows
Mainframe
DOS
OS/2
Linux
Mac OS
AmigaOS
Types Of OS
Evolution of Windows
Evolution of OS/2
Types of modern operating systems
• Mainframe operating systems: MVS
• Server operating systems: FreeBSD, Solaris
• Multiprocessor operating systems: Cellular IRIX
• Personal computer operating systems: Windows, Unix
• Real-time operating systems: VxWorks
• Embedded operating systems
• Smart card operating systems
ÞSome operating systems can fit into more than one category
• Resource Manager:
• Manages and protects multiple computer resources: CPU, Processes,
Internal/External memory, Tasks, Applications, Users,
Communication channels, etc…
• Handles and allocates resources to multiple users or multiple
programs running at the same time and space (e.g., processor time,
memory, I/O devices).
• Decides between conflicting requests for efficient and fair resource
use (e.g., maximize throughput, minimize response time).
• Sort of a bottom-up view.
OS as a Resource Manager
A. Frank - P. Weisberg
2. Control Program
• Control Program:
• Manages all the components of a complex
computer system in an integrated manner.
• Controls the execution of user programs and I/O
devices to prevent errors and improper use of
computer resources.
• Looks over and protects the computer: Monitor,
Supervisor, Executive, Controller, Master,
Coordinator ….
• Sort of a black box view.
Memory Management
• Process isolation
• Automatic allocation and management
• Support of modular programming
• Protection and access control
• Long-term storage
Information Protection and Security
• Availability
– Protecting the system against interruption
• Confidentiality (access control)
– Assuring that users cannot read data for
which access is unauthorized
• Data integrity (access control)
– Protection of data from unauthorized
modification
• Authenticity (login)
– Proper verification of the identity of users and
the validity of messages or data
Scheduling and Resource Management
• Fairness
– Give equal and fair access to resources
• Differential responsiveness
– Discriminate among different classes of jobs
• Efficiency
– Maximize throughput, minimize response or
turnaround time, and accommodate as many
users as possible
System Structure
• Hierarchical structure:
– View the system as a series of levels
– Each level performs a related subset of
functions
– Each level relies on the next lower level to
perform more primitive functions
• Modular structure:
– Different functions carried out by different
modules
– Communication between the modules
Layered System
43
Major issues in OS (2)
44