Upload
ying-chieh-chen
View
14
Download
0
Embed Size (px)
DESCRIPTION
Operating System Concepts 8/e
Citation preview
page fault
(1) reference
(2) trap
(3) page is on backing store
(4) bring in missing page
(5) reset page table
(6) restart instruction
1. TBL 1 (0 1
) 0
2.
3. (second storage)(program)
4.
5. 1(
)
6.
1. Non-preemptive scheduling
process CPU CPU process terminate process
waiting state
(p.186)Once the CPU has been allocated to a process, the process keeps the CPU until it
releases the CPU either by terminating or by switching to the waiting state.
2. Deadlock
(: Circular
Waiting) CPU
Dead Lock
Mutual exclusion ()
Hold and wait ()
No preemption ()
Circular waiting ()
(p.283)In a multiprogramming environment, several processes may compute for a finite
number of resources. A process requests resources; if the resources are not available at
that time, the process enters a waiting state. Sometimes, a waiting process is never again
able to change state, because the resources it has requested are held by other processes.
3. Dynamic loading
(routine)
(p.320) With dynamic loading, a routine is not loaded until it is called. All routines are kept
on disk in a relocatable load format. The main program is loaded into memory and is
executed. When a routine needs to call another routine, the calling routine first checks to
see whether the other routine has been loaded. If it has not, the relocatable linking loader
is called to load the desired routine into memory and to update the program's address
tables to reflect this change. Then control is passed to the newly loaded routine.
4. External fragmentation
process (Block)
process
process
(p.327) As processes are loaded and removed from memory, the free memory space is
broken into little pieces. External fragmentation exists when there is enough total memory
space to satisfy a request but the available spaces are not contiguous; storage is
fragmented into a large number of small holes.
5. Swapping
process process (swapped)
(backing store)
(p.322) A process must be in memory to be executed. A process can be swapped
temporarily out of memory to a backing store and then brout back into memory for
continued execution.
6. Demand paging
(p.361) With demand-paged virtual memory, pages are only loaded when they are
demanded during program execution; pages that are never accessed are thus never loaded
into physical memory.
7. Virtual memory
(p.357) Its a technique that allows the execution of processes that are not completely in
memory. Virtual memory abstracts main memory into an extremely large, uniform array of
storage, separating logical memory as viewed by the user from physical memory.