SlideShare a Scribd company logo
Chapter 1: Introduction
Instructor: Dr. Mazin Md. Alkathiri
Computer Science Department
Seiyun University - Yemen
1.2
Operating System Concepts
What is an Operating System?
 A program that acts as an intermediary between a user of
a computer and the computer hardware.
 Operating system goals:
 Execute user programs and make solving user
problems easier.
 Make the computer system convenient to use.
 Use the computer hardware in an efficient manner.
1.3
Operating System Concepts
Computer System Structure
 Computer system can be divided into four components
 Hardware – provides basic computing resources
 CPU, memory, I/O devices
 Operating system
 Controls and coordinates use of hardware among various
applications and users
 Application programs – define the ways in which the system
resources are used to solve the computing problems of the
users
 Word processors, compilers, web browsers, database
systems, video games
 Users
 People, machines, other computers
1.4
Operating System Concepts
Four Components of a Computer System
1.5
Operating System Concepts
Operating System Definition
 OS is a resource allocator:
 Manages all resources;
 Decides between conflicting requests for efficient and fair
resource use;
 OS is a control program:
 Controls execution of programs to prevent errors and improper
use of the computer.
1.6
Operating System Concepts
Operating System Definition (Cont.)
 No universally accepted definition
 “Everything a vendor ships when you order an operating system”
is good approximation
 But varies wildly
 “The one program running at all times on the computer” is the
kernel. Everything else is either a system program (ships with
the operating system) or an application program
1.7
Operating System Concepts
Computer Startup
 bootstrap program is loaded at power-up or reboot
 Typically stored in ROM or EEPROM, generally known as
firmware
 Initializates all aspects of system
 Loads operating system kernel and starts execution
1.8
Operating System Concepts
Computer System Organization
 Computer-system operation:
 One or more CPUs, device controllers connect through
common bus providing access to shared memory
 Concurrent execution of CPUs and devices competing for
memory cycles
1.9
Operating System Concepts
Computer-System Operation
 I/O devices and the CPU can execute concurrently.
 Each device controller is in charge of a particular device type.
 Each device controller has a local buffer.
 CPU moves data from/to main memory to/from local buffers
 I/O is from the device to local buffer of controller.
 Device controller informs CPU that it has finished its operation by
causing an interrupt.
1.10
Operating System Concepts
Common Functions of Interrupts
 Interrupt transfers control to the interrupt service routine generally,
through the interrupt vector, which contains the addresses of all the
service routines.
 Interrupt architecture must save the address of the interrupted
instruction.
 Incoming interrupts are disabled while another interrupt is being
processed to prevent a lost interrupt.
 A trap is a software-generated interrupt caused either by an error
or a user request.
 An operating system is interrupt driven.
1.11
Operating System Concepts
Interrupt Handling
 The operating system preserves the state of the CPU by storing
registers and the program counter.
 Determines which type of interrupt has occurred:
 polling
 vectored interrupt system
 Separate segments of code determine what action should be taken
for each type of interrupt
1.12
Operating System Concepts
Interrupt Timeline
1.13
Operating System Concepts
I/O Structure
 A large portion of operating system code is dedicated to manage I/O, because of
 It’s importance to the reliability and performance of a system
 And the varying nature of the devices.
 A device controller maintains some local buffer storage and a set of special-
purpose registers.
 The device controller is responsible for moving the data between the peripheral
devices that it controls and it’s local buffer storage.
 Typically, operating systems have a device driver for each device controller.
 A device driver understanding the device controller and presents a uniform
interface to the device to the rest of the operating system
1.14
Operating System Concepts
Direct Memory Access Structure
 Used for high-speed I/O devices able to transmit information at
close to memory speeds.
 Device controller transfers blocks of data from buffer storage
directly to main memory without CPU intervention.
 Only on interrupt is generated per block, rather than the one
interrupt per byte.
 Some high-end systems use switch rather than bus architecture.
On these systems, multiple components can talk to other
components concurrently, rather than competing for the cycles on a
shared bus. In this case, DMA is even more effective.
1.15
Operating System Concepts
1.16
Operating System Concepts
Storage Structure
 Main memory – only large storage media that the CPU can access
