[作業系統] 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架構圖如下


從圖中可以看出,register、cache、main memory都是volatile,斷電後,資料會消失;而SSD、magnetic disk、optical disk都是nonvolatile,斷電後,資料仍保存。


※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



留言

手刀來看看