Académique Documents
Professionnel Documents
Culture Documents
Introduction
Copyright 2008
Introduction
1.2
1.3
1.4
Abstract views
We use abstract views to present design of OS
components. It has two benefits:
Managing complexity
Abstract view contains only selected features of a system
1.5
Goals of an OS
Fundamental goals of an operating system
Efficient use of computer resources
User convenience
Noninterference in the activities of its users
1.6
Efficient Use
OS ensures efficient use of memory, CPU, and I/O
devices
Poor efficiency can result if a program does not use a
resource allocated to it
1.7
User Convenience
1.8
Noninterference
User can face interference in computational activities
Program execution or operation of OS can be disrupted
by actions of other persons
OS prevents interference by allocating resources for
exclusive use of programs and OS services, and preventing
illegal accesses to resources
1.9
Operation of an OS
Principal functions of OS:
Program management
Resource management
Security and protection
1.10
Operation of an OS (continued)
1.11
Program Management
OS can interleave execution of programs on a fast CPU
Scheduling decides which program should be given the
CPU at any time
Policy influences efficient CPU use and user service
Preemption: Taking away the CPU from a program
1.12
Resource Management
Resource allocations and deallocations can be done
with a resource table
Entry: name, address and status of a resource unit
Constructed by the boot procedure, maintained during
operation
1.13
Pool-based
OS allocates resources from a pool of resources
Consults table and allocates the resource if it is free
1.14
1.15
1.16
1.17
1.18
1.19
1.20
1.21
Scheduling (Chapter 7)
How to achieve effective utilization
Deadlocks (Chapter 8)
See Figure 1.7
1.22
1.23
1.24
Management of Memory
Part 3 (Chapters 11-12) covers memory management
Memory reuse techniques and noncontiguous memory
allocation (Chapter 11) and virtual memory (Chapter 12)
1.25
1.26
1.27
1.28
1.29
Summary
OS services programs simultaneously by allocating
some of the resources to each program and
interleaving their execution on the CPU
Requirements to ensure effectiveness of computing:
Efficient use
User convenience
Non-interference
Primary functions
Management of programs
Management of resources
Security and protection
1.30