User goals – operating system should be convenient to use, easy to learn, reliable, safe, and fast.
System goals – operating system should be easy to design, implement, and maintain, as well as flexible.
Types of System Calls
- Process control
- create/terminate process
- File management
- create/delete file
- Device management
- request device
- Information maintenance
- set time and date
- Communications
- create/delete communication connection
- Protection
- set permission
Additional Operating System Functions
- to ensure efficiency system operations
- Resource allocation
- Accounting
- Protection and security
System Calls
provide the interface between arunning program and the operatingsystem
- 1. pass the parameter in registers
- 2. parameters stored in a block, ortable, in memory, and address of blockpassed as a parameter in a register
- 3. parameters placed, or pushed, ontothe stack by the program and poppedoff the stack by the operating system
Operating System Services
- User interface
- Program execution
- I/O operations
- File-system manipulation
- Communications
- Error detection
Operating System Design
Design and Implementation of OS not “solvable”, but some approaches have proven successful.
Start by defining goals and specifications
The design of the system will be affected by the choice of hardware and the type of system: batch, time shared, single user, multiuser, distributed, real time or general purpose.
Benefits of a Microkernel Organization
- Extensibility
o Allows the addition of new services
- Flexibility
o New features added
o Existing features can be subtracted
- Reliability
o Modular design
o Small microkernel can be rigorouslytested
- Portability
o Changes needed to port the systemto a new
processor is changed in the microkernel- not in
Layered Approach
- In layered approach, the Os is dividedinto a number of layers, each built ontop of lower layers.
- Advantage
- Simplicity of construction anddebugging
- Disadvantage
- The careful definition and
interaction of the layers
- Less efficient
- Layered Operating System
Microkernel
- small operating system core
- contain only essential core operatingsystem function
Many services traditionally included inthe operating system are now external subsystems
- Device drivers
- File systems
- Virtual memory manager
- Windowing system
- Security servicesSecurity services
Communication Models
- Message passing
- In message passing
model, communication takes place by
means of messages exchanged
between the processes.
- Shared memory
- In shared memory model, a region ofmemory that is shared by processorcan exchange information by readingand writing data to the shared region.