Академический Документы
Профессиональный Документы
Культура Документы
System Components
System Calls
System Programs
System Structures
Virtual Machines
System Generation
Sreedhar Potla 1
System Components
Process Management
Main–Memory Management
File Management
Networking
Protection System
Sreedhar Potla 2
System Components
Process
Program in execution.
Active entity.
Unit work in a system.
Ex: Time-shared user program
Word-processing program
System task
Sending output to printer.
Needs certain resources.
CPU time
Memory
Files
I/O devices
Types
System processes (execute system code).
User processes (execute user code).
Program Counter
Specifies the next instruction to execute.
Sreedhar Potla 3
System Components
Process Management
Activities
Create and delete both user and system processes.
Sreedhar Potla 4
System Components
Main–Memory Management
Activities
Keep track of which parts of memory are currently being used and
by whom.
Sreedhar Potla 5
System Components
File
Collection of related information.
Types
Free-form (Text files)
Fixed-form
Data files
Numeric
Alphabetic
Alphanumeric
Sreedhar Potla 6
System Components
File Management
One of the most visible components of operating system.
Activities
Create and delete files.
Sreedhar Potla 7
System Components
Sreedhar Potla 8
System Components
Activities
Free space management
Sreedhar Potla 9
System Components
Networking
Distributed System
Collection of processors
do not share
Memory
Peripheral devices
Clock.
Sreedhar Potla 10
System Components
Protection System
Mechanism for controlling access of programs, processes or users to
the resources.
Improve reliability.
Sreedhar Potla 11
Operating System Services
OS provides no. of services.
Lowest level – System calls
Allow running program to make requests from the OS directly.
Higher level – Command interpreter or Shell
User issues request without writing program.
Categories
Program Control
Status requests
I/O requests
Program execution
I/O operations
File system manipulation
Communications
Error detection
Resource allocation
Accounting
Protection
Sreedhar Potla 12
Operating System Services
Program execution
System must be able to
load program into memory.
run that program.
Sreedhar Potla 13
Operating System Services
I/O operations
OS must provide means to do I/O.
Sreedhar Potla 14
Operating System Services
Sreedhar Potla 15
Operating System Services
Communications
One process needs to exchange information with another process.
Message passing
Packets of information moved between processes by OS.
Sreedhar Potla 16
Operating System Services
Error detection
Resource allocation
Accounting
Record keeping may be used.
Protection
Ensures that all access to system resources is controlled.
Sreedhar Potla 17
System Calls
Major categories
Process control
File management
Device management
Information maintenance
Communications
Sreedhar Potla 18
System Calls
Process control
End, abort
Sreedhar Potla 19
System Calls
File management
Create file, delete file
Sreedhar Potla 20
System Calls
Device management
Request device, release device
Sreedhar Potla 21
System Calls
Information maintenance
Get time or date, set time or date
Sreedhar Potla 22
System Calls
Communications
Create, delete communication connection
Sreedhar Potla 23
System Programs
Categories
File management
Status information
File modification
Programming language support
Program loading and execution
Communications
Sreedhar Potla 24
System Programs
File management
Create
Delete
Copy
Rename
Print
Dump
List
Manipulate files and directories.
Sreedhar Potla 25
System Programs
Status information
Date
Time
Amount of available memory / disk space
No. of users
…
Sreedhar Potla 26
System Programs
File modification
Text editors
To create and modify the content of files stored on disk or tape.
Sreedhar Potla 27
System Programs
Assemblers
Interpreters
Sreedhar Potla 28
System Programs
Relocatable loaders
Linkage editors
Overlay loaders
Debugging systems
Sreedhar Potla 29
System Programs
Communications
Provide mechanism for creating virtual connections among
processes, users and different computer systems.
Allow users to
Send messages to one another’s screens.
Browse web pages.
Send electronic mail messages.
Log in remotely.
Transfer files from one machine to another.
Sreedhar Potla 30
System Structures
Types
Simple Structure
Layered Approach
Microkernels
Sreedhar Potla 31
System Structures
MS-DOS Layer Structure
Sreedhar Potla 32
System Structures
UNIX System Structure
Sreedhar Potla 33
System Structures
Layered Approach
Operating system broken up into no. of layers (levels).
Main advantage
Modularity
Sreedhar Potla 34
System Structures
Layered Approach
Microkernel approach
Structures OS by removing all nonessential components from the
kernel.
Implements nonessential components as system-level and user-level
programs.
Typically provides minimal process and memory management.
Main function
Provides communication facility (message passing) between
the client program and the various services running in user
space.
Benefits
Ease of extending OS.
Provides more security and reliability.
Examples
Tru64 UNIX
QNX (RTOS)
Sreedhar Potla 36
Virtual Machines
Provides interface.
Major difficulty
Cannot allocate disk drive to each virtual machine.
Sreedhar Potla 37
Virtual Machines
Sreedhar Potla 38
Virtual Machines
Implementation
Difficult to implement.
Modes
Virtual user mode.
Virtual monitor mode.
Sreedhar Potla 39
Virtual Machines
Benefits
Provides robust level of security.
Sreedhar Potla 40
Virtual Machines
Java
Very popular object oriented language.
Sreedhar Potla 41
Virtual Machines
Java Virtual Machine (JVM)
Sreedhar Potla 42
Virtual Machines
Java Virtual Machine (JVM)
Sreedhar Potla 43
Virtual Machines
Also ensures that the bytecode does not perform pointer arithmetic.
Sreedhar Potla 44
Virtual Machines
Java interpreter
Interprets bytecodes one at a time.
Just-in-time (JIT) compiler.
Sreedhar Potla 45
System Design and Implementation
Design Goals
Implementation
Sreedhar Potla 46
System Design and Implementation
Design Goals
Define the goals and specifications of the system.
User goals
System should be
convenient and easy to use
easy to learn
reliable
safe
fast.
System goals
OS should be
Easy to design
Implement
Maintain
Flexible
Reliable
Error free
Efficient.
Sreedhar Potla 47
System Design and Implementation
Mechanisms
Determine how to do something.
Ex: Timer construct (Mechanism for ensuring CPU protection)
Policies
Determine what will be done.
Ex: How long the time is to be set for a particular user?
Sreedhar Potla 48
System Design and Implementation
Implementation
Master Control Program (MCP)
Burroughs Computers.
Written in variant of ALGOL.
Primos
Prime computers.
Written in dialect of FORTRAN.
Sreedhar Potla 49
System Generation (SYSGEN)
Sreedhar Potla 50