0% found this document useful (0 votes)
38 views

Operating System Structure Operating System Structure

The document discusses operating system structure and components. It describes how multiprogramming and timesharing allow efficient use of resources by switching between multiple jobs. The operating system protects system resources through dual mode operation, restricting instructions in user mode. It also provides memory and I/O protection through address registers and ensures fair CPU usage through interrupt timers. Key OS functions for process and memory management are outlined.

Uploaded by

David
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views

Operating System Structure Operating System Structure

The document discusses operating system structure and components. It describes how multiprogramming and timesharing allow efficient use of resources by switching between multiple jobs. The operating system protects system resources through dual mode operation, restricting instructions in user mode. It also provides memory and I/O protection through address registers and ensures fair CPU usage through interrupt timers. Key OS functions for process and memory management are outlined.

Uploaded by

David
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

CMPT 300 Chapter 1 Page 1 CMPT 300 Chapter 1 Page 2

Operating System Structure Operating System Structure


ì Multiprogramming is needed for efficiency ì Timesharing (multitasking) is logical extension in which CPU
ì A single user cannot keep CPU and I/O devices busy at all switches jobs so frequently that users can interact with each job
times! while it is running, creating interactive computing
ì Multiprogramming organizes jobs (code and data) so CPU ì Response time should be < 1 second
always has one to execute ì If each user has at least one program executing in
ì A subset of total jobs in system is kept in memory memory [
ì ì If several jobs are ready to run at the same
time [
ì When it has to wait (for I/O for example), OS switches to ì If processes don’t fit in memory, swapping moves them in
another job and out to run
ì Virtual memory allows execution of processes not
completely in memory

CMPT 300 Chapter 1 Page 3 CMPT 300 Chapter 1 Page 4

Hardware Protection – Dual Mode System Calls


ì Sharing system resources requires OS to ensure that an ì System calls are used to request services from the OS
incorrect program cannot cause other programs to ì E.g. give me the current date/time, open a file for reading, etc.
execute incorrectly. ì Executing a system call changes mode to kernel, return from call
ì Dual-Mode operation: Provide hardware support to resets it to user
differentiate between at least two modes of operations:
1. User mode:
2. Monitor mode (also kernel mode or system mode):

ì Instruction set is restricted in user mode


ì A program, running in user mode, attempting to execute a
privileged instruction will cause a trap
CMPT 300 Chapter 1 Page 5 CMPT 300 Chapter 1 Page 6

Hardware Protection – Hardware Protection –


I/O & Memory Protection Memory Protection
ì We must ensure that I/O devices are protected as well, ì In order to have memory protection, add two registers
to have I/O protection we ensure: that determine the range of legal addresses a program
ì may access:
ì
ì We must also ensure that processes (jobs) are not able
to access each other’s memory space
ì User jobs must also not be able to access the interrupt
handlers or interrupt vectors
ì

CMPT 300 Chapter 1 Page 7 CMPT 300 Chapter 1 Page 8

Hardware Protection – Hardware Protection –


Memory Protection CPU Protection
ì Checking memory addresses in hardware: ì We must also ensure that no one job is using up all the
CPU cycles.
ì Timer – interrupts computer after specified period to
ensure operating system maintains control.
ì

ì The timer is commonly used to implement time


sharing.
CMPT 300 Chapter 1 Page 9 CMPT 300 Chapter 1 Page 10

System Components – System Components –


Process Management Process Management
ì A process is a program in execution. It is a unit of work within the ì The operating system is responsible for the following
system. A program is a passive entity, a process is an active entity.
activities in connection with process management.
ì A process needs resources to accomplish its task
ì Process creation and deletion
ì E.g. CPU, memory, I/O devices, files
ì process suspension and resumption
ì Process termination requires reclaiming of any reusable resources
ì Provision of mechanisms for:
ì A single-threaded process has one program counter specifying
location of next instruction to execute
ì
ì A process generally executes instructions sequentially until
completion ì
ì A multi-threaded process has one program counter per thread
ì
ì Typically a system has many processes, some user, some operating
system running concurrently on one or more CPUs

CMPT 300 Chapter 1 Page 11

System Components –
Main Memory Management
ì Memory is a large array of words or bytes, each with
its own address.
ì Main memory is a volatile storage device.
ì The operating system is responsible for the following
activities in connection with memory management:
ì Keep track of which parts of memory are currently being
used and by whom.
ì Decide which processes to load when memory space
becomes available.
ì

You might also like