Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
128 views

Chapter 8-Operating System Notes 2

An operating system acts as an interface between users and computer hardware. It allows for convenient and efficient usage of computer resources by hiding low-level details, providing protection between processes, and enabling parallel activity to avoid wasted cycles. The OS controls and executes user programs, makes the computer system convenient to use, and uses hardware resources efficiently. It performs basic tasks like input/output management and keeps track of files and directories.

Uploaded by

Zilly coco
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
128 views

Chapter 8-Operating System Notes 2

An operating system acts as an interface between users and computer hardware. It allows for convenient and efficient usage of computer resources by hiding low-level details, providing protection between processes, and enabling parallel activity to avoid wasted cycles. The OS controls and executes user programs, makes the computer system convenient to use, and uses hardware resources efficiently. It performs basic tasks like input/output management and keeps track of files and directories.

Uploaded by

Zilly coco
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 44

Operating Systems

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)?

• An Operating System is a program that acts as an


intermediary/interface between a user of a computer and the
computer hardware.
• OS goals:
• Control/execute user/application programs.
• Make the computer system convenient to use.
• Ease the solving of user problems.
• Use the computer hardware in an efficient manner.
OS
 An Operating System, or OS, is low-level
software that enables a user and higher-
level application software to interact with a
computer’s hardware and the data and other
programs stored on the computer.
 An OS performs basic tasks, such as
recognizing input from the keyboard,
sending output to the display screen,
keeping track of files and directories on the
disk, and controlling peripheral devices such
as printers.
Application programs and OS

 Operating systems provide a software platform on top of which other


programs, called application programs, can run.

 The choice of operating system, therefore, determines to a great extent the


applications a user can run.

 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…):

• The structure of OS consists of 4 layers:


1. Hardware
Hardware consists of CPU, Main memory, I/O Devices, etc,

2. Software (Operating System)


Software includes process management routines, memory
management routines, I/O control routines, file management
routines.

(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,

• controlling and allocating memory,

• prioritizing system requests,

• controlling input and output devices,

• facilitating networking and

• managing file systems.


Services provided by an OS
• Facilities for program creation
• editors, compilers, linkers, debuggers, etc.
• Program execution
• loading in memory, I/O and file initialization.
• Access to I/O and files
• deals with the specifics of I/O and file formats.
• System access
• resolves conflicts for resource contention.
• protection in access to resources and data.
Operating Systems functions:
• The main functions of operating systems are:

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

CS 1550, cs.pitt.edu (originaly modified


Chapter 1 31
by Ethan L. Miller and Scott A. Brandt)
Major OS Concepts
• Process
• Memory management
• Information protection and security
• Scheduling and resource management
• System structure
OS Features
• Memory protection
– Do not allow the memory area containing the monitor
to be altered by user program
• Timer
– Prevents a job from monopolizing the system (when
allocated time is up, job is stopped)
• Privileged instructions
– Certain machine level instructions (e.g. I/O) can only
be executed by the monitor – kernel or supervisor
mode vs. user mode
Views of an Operating System
• There are three classical views (in literature):
1. Resource Manager – manages and allocates resources.
2. Control program – controls the execution of user programs and
operations of I/O devices.
3. Command Executer – Provides an environment for running user
commands.
• But one more modern view: the Operating System as a Virtual
Machine.
1. Resource Manager

• 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

• Structure of the THE operating system


• MULTICS - concentric rings
The major OS issues

• structure: how is the OS organized?


• sharing: how are resources shared across users?
• naming: how are resources named (by users or programs)?
• security: how is the integrity of the OS and its resources ensured?
• protection: how is one user/program protected from another?
• performance: how do we make it all go fast?
• reliability: what happens if something goes wrong (either with
hardware or with a program)?
• extensibility: can we add new features?
• communication: how do programs exchange information, including
across a network?

43
Major issues in OS (2)

• Concurrency: how are parallel activities created and controlled?


• Scale and growth: what happens as demands or resources increase?
• Persistence: how to make data last longer than programs
• Compatibility & Legacy Apps: can we ever do anything new?
• Distribution: Accessing the world of information
• Accounting: who pays the bills, and how do we control resource
usage?

44

You might also like