directly.
 Secondary storage – extension of main memory that provides large
nonvolatile storage capacity.
 Magnetic disks – rigid metal or glass platters covered with
magnetic recording material
 Disk surface is logically divided into tracks, which are
subdivided into sectors.
 The disk controller determines the logical interaction between
the device and the computer.
1.17
Operating System Concepts
Storage Hierarchy
 Storage systems organized in hierarchy.
 Speed
 Cost
 Volatility
 Caching – copying information into faster storage system; main
memory can be viewed as a last cache for secondary storage.
1.18
Operating System Concepts
Storage-Device Hierarchy
1.19
Operating System Concepts
Caching
 Important principle, performed at many levels in a computer (in
hardware, operating system, software)
 Information in use copied from slower to faster storage temporarily
 Faster storage (cache) checked first to determine if information is
there
 If it is, information used directly from the cache (fast)
 If not, data copied to cache and used there
 Cache smaller than storage being cached
 Cache management important design problem
 Cache size and replacement policy
1.20
Operating System Concepts
Performance of Various Levels of Storage
 Movement between levels of storage hierarchy can be explicit or
implicit
1.21
Operating System Concepts
Migration of Integer A from Disk to Register
 Multitasking environments must be careful to use most recent
value, not matter where it is stored in the storage hierarchy
 Multiprocessor environment must provide cache coherency in
hardware such that all CPUs have the most recent value in their
cache
 Distributed environment situation even more complex
 Several copies of a datum can exist
 Various solutions covered in Chapter 17
1.22
Operating System Concepts
Operating System Structure
 Multiprogramming needed for efficiency
 Single user cannot keep CPU and I/O devices busy at all times
 Multiprogramming organizes jobs (code and data) so CPU always has
one to execute
 A subset of total jobs in system is kept in memory
 One job selected and run via job scheduling
 When it has to wait (for I/O for example), OS switches to another job
 Timesharing (multitasking) is logical extension in which CPU switches jobs
so frequently that users can interact with each job while it is running,
creating interactive computing
 Response time should be < 1 second
 Each user has at least one program executing in memory process
 If several jobs ready to run at the same time  CPU scheduling
 If processes don’t fit in memory, swapping moves them in and out to
run
 Virtual memory allows execution of processes not completely in
memory
1.23
Operating System Concepts
Memory Layout for Multiprogrammed System
1.24
Operating System Concepts
Operating-System Operations
 Interrupt driven by hardware
 Software error or request creates exception or trap
 Division by zero, request for operating system service
 Other process problems include infinite loop, processes modifying
each other or the operating system
 Dual-mode operation allows OS to protect itself and other system
components
 User mode and kernel mode
 Mode bit provided by hardware
 Provides ability to distinguish when system is running user
code or kernel code
 Some instructions designated as privileged, only
executable in kernel mode
 System call changes mode to kernel, return from call resets
it to user
1.25
Operating System Concepts
Transition from User to Kernel Mode
 Timer to prevent infinite loop / process hogging resources:
 Set interrupt after specific period;
 Operating system decrements counter;
 When counter zero generate an interrupt;
 Set up before scheduling process to regain control or terminate
program that exceeds allotted time.
1.26
Operating System Concepts
Process Management
 A process is a program in execution. It is a unit of work within the system.
Program is a passive entity, process is an active entity.
 Process needs resources to accomplish its task
 CPU, memory, I/O, files
 Initialization data
 Process termination requires reclaim of any reusable resources
 Single-threaded process has one program counter specifying location of
next instruction to execute
 Process executes instructions sequentially, one at a time, until
completion
 Multi-threaded process has one program counter per thread
 Typically system has many processes, some user, some operating system
running concurrently on one or more CPUs
1.27
Operating System Concepts
Process Management Activities
The operating system is responsible for the following activities in
connection with process management:
 Creating and deleting both user and system processes
 Suspending and resuming processes
 Providing mechanisms for process synchronization
 Providing mechanisms for process communication
 Providing mechanisms for deadlock handling
