CS4315A. Berrached:CMS:UHD1 Operating System Structures Chapter 3.
Transcript of CS4315A. Berrached:CMS:UHD1 Operating System Structures Chapter 3.
CS4315 A. Berrached:CMS:UHD 1
Operating System Structures
Chapter 3
CS4315 A. Berrached:CMS:UHD 2
Operating System Structures
• OS Design Constraints• OS Basic Functions• OS Structures
CS4315 A. Berrached:CMS:UHD 3
Design Constraints
• Performance• Protection & Security• Correctness• Maintainability• Commercial factors
CS4315 A. Berrached:CMS:UHD 4
Performance• People use computers for the potential of rapid
information processing• There are several measures of performance
– throughput– response time
• The OS is an overhead function => should not use too much of machine resources
• Provide an environment in which programmers can produce solutions in a cost-effective manner
==> trade off
CS4315 A. Berrached:CMS:UHD 5
Correctness & Maintainability
• Correctness - refers to whether OS functions meet their requirements.
• Correctness is the most basic requirement on which all other requirement are based- e.g. security depends on correct operation of OS => trusted vs un-trusted software
• Maintainability - refers to the ease with which software can be changed/extended, bugs can be fixed, etc.
CS4315 A. Berrached:CMS:UHD 6
OS Basic Functions
• Device management• Process & resource management• Memory Management• File Management
CS4315 A. Berrached:CMS:UHD 7
Device Management
• OS Manages the allocation, sharing and isolation of I/O devices (disks, tapes, terminals, etc.)
• Most Operating Systems treat all devices in the same general manner– UNIX treats them all like files
• Chapters 4 & 5 discuss Device Management
CS4315 A. Berrached:CMS:UHD 8
Process & Resource Management
• A process is the basic unit of computation• Resources are the elements needed by a process so
that it can execute– CPU, Memory, I/O devices, data etc.
• OS provides a set of process management mechanisms: for process creation , blocking, resumption, termination ,etc
CS4315 A. Berrached:CMS:UHD 9
Process & Resource Management
• OS manages computer resources so that multiple processes can execute simultaneously– CPU scheduling– resource allocation, sharing & process
synchronization– resource allocation
• Chapters 6 - 10
CS4315 A. Berrached:CMS:UHD 10
Memory Management
• Allocation and use of the primary memory resource– memory allocation among competing processes– enforce memory isolation and sharing
• Most modern OS support virtual memory.– Virtual memory allows processes to access
data in secondary storage as if it were in main memory.
• Chapter s11&12
CS4315 A. Berrached:CMS:UHD 11
File Management
• Information that need to be saved "permanently" must be stored in a secondary storage device e.g. a disk, tape, etc.
• Files are an abstraction of secondary storage devices• File manager is responsible for
– managing the file system: file & directory creation and manipulation
– mapping files into physical storage devices
CS4315 A. Berrached:CMS:UHD 12
Basic OS Functions
CS4315 A. Berrached:CMS:UHD 13
OS Structures-Simple Approach
• MS-DOS - written to provide the most functionality in the least space– not divided into modules– Although MS-DOS has some structures, its
interfaces and levels of functionality are not well separated.
• application programs are able to access BIOS routines directly (bypassing DOS).
CS4315 A. Berrached:CMS:UHD 14
OS Structures--UNIX
• UNIX -- modular• UNIX consists of two separate parts:
– System programs (Shells and commands, compilers and interpreters, system libraries)
– The kernel: part of OS that is most critical to its correct operation (trusted)
• provides CPU scheduling, memory management, file management, and other operating system functions.