AI OS Ch02
AI OS Ch02
Chapter 2: Operating-System
Structures
Operating Systems 2
Operating System Services (1/4)
Operating Systems 3
Operating System Services (2/4)
Operating Systems 5
Operating System Services (2/4)
Operating Systems 6
Operating System Services (3/4)
Operating Systems 7
Operating System Services (3/4)
Operating Systems 9
User Operating System Interface (1/5)
Operating Systems 10
User Operating System Interface (2/5)
Operating Systems 11
User Operating System Interface (3/5)
Operating Systems 12
User Operating System Interface (4/5)
• Touchscreen Interfaces
• Touchscreen devices require new interfaces.
➢ Mouse not possible or not desired.
➢ Actions and selection based on gestures.
➢ Virtual keyboard for text entry.
• Voice commands.
Operating Systems 13
User Operating System Interface (5/5)
Operating Systems 14
System Calls (1/6)
Operating Systems 16
System Calls (3/6)
Operating Systems 17
System Calls (4/6)
Operating Systems 18
System Calls (5/6)
Operating Systems 19
System Calls (6/6)
Operating Systems 20
Types of System Calls (1/6)
1. Process control
➢ create process, terminate process
➢ end, abort
➢ load, execute
➢ get process attributes, set process attributes
➢ wait for time
➢ wait event, signal event
➢ allocate and free memory
➢ Debugger for determining bugs, single step execution
➢ Locks for managing access to shared data between processes
Operating Systems 21
Types of System Calls (2/6)
2. File management
➢ create file, delete file
➢ open, close file
➢ read, write, reposition
➢ get and set file attributes
Operating Systems 22
Types of System Calls (3/6)
3. Device management
➢ request device, release device
➢ read, write, reposition
➢ get device attributes, set device attributes
➢ logically attach or detach devices
Operating Systems 23
Types of System Calls (4/6)
4. Information maintenance
➢ get time or date, set time or date
➢ get system data, set system data
➢ get and set process, file, or device attributes
Operating Systems 24
Types of System Calls (5/6)
5. Communications
➢ create, delete communication connection
➢ send, receive messages if message passing model to host name
or process name
➢ From client to server
➢ Shared-memory model create and gain access to memory
regions
➢ transfer status information
➢ attach and detach remote devices
Operating Systems 25
Types of System Calls (6/6)
6. Protection
➢ Control access to resources
➢ Get and set permissions
➢ Allow and deny user access
Operating Systems 26
System Programs (1/5)
Operating Systems 28
System Programs (3/5)
• File modification
➢ Text editors to create and modify files.
➢ Special commands to search contents of files or perform
transformations of the text.
Operating Systems 29
System Programs (4/5)
Operating Systems 30
System Programs (5/5)
• Background Services
➢ Launch at boot time.
• Some for system startup, then terminate.
• Some from system boot to shutdown.
➢ Provide facilities like disk checking, process scheduling, error
logging, printing.
• Application programs
➢ Don’t pertain to system.
➢ Run by users.
➢ Not typically considered part of OS.
Operating Systems 31
OS Design and Implementation (1/3)
Operating Systems 32
OS Design and Implementation (2/3)
Operating Systems 33
OS Design and Implementation (3/3)
• Much variation
➢ Early OSes in assembly language.
➢ Then system programming languages like Algol, PL/1
➢ Now C, C++
Operating Systems 35
Operating System Structure (2/8)
Operating Systems 36
Operating System Structure (3/8)
Operating Systems 37
Operating System Structure (4/8)
Operating Systems 38
Operating System Structure (5/8)
Operating Systems 39
Operating System Structure (6/8)
Layered Approach
Operating Systems 40
Operating System Structure (7/8)
Operating Systems 41
Operating System Structure (7/8)
Operating Systems 42
Operating System Structure (8/8)
messages messages
microkernel
hardware
Operating Systems 43
Dr. Marwa Elseddik
Operating Systems 44