1.28
Operating System Concepts
Memory Management
 All data in memory before and after processing
 All instructions in memory in order to execute
 Memory management determines what is in memory when
 Optimizing CPU utilization and computer response to users
 Memory management activities
 Keeping track of which parts of memory are currently being
used and by whom
 Deciding which processes (or parts thereof) and data to move
into and out of memory
 Allocating and deallocating memory space as needed
1.29
Operating System Concepts
Storage Management
 OS provides uniform, logical view of information storage
 Abstracts physical properties to logical storage unit - file
 Each medium is controlled by device (i.e., disk drive, tape drive)
 Varying properties include access speed, capacity, data-
transfer rate, access method (sequential or random)
 File-System management
 Files usually organized into directories
 Access control on most systems to determine who can access
what
 OS activities include
 Creating and deleting files and directories
 Primitives to manipulate files and dirs
 Mapping files onto secondary storage
 Backup files onto stable (non-volatile) storage media

More Related Content

PPT
OS-operating systems- ch05 (CPU Scheduling) ...
Dr. Mazin Mohamed alkathiri
 
PPTX
Operating Systems - Processor Management
Damian T. Gordon
 
PPTX
Ch1-Operating System Concepts
Muhammad Bilal Tariq
 
PPT
Process management in os
Miong Lazaro
 
PPT
Introduction to Operating System
priya_sinha02
 
PPT
Introduction to Operating System
Divya S
 
PPTX
Operating Systems: Process Scheduling
Damian T. Gordon
 
PPTX
ppt of features of operating system.pptx
NehaAnand998175
 
OS-operating systems- ch05 (CPU Scheduling) ...
Dr. Mazin Mohamed alkathiri
 
Operating Systems - Processor Management
Damian T. Gordon
 
Ch1-Operating System Concepts
Muhammad Bilal Tariq
 
Process management in os
Miong Lazaro
 
Introduction to Operating System
priya_sinha02
 
Introduction to Operating System
Divya S
 
Operating Systems: Process Scheduling
Damian T. Gordon
 
ppt of features of operating system.pptx
NehaAnand998175
 

Similar to OS-ch01-2024.ppt (20)

PPT
OSLec1&2.ppt
ssusere16bd9
 
PPT
operating system over view.ppt operating sysyems
JyoReddy9
 
PPSX
Operating system
mak120
 
PDF
PB1MAT_TIF17 - Pertemuan 1-2ghfctrerdxt.pdf
Join Sigalingging
 
PPT
Ch1
rupalidhir
 
PPT
unit1 part1.ppt
suresh554942
 
PPT
Operating Systems with Storage and Process Management
SasiBhushan22
 
PPT
Operating Systems _ Process & Storage Management
SasiBhushan22
 
PPT
Operating Systems Storage & Process Management
SasiBhushan22
 
PPTX
Unit 1-Operating Systems Overview .pptx
ThamaraiselviAvinuty
 
PPT
Module-1 Introduction to operating system.ppt
220301120277
 
PPT
Operting system
KAnurag2
 
PPTX
Computer Science, Operating System - Lecture 1 slides
luqmanshahzad93
 
DOC
Module1
dilshad begum
 
PPT
Unit I OS CS.ppt
Suganthi Vasanth Raj
 
PPT
Operating systems galvin-ch1
Bat-Ochir Gan-Ochir
 
PPTX
Operating system 1Chapter One- Introduction(0) (1).pptx
jamsibro140
 
PDF
first chapter introduction to operating system
SeifMohamed42
 
PDF
OS Lecture 01 Introductiodg (Slides).pdf
abdo522qq
 
OSLec1&2.ppt
ssusere16bd9
 
operating system over view.ppt operating sysyems
JyoReddy9
 
Operating system
mak120
 
PB1MAT_TIF17 - Pertemuan 1-2ghfctrerdxt.pdf
Join Sigalingging
 
unit1 part1.ppt
suresh554942
 
Operating Systems with Storage and Process Management
SasiBhushan22
 
