[作業系統] 1-1 Computer-System Organization
※作業系統架構
特點:
1. CPU和各種device controller透過相同的bus共享memory。
2. 為了考量到應用層面的彈性,Controller通常不會整合在disk, mouse, keyboard, printer等設備。
3. Controller會先把data給memory,再透過memory給CPU。CPU無法直接讀取硬碟資訊。
4. I/O device和CPU可同時運作,除非bus被占用。
區分Device controller和Device driver
Device driver是OS的code,用來讓device和OS溝通。
Device controller是chips或hardware units,作為I/O bus和OS的媒介。
※DMA (Direct Memory Access) Structure
1. 使用high speed傳輸資料,近似於memory讀取速度。
2. 由device controller搬運blocks of data從buffer storage到memory,過程中CPU不會參與運作。
3. Interrupt是per bolck產生,而不是per byte。
※Storage Structure
1. Main memory
唯一可由CPU直接access的大型儲存裝置,CPU有指令集,像是save, load。具有random access(隨機讀取)和volatile(揮發)兩大特點。
Random access - 資料可隨機讀取,不一定要按照順序讀取。
Volatile - 電源關閉後,資料會消失。
2. Secondary storage
因為main memory具有volatile的特性,所以需要secondary storage當作large nonvolatile storage capacity,也就是說,電源關閉後,資料仍然存在。
具有以下兩種材質
a. Magnetic disk (磁性圓盤)
圓盤上切成同心圓 -> track
Track上的一小段 -> sector
由disk controller決定device和電腦之間的互動
b. Solid-state disk
速度比magnetic disk快
具有various technology並較為普及
※Storage Hierarchy
Storage system:以speed, cost, volatility作為分類。
Caching:將資訊copy到fast storage system。例如:main memory可以視為一個cache for secondary system。
Device driver:每個device controller可管理I/O,在controller和kernel之間提供一致的介面。
Storage-Device Hierarchy架構圖如下
※Caching
- 可在電腦上有很多層級的表現,例如hardware, software, OS等等
- 資料暫時從slower到faster storage,faster storage (cache)先檢查資料在哪裡
如果資料在cache,可直接使用
如果資料不在cache,需要把資料從slower storage搬過來
- Cache容量會小於被抓取的storage (反過來想就是,如果cache容量比要抓取的storage容量還大,那直接用storage就好,速度更快。)
※Computer-System Architecture
- 大部分系統只有一個general-purpose或special-purpose的處理器
- Server等級的電腦可能有多個CPU,又稱為parallel system, tightly-coupled system
優點:
1. Throughput較高 (單位時間完成的工作數量較多)
2. Economy of scale (規模經濟)
例如:1個CPU效能需要提升2倍,和使用2個CPU相比,後者較容易達成
3. 增加可靠度
-graceful degradation (多個CPU使用可降低使用風險)
-fault tolerance (FT容錯性,1個CPU損毀,有另1個CPU仍可使用)
※How a Modern Computer Works
※Symmetric Multiprocessing Architecture
※Dual-Core Design
留言
張貼留言