課本:http://codex.cs.yale.edu/avi/os-book/OS8/os8c/index.html
看起來不錯的外國課程筆記:https://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/
multiprocessor system的三個優勢
multi-processor system的種類(二種)
asymmetric multiprocessing
每個processor有各自的task。由master processor分派task給slaveSMP
RPCs
:remote procedure calls
throughput
:每單位時間完成的process數turnaround time
:從submit到執行完成所需的時間wating time
:在ready中所花的時間總和response time
:從submit到產生第一個response的時間dispatcher
:將CPU的控制權移給short-term scheduler
功能:context switch, switch to user mode, 跳至user process中的proper location to restart programdispatch latency
:dispatcher停止一個process並啟動另一個process所需的時間long-term scheduler (job scheduler)
:由pool中選出process,放至memory上以候執行short-term scheduler
:選出memory上ready的process,並allocate CPU給它
對付deadlock的幾個方法
logical address
:由CPU產生的記憶體位置physical address
:compile time & load time產生的logic & physical address相同,但execution time產生的則不同
=> 此時的logical address稱為virtual address
logical address space
:由程式產生的logical address的集合physical address space
:對應logical address space的physical space的集合memory-management unit (MMU)
:在run-time mapping virtual & physical address的硬體relocation register
: base registerdynamic loading
:routine要被called才會被load到記憶體
FCFS
SSTF (shortest-seek-time-first)
找離當前位置最近的SCAN
先往一個方向走,到底再換邊C-SCAN (circular SCAN)
類似SCAN,但到底的話會從另一端(從頭)繼續以相同的方向重新開始LOOK
& CLOOK
不用到底就會調頭
distributed system
:由通訊網路連結起來的processor的集合。processor並不共享記憶體和clock
site
:機器所在的位置
host
:在某個site的一個特定的系統。一般來說一site一host
server
:持有在別的site上的host的資源
建造distributed system的四個理由
load sharing
:一個site把overloaded job移到light loaded site的動作
computation migration
:將計算做跨系統的轉移
process migration
:process不一定在它被發動的site執行
service
:在一至多台機器上運行的軟體單位,提供特定種類的功能給client
server
:在單一機器上運行的service software
client
:一個以一組操作(client interface)觸發service的process
naming
:logical & physical物件的mapping
file replication
location transpaency
:無法由檔案名稱得知其實體位置
location idependence
:當實體位置改變,檔案名稱無需改變
file migration