Operating Systems _ Process & Storage Management
SasiBhushan22
 
Operating Systems Storage & Process Management
SasiBhushan22
 
Unit 1-Operating Systems Overview .pptx
ThamaraiselviAvinuty
 
Module-1 Introduction to operating system.ppt
220301120277
 
Operting system
KAnurag2
 
Computer Science, Operating System - Lecture 1 slides
luqmanshahzad93
 
Module1
dilshad begum
 
Unit I OS CS.ppt
Suganthi Vasanth Raj
 
Operating systems galvin-ch1
Bat-Ochir Gan-Ochir
 
Operating system 1Chapter One- Introduction(0) (1).pptx
jamsibro140
 
first chapter introduction to operating system
SeifMohamed42
 
OS Lecture 01 Introductiodg (Slides).pdf
abdo522qq
 
Ad

More from Dr. Mazin Mohamed alkathiri (20)

PPTX
Computer Introduction (Operating Systems)-Lecture06
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Application Development (local database) class-07
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Application Development (Shared Preferences) class-06
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Application Development((Handling User Input and Navigation) class-05
Dr. Mazin Mohamed alkathiri
 
PPTX
Computer Introduction (Data Encryption)-Lecture05
Dr. Mazin Mohamed alkathiri
 
PPTX
Computer Introduction (Computer Viruses )-Lecture04
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Applications Development class 04-Layout-04
Dr. Mazin Mohamed alkathiri
 
DOCX
Appendix to Lecture 3 Building a flutter app
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Applications Development class 03-starting with flutter
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Applications Development class 02 ntroduction to Drat
Dr. Mazin Mohamed alkathiri
 
PPTX
Computer Introduction (Software)-Lecture03
Dr. Mazin Mohamed alkathiri
 
PPTX
Computer Introduction (Hardware)-Lecture02
Dr. Mazin Mohamed alkathiri
 
PPTX
Computer Introduction (introduction)-Lecture01
Dr. Mazin Mohamed alkathiri
 
PPTX
Introduction to Academic Writing class 0-1
Dr. Mazin Mohamed alkathiri
 
PPTX
Mobile Applications Development class 01 - Introduction
Dr. Mazin Mohamed alkathiri
 
PPTX
ESSENTIAL of (CS/IT/IS) class 07 (Networks)
Dr. Mazin Mohamed alkathiri
 
PPTX
Advance Mobile Application Development class 07
Dr. Mazin Mohamed alkathiri
 
PPTX
ESSENTIAL of (CS/IT/IS) class 06 (database)
Dr. Mazin Mohamed alkathiri
 
PPT
OS-operating systems- ch04 (Threads) ...
Dr. Mazin Mohamed alkathiri
 
PPTX
Advance Mobile Application Development class 05
Dr. Mazin Mohamed alkathiri
 
Computer Introduction (Operating Systems)-Lecture06
Dr. Mazin Mohamed alkathiri
 
Mobile Application Development (local database) class-07
Dr. Mazin Mohamed alkathiri
 
Mobile Application Development (Shared Preferences) class-06
Dr. Mazin Mohamed alkathiri
 
Mobile Application Development((Handling User Input and Navigation) class-05
Dr. Mazin Mohamed alkathiri
 
Computer Introduction (Data Encryption)-Lecture05
Dr. Mazin Mohamed alkathiri
 
Computer Introduction (Computer Viruses )-Lecture04
Dr. Mazin Mohamed alkathiri
 
Mobile Applications Development class 04-Layout-04
Dr. Mazin Mohamed alkathiri
 
Appendix to Lecture 3 Building a flutter app
Dr. Mazin Mohamed alkathiri
 
Mobile Applications Development class 03-starting with flutter
Dr. Mazin Mohamed alkathiri
 
Mobile Applications Development class 02 ntroduction to Drat
Dr. Mazin Mohamed alkathiri
 
Computer Introduction (Software)-Lecture03
Dr. Mazin Mohamed alkathiri
 
Computer Introduction (Hardware)-Lecture02
Dr. Mazin Mohamed alkathiri
 
Computer Introduction (introduction)-Lecture01
Dr. Mazin Mohamed alkathiri
 
Introduction to Academic Writing class 0-1
Dr. Mazin Mohamed alkathiri
 
Mobile Applications Development class 01 - Introduction
Dr. Mazin Mohamed alkathiri
 
ESSENTIAL of (CS/IT/IS) class 07 (Networks)
Dr. Mazin Mohamed alkathiri
 
Advance Mobile Application Development class 07
Dr. Mazin Mohamed alkathiri
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
Dr. Mazin Mohamed alkathiri
 
OS-operating systems- ch04 (Threads) ...
Dr. Mazin Mohamed alkathiri
 
Advance Mobile Application Development class 05
Dr. Mazin Mohamed alkathiri
 
Ad

Recently uploaded (20)

PPTX
CARE OF UNCONSCIOUS PATIENTS .pptx
AneetaSharma15
 
PPTX
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
PPTX
Basics and rules of probability with real-life uses
ravatkaran694
 
PPTX
CONCEPT OF CHILD CARE. pptx
AneetaSharma15
 
PPTX
Virus sequence retrieval from NCBI database
yamunaK13
 
PDF
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
PPTX
Introduction to pediatric nursing in 5th Sem..pptx
AneetaSharma15
 
PPTX
Artificial Intelligence in Gastroentrology: Advancements and Future Presprec...
AyanHossain
 
PPTX
family health care settings home visit - unit 6 - chn 1 - gnm 1st year.pptx
Priyanshu Anand
 
DOCX
pgdei-UNIT -V Neurological Disorders & developmental disabilities
JELLA VISHNU DURGA PRASAD
 
PPTX
A Smarter Way to Think About Choosing a College
Cyndy McDonald
 
PPTX
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
PPTX
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
PPTX
Care of patients with elImination deviation.pptx
AneetaSharma15
 
PPTX
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
PPTX
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
PPTX
How to Manage Leads in Odoo 18 CRM - Odoo Slides
Celine George
 
PPTX
Five Point Someone – Chetan Bhagat | Book Summary & Analysis by Bhupesh Kushwaha
Bhupesh Kushwaha
 
PPTX
Command Palatte in Odoo 18.1 Spreadsheet - Odoo Slides
Celine George
 
DOCX
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
CARE OF UNCONSCIOUS PATIENTS .pptx
AneetaSharma15
 
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
Basics and rules of probability with real-life uses
ravatkaran694
 
CONCEPT OF CHILD CARE. pptx
AneetaSharma15
 
Virus sequence retrieval from NCBI database
yamunaK13
 
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
Introduction to pediatric nursing in 5th Sem..pptx
AneetaSharma15
 
Artificial Intelligence in Gastroentrology: Advancements and Future Presprec...
AyanHossain
 
family health care settings home visit - unit 6 - chn 1 - gnm 1st year.pptx
Priyanshu Anand
 
pgdei-UNIT -V Neurological Disorders & developmental disabilities
JELLA VISHNU DURGA PRASAD
 
A Smarter Way to Think About Choosing a College
Cyndy McDonald
 
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
Care of patients with elImination deviation.pptx
AneetaSharma15
 
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
How to Manage Leads in Odoo 18 CRM - Odoo Slides
Celine George
 
Five Point Someone – Chetan Bhagat | Book Summary & Analysis by Bhupesh Kushwaha
Bhupesh Kushwaha
 
Command Palatte in Odoo 18.1 Spreadsheet - Odoo Slides
Celine George
 
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 

OS-ch01-2024.ppt

  • 1. Chapter 1: Introduction Instructor: Dr. Mazin Md. Alkathiri Computer Science Department Seiyun University - Yemen
  • 2. 1.2 Operating System Concepts What is an Operating System?  A program that acts as an intermediary between a user of a computer and the computer hardware.  Operating system goals:  Execute user programs and make solving user problems easier.  Make the computer system convenient to use.  Use the computer hardware in an efficient manner.
  • 3. 1.3 Operating System Concepts Computer System Structure  Computer system can be divided into four components  Hardware – provides basic computing resources  CPU, memory, I/O devices  Operating system  Controls and coordinates use of hardware among various applications and users  Application programs – define the ways in which the system resources are used to solve the computing problems of the users  Word processors, compilers, web browsers, database systems, video games  Users  People, machines, other computers
  • 4. 1.4 Operating System Concepts Four Components of a Computer System
  • 5. 1.5 Operating System Concepts Operating System Definition  OS is a resource allocator:  Manages all resources;  Decides between conflicting requests for efficient and fair resource use;  OS is a control program:  Controls execution of programs to prevent errors and improper use of the computer.
  • 6. 1.6 Operating System Concepts Operating System Definition (Cont.)  No universally accepted definition  “Everything a vendor ships when you order an operating system” is good approximation  But varies wildly  “The one program running at all times on the computer” is the kernel. Everything else is either a system program (ships with the operating system) or an application program
  • 7. 1.7 Operating System Concepts Computer Startup  bootstrap program is loaded at power-up or reboot  Typically stored in ROM or EEPROM, generally known as firmware  Initializates all aspects of system  Loads operating system kernel and starts execution
  • 8. 1.8 Operating System Concepts Computer System Organization  Computer-system operation:  One or more CPUs, device controllers connect through common bus providing access to shared memory  Concurrent execution of CPUs and devices competing for memory cycles
  • 9. 1.9 Operating System Concepts Computer-System Operation  I/O devices and the CPU can execute concurrently.  Each device controller is in charge of a particular device type.  Each device controller has a local buffer.  CPU moves data from/to main memory to/from local buffers  I/O is from the device to local buffer of controller.  Device controller informs CPU that it has finished its operation by causing an interrupt.
  • 10. 1.10 Operating System Concepts Common Functions of Interrupts  Interrupt transfers control to the interrupt service routine generally, through the interrupt vector, which contains the addresses of all the service routines.  Interrupt architecture must save the address of the interrupted instruction.  Incoming interrupts are disabled while another interrupt is being processed to prevent a lost interrupt.  A trap is a software-generated interrupt caused either by an error or a user request.  An operating system is interrupt driven.
  • 11. 1.11 Operating System Concepts Interrupt Handling  The operating system preserves the state of the CPU by storing registers and the program counter.  Determines which type of interrupt has occurred:  polling  vectored interrupt system  Separate segments of code determine what action should be taken for each type of interrupt
  • 13. 1.13 Operating System Concepts I/O Structure  A large portion of operating system code is dedicated to manage I/O, because of  It’s importance to the reliability and performance of a system  And the varying nature of the devices.  A device controller maintains some local buffer storage and a set of special- purpose registers.  The device controller is responsible for moving the data between the peripheral devices that it controls and it’s local buffer storage.  Typically, operating systems have a device driver for each device controller.  A device driver understanding the device controller and presents a uniform interface to the device to the rest of the operating system
  • 14. 1.14 Operating System Concepts Direct Memory Access Structure  Used for high-speed I/O devices able to transmit information at close to memory speeds.  Device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention.  Only on interrupt is generated per block, rather than the one interrupt per byte.  Some high-end systems use switch rather than bus architecture. On these systems, multiple components can talk to other components concurrently, rather than competing for the cycles on a shared bus. In this case, DMA is even more effective.
  • 16. 1.16 Operating System Concepts Storage Structure  Main memory – only large storage media that the CPU can access directly.  Secondary storage – extension of main memory that provides large nonvolatile storage capacity.  Magnetic disks – rigid metal or glass platters covered with magnetic recording material  Disk surface is logically divided into tracks, which are subdivided into sectors.  The disk controller determines the logical interaction between the device and the computer.
  • 17. 1.17 Operating System Concepts Storage Hierarchy  Storage systems organized in hierarchy.  Speed  Cost  Volatility  Caching – copying information into faster storage system; main memory can be viewed as a last cache for secondary storage.
  • 19. 1.19 Operating System Concepts Caching  Important principle, performed at many levels in a computer (in hardware, operating system, software)  Information in use copied from slower to faster storage temporarily  Faster storage (cache) checked first to determine if information is there  If it is, information used directly from the cache (fast)  If not, data copied to cache and used there  Cache smaller than storage being cached  Cache management important design problem  Cache size and replacement policy
  • 20. 1.20 Operating System Concepts Performance of Various Levels of Storage  Movement between levels of storage hierarchy can be explicit or implicit
  • 21. 1.21 Operating System Concepts Migration of Integer A from Disk to Register  Multitasking environments must be careful to use most recent value, not matter where it is stored in the storage hierarchy  Multiprocessor environment must provide cache coherency in hardware such that all CPUs have the most recent value in their cache  Distributed environment situation even more complex  Several copies of a datum can exist  Various solutions covered in Chapter 17
  • 22. 1.22 Operating System Concepts Operating System Structure  Multiprogramming needed for efficiency  Single user cannot keep CPU and I/O devices busy at all times  Multiprogramming organizes jobs (code and data) so CPU always has one to execute  A subset of total jobs in system is kept in memory  One job selected and run via job scheduling  When it has to wait (for I/O for example), OS switches to another job  Timesharing (multitasking) is logical extension in which CPU switches jobs so frequently that users can interact with each job while it is running, creating interactive computing  Response time should be < 1 second  Each user has at least one program executing in memory process  If several jobs ready to run at the same time  CPU scheduling  If processes don’t fit in memory, swapping moves them in and out to run  Virtual memory allows execution of processes not completely in memory
  • 23. 1.23 Operating System Concepts Memory Layout for Multiprogrammed System
  • 24. 1.24 Operating System Concepts Operating-System Operations  Interrupt driven by hardware  Software error or request creates exception or trap  Division by zero, request for operating system service  Other process problems include infinite loop, processes modifying each other or the operating system  Dual-mode operation allows OS to protect itself and other system components  User mode and kernel mode  Mode bit provided by hardware  Provides ability to distinguish when system is running user code or kernel code  Some instructions designated as privileged, only executable in kernel mode  System call changes mode to kernel, return from call resets it to user
  • 25. 1.25 Operating System Concepts Transition from User to Kernel Mode  Timer to prevent infinite loop / process hogging resources:  Set interrupt after specific period;  Operating system decrements counter;  When counter zero generate an interrupt;  Set up before scheduling process to regain control or terminate program that exceeds allotted time.
  • 26. 1.26 Operating System Concepts Process Management  A process is a program in execution. It is a unit of work within the system. Program is a passive entity, process is an active entity.  Process needs resources to accomplish its task  CPU, memory, I/O, files  Initialization data  Process termination requires reclaim of any reusable resources  Single-threaded process has one program counter specifying location of next instruction to execute  Process executes instructions sequentially, one at a time, until completion  Multi-threaded process has one program counter per thread  Typically system has many processes, some user, some operating system running concurrently on one or more CPUs
  • 27. 1.27 Operating System Concepts Process Management Activities The operating system is responsible for the following activities in connection with process management:  Creating and deleting both user and system processes  Suspending and resuming processes  Providing mechanisms for process synchronization  Providing mechanisms for process communication  Providing mechanisms for deadlock handling
  • 28. 1.28 Operating System Concepts Memory Management  All data in memory before and after processing  All instructions in memory in order to execute  Memory management determines what is in memory when  Optimizing CPU utilization and computer response to users  Memory management activities  Keeping track of which parts of memory are currently being used and by whom  Deciding which processes (or parts thereof) and data to move into and out of memory  Allocating and deallocating memory space as needed
  • 29. 1.29 Operating System Concepts Storage Management  OS provides uniform, logical view of information storage  Abstracts physical properties to logical storage unit - file  Each medium is controlled by device (i.e., disk drive, tape drive)  Varying properties include access speed, capacity, data- transfer rate, access method (sequential or random)  File-System management  Files usually organized into directories  Access control on most systems to determine who can access what  OS activities include  Creating and deleting files and directories  Primitives to manipulate files and dirs  Mapping files onto secondary storage  Backup files onto stable (non-volatile) storage media