---
# System prepended metadata

title: 作業系統導論

---

# ==第五章==
### 一、問答題
1. 請舉例說明為什麼不需要把整個程式同時載入到主記憶體中。
:::warning
(p.5-2)
在行程執行過程中的任何一個時間點，不會同時需要用到所有程式碼與資料段，因此將行程的頁面都放在輔助記憶體上，只將正在使用的幾個頁面載入主記憶體中，使每個行程佔據較少的記憶體，使主記憶體可以同時執行更多程式。
:::
2. 請說明不把整個程式載入到主記憶體中有哪些好處。
:::warning
>[!Important]
1.節省主記憶體空間
2.減少啟動時間
3.更高的資源利用率
4.支持動態更新與按需加載
:::
3. 請說明系統分頁錯誤的處理方式。
:::warning
(p.5-5的圖5-1)
1.發生分頁錯誤
2.行程移至等待佇列
3.判斷是否為非法的記憶體存取位址 -> 是，終止行程 / 否，下一步。
4.是否有空頁框
5.將要移入的頁面寫入選擇的頁框
6.修改頁表
7.重新啟動因為分頁錯誤而被中斷的指令
:::
4. 請說明需求分頁機制。因為作業系統是被動的，您的答案中還必須說明作業系統如何知道程式的需求。
:::warning
(p.5-3)
將行程暫時沒有用到的頁面打包放在輔助記憶體中，等到要執行某個頁面時，如果需要存取的某個頁面不在主記憶體中時，作業系統會負責將該頁面拷貝至主記憶體中。
:::
5. 如何評估需求分頁的效能?
:::warning
頁面的錯誤率、頁面的置換開銷、系統的吞吐量、程式的執行時間、資源利用率
:::
6. 系統會在何時執行頁面替換?
:::warning
發生分頁錯誤、實體記憶體已滿時
:::
7. 請說明何謂 Belady 異常現象?哪種頁面替換演算法不會有 Belady 異常現象?
:::warning
>[!Important]
(p.5-21)
(1)主記憶體分給行程的頁框數目越多，發生分頁錯誤的數目卻更多的現象。
(2)LRU演算法
:::
8. 最久未用演算法的近似方法有哪些?
:::warning
（p.5-12)
老化演算法、二次機會演算法
:::
9. 是否存在有最佳替換演算法?為什麼?
:::warning
(p.5-9)
只能用來作為比較的基準，在實作上因為沒有辦法精確地知道未來究竟會怎樣，所以無法完全達到最佳演算法的效果。
:::
10. 為何頁框的最少配置數量與 CPU 結構及指令架構有關?
:::warning
(p.5-23)
頁框的最少配置數量是由硬體的 CPU 結構與指令架構所決定。
如果所執行的指令本身需要參考到兩個頁面，但是行程總共只配置到一個頁框，則會不斷發生分頁錯誤，行程無窮的循環，而無法完成整個指令載入。
:::
11. 請說明平均配置頁框方式的缺點?
:::warning
1. 浪費資源：分頁需求小的行程，不需那麼多的頁框；
2. 性能下降：分頁需求大的行程分配到比較小的頁框，頻繁發生分頁錯誤；
3. 不適應動態變化：行程可能依需求有所改變，但已獲得相同的頁框配置；
4. 不考慮程式優先級：無論行程的等級與重要性，都獲得一樣的頁框。
:::
12. 整體範圍的頁框配置會有什麼問題?
:::warning
（p.5-25）
1. 行程受其他行程影響進而發生分頁錯誤；
2. 被替換掉的行程的頁面分配頁框總數減少，增加分頁錯誤機率；
3. 程式執行時間易受執行環境影響。
:::
13. 請說明輾轉現象發生的原因。
:::warning
(p.5-19)
行程用來處理分頁的時間多於執行指令的時間。
當記憶體頁框全部被佔用，如果有任一頁面需要載入，作業系統就必須將另一頁面移出記憶體。
若不幸地，接著就要用到剛移出的頁面，則作業系統就必須再度進行分頁錯誤處理，以便將該頁面再移入記憶體中。
如經常發生這種情況，行程只是忙著處理分頁，幾乎沒辦法完成本身任務的執行。
:::
14. 何謂工作集?為什麼工作集合可以用來解決輾轉現象?
:::warning
(p.5-26)
工作集：局部性原則保證在任意時刻，行程將趨向於在一個較小的活動頁面集合上工作，這個集合叫做工作集（working set）。
(p.5-27)
如果工作集中的所有頁面都已經載入記憶體，則只要行程還沒有移動到下個局部區域，就不太會發生分頁錯誤，也能夠避免輾轉現象的發生。
:::
15. 請說明如何利用分頁錯誤頻率來解決輾轉現象。
:::warning
(p.5-32)
檢查行程的分頁錯誤頻率，藉由設定行程分頁錯誤頻率的上、下限，作業系統可以在超過上限時增加配置的頁框數，而在低下時回收部分的頁框。
:::
16. 何謂預先分頁?在什麼情況下預先分頁不能增加效能?
:::warning
(p.5-31)
(1)作業系統可以在行程載入或被置換進入主記憶體時，預先將工作集中的所有頁面先行載入。
(2)如果移入的頁面沒有被使用，則它所佔用的頁框就浪費掉了。
:::
17. 請舉例說明為何程式結構會影響分頁錯誤的發生次數。
:::warning
（p.5-34）
```
for (j=0; j<64; j++)
    for (i=0; i<64; i++)
        N[i][j] = 0;
```
因為N[i][j]與N[i+1][j]位在不同頁面，所以內層迴圈每執行一次就會發生一次分頁錯誤，整個程式兩層有迴圈，總共會造成64x64次分頁錯誤。

將程式改寫:
```
for (i=0; i<64; i++)
    for (j=0; j<64; j++)
        N[i][j] = 0;
```
整個程式只會發生64次分頁錯誤。
:::
18. 請說明使用較大頁面與較小頁面的優缺點。
:::warning
（p.5-17）
|   | 較大頁面 | 較小頁面 |
| -------- | -------- | -------- |
| 優點     | 減少頁表大小、減少分頁表碎片、頁面移出/入效率高     | 內部碎片小、減少移出/入夾帶無關部分、避免儲存無用資料    |
| 缺點     | 內部碎片大、增加頁面置換開銷     | 分頁表碎片高、增加頁表查找時間    |

:::
19. 請說明使用多層分頁有何好處。
:::warning
（p.5-36）
* 減少分頁表大小
* 提高分頁表查找效率
* 避免配置完全連續空間
* 維持記憶體管理的彈性和擴展性
:::

# ==第六章==
### 一、問答題
1. 檔案主要的屬性有哪些?
:::info
(p.6-6)
名稱、型態、位置、大小、保護、擁有者、日期資訊
:::
2. 試列舉數種常用的副檔名並分別解釋其代表的檔案類型。
:::info
(p.6-5)
執行檔 exe, bin, com
原始程式檔 c, cpp, bas
函式庫 lib, dll
文字檔 txt, doc, jnt
圖形檔 gif, jpg, bmp
影片檔 mpg, avi
串流檔 asf, rm, wmf
壓縮檔 rar, zip
音效檔 wav, mp3, mid
網頁檔 html, htm, xml
:::
3. 列出檔案的存取權限並說明如何保護檔案。
:::info
(p.6-38)
存取權限分為「讀取」、「寫入」、「執行」。
* 讀取：可讀取此一檔案的實際內容，如讀取文字檔的文字內容等；
* 寫入：可以編輯、新增或者是修改該檔案的內容(但不含刪除該檔案)；
* 執行：該檔案具有可以被系統執行的權限。
:::
4. 為何檔案系統中的檔案需要加上存取保護的機制?
:::info
(p.6-37)
限制誰有存取檔案，以及有哪些存取權利，確保個別使用者或作業系統的重要檔案，不會被未經授權的其他使用者存取或破壞。
:::
5. 利用索引存取來讀取檔案中的資料有何好處?
:::info
(p.6-35)
1.增加檔案存取上的便利性；
2.減少資料搜尋時間；
3.檔案龐大時建立多層索引結構，改進存取速度。
:::
6. 目錄在檔案系統中所扮演的角色為何?
:::info
(p.6-2)
「包含檔案系統物件名稱的物件」
:::
7. 磁碟與分割區有何不同?兩者之間的關係為何?
:::info
(p.6-8)
磁碟為一種次級儲存裝置，由於磁碟容量通常都相當大，為了便於管理，會將一個實體磁碟裝置分割成一或多個邏輯上的磁碟，即為分割區。
:::
8. 大部分的檔案系統是採用哪種目錄結構?
:::info
層狀結構
:::
9. 何謂分割區的掛載?
:::info
每個檔案系統都有獨立的區塊等資訊，這個檔案系統要能夠連結到目錄樹才能被我們使用，將檔案系統與目錄樹結合的動作稱為『掛載』。
:::
10. 當圖狀目錄結構中出現封閉環時，可能會造成什麼問題?
:::info
(p.6-30)
無窮迴圈
:::
11. 可用空間的管理主要有哪幾種方法?
:::info
(p.6-54 ~ 6-55)
位元映射、鏈結串列、計數法
:::
12. 何種紀錄方法在可用空間的區塊過於分散時最浪費紀錄空間?
:::info
(p.6-56)
計數法
:::
13. 實體區塊的配置方法有哪幾種?
:::info
(p.6-46)
連續式配置、鍊結式配置、索引式配置
:::
14. 利用鏈結串列實作檔案配置的方法有何優缺點?
:::info
(p.6-49)
優點：
1.避免外部碎片的問題；
2.如果檔案長度增加，不須重新搬移檔案。

缺點：
1.當個區塊過於分散時，磁碟讀寫頭可能需移動長距離才能存取到下個區塊，因而降低存取的效率。
2.只能提供循序存取。
:::
15. 何謂混合的索引式檔案配置?
:::info
(p.6-52)
在索引區塊中同時提供直接索引與間接索引，當檔案長度較小時，可利用直接索引指向檔案的儲存區塊；檔案較大時，再利用間接索引建立第二層或更多層的索引。
:::
16. 試說明循序存取、隨機存取與索引存取等三種檔案存取方式的差別。
:::info
>[!Important]
(p.6-33 ~ 6-35)
* 循序存取：依循著資料在檔案中的存放順序進行存取。
* 隨機存取：使用者可以在任意時間點，隨意存取檔案中任意的邏輯位址。
* 索引存取：利用邏輯紀錄中的某個欄位作為索引，建立指向特定資料區塊的指標，減少資料搜尋時間。
:::
### 二、選擇題
1. 下面關於這三種主要磁碟空間配置方法: 連續式、鏈結式、和索引式配置方法的敘述，何者有誤:
    ( a ) 連續式配置方法的磁碟搜尋時間優於其他。```(O)```
    ( b ) 連續式配置方法會有外部碎片的問題。```(O)```
    ( c ) 鏈結式配置檔案的隨機存取很沒有效率。```(X，鏈結式配置無法隨機存取)```
    ( d ) 索引式配置必須要儲存索引區塊指標，所以浪費的磁碟空間最大。```(O)```
    ( e ) 檔案配置表( FAT ) 是一種索引式的配置方法。```(X，FAT是一種鏈結式配置)```

# ==第七章==
### 一、問答題
1. 典型的 I/O 埠包含哪4種暫存器?其作用為何?
:::success
(p.7-6)
1. 狀態暫存器：用來表示裝置目前狀態；
1. 控制暫存器：控制裝置的運作模式；
1. 資料輸入暫存器：用來存放要讀入系統的資料；
1. 資料輸出暫存器：用來存放要輸出到裝置的資料。
:::
2. 請說明 DMA 的傳輸步驟。
:::success
(p.7-8) 
當硬體需要傳輸大量資料時，發出DMA需求，系統會將包含傳輸來源位址、目的位與資料量的DMA指令交給DMA控制器，然後繼續進行其他工作，由DMA控制器透過匯流排將記憶體中的資料寫入裝置，或是將裝置中的資料讀到記憶體中。當整批資料傳輸完畢後，DMA控制器發出中斷給CPU。
:::
3. 何謂快取?它與緩衝區有何差異?
:::success
>[!Important]
(p.7-21 ~ 23)
* 快取：用較快速的儲存裝置，來存放較慢速裝置中的資料，以便節省資料存取的時間。
* 緩衝區：一個實體記憶體儲存區，用於在將資料從一個位置移到另一位置時臨時儲存資料。
:::
4. 請舉出 SCAN 和 C-SCAN、以及 LOOK 和 C-LOOK 演算法適用的狀況。
:::success
(p.7-29 ~ 7-30)
SCAN 和 C-SCAN 適合於讀寫請求分佈較為隨機。
LOOK 和 C-LOOK 適合於讀寫請求集中於特定區域。
:::
5. 請說明同位位元的作用為何?
:::success
（google）
判斷遠端裝置是否正確接收所傳輸的資料字元，具錯誤檢測的能力。
:::
6. 為何鏡像磁碟系統能夠增加讀取的效率?
:::success
(p.7-31) 
因為同時寫入資料到兩個磁碟，所以每次能夠存取到的資料是原本的兩倍，同時提高磁碟運算的可靠度。
:::
7. 一般常用的 RAID 有0到5的等級，請簡述個別的內容?
:::success
(p.7-33 ~ 36)
* RAID 0：每個資料條可能包含一或多個磁區，並依序分散在每個磁碟中。
* RAID 1：使用磁碟鏡像技術，提供每個資料條重複的資料複本。
* RAID 2：平行存取技術，所有磁碟都會參與每個I/O請求執行，並且維持同步存取。
* RAID 3：架構與 RAID 2 類似，同樣採用位元等級的資料切條，以及平行存取技術。
* RAID 4：獨立存取技術，每個磁碟成員獨立運作，所以可以平行處理不同的 I/O 需求。
* RAID 5：與 RAID 4 相似，差別在 RAID 5 將同位資料條分散在所有磁碟上。

---or---

| RAID Level |                             內容                              |
| ---------- |:-------------------------------------------------------------:|
|      0     |                 將資料切割並交替寫入多個磁碟                  |
|      1     |               使用鏡像將資料完全複製到兩個磁碟                |
|      2     |               使用bit資料條，並用漢明碼檢查修正               |
|      3     |                使用bit資料條，並用同位位元檢查                |
|      4     |               使用block資料條，並用同位位元檢查               |
|      5     | 使用block資料條，並用同位位元檢查，且同位資料條分散在各磁碟中 |

:::
### 二、選擇題
1. 假設有一組磁碟請求在不同的時間抵達佇列，下面哪種磁碟排程演算法永遠可以用最短的總搜尋時間來完成所有的請求?
    A. SSTF
    B. SCAN
    C. LOOK
    D. 以上皆非
:::success
(D)，不保證得到最佳結果
:::
2. 假設有一個包含四顆磁碟之 RAID-5 磁碟陣列，且資料和同位位元的讀取已經由快取吸收掉了。如果目前沒有磁碟閒置，則可以同時平行寫入的最大與最小的資料條數目為何?
    A. 3跟2
    B. 4跟1
    C. 4跟2
    D. 以上皆非
:::success
(D)，應該是2跟1(不確定)
:::
3. 下列關於磁碟鏡像計數的敘述何者為是:
    A. 增加磁碟的儲存容量
    B. 允許同時讀寫以改善速度
    C. 在磁盤上安置保護條以防止讀寫頭撞擊受損
    D. 建立容錯以改善可靠度
:::success
(D)
:::

# ==第八章==
### 一、問答題
1. 資訊安全的威脅大致上可以分為哪幾類?
:::warning
(p.8-2)
中斷、攔截、篡改、偽造
:::
2. 請說明硬體對作業系統提供的保護。
:::warning
>[!Important]
(p.8-3 ~ 8-4)
* I/O 的保護：使用者要使用I/O時，必須透過系統呼叫來完成；
* CPU 的保護：為避免某個程式蓄意或無意進入無窮迴圈，使得作業系統無法取得控制權，電腦硬體通常會提供計時器，能夠根據設定的時間產生中斷，讓作業系統重新取得控制權，避免使用者行程執行過久；
* 記憶體的保護：利用硬體的基底暫存器或重定址暫存器，防止行程存取到不屬於自己的位址空間；
* 檔案與週邊裝置的保護：針對不同類型的使用者，授予不同的存取權限，以保護檔案或周邊裝置的存取。
:::
3. 哪些程式威脅具有自行複製的能力?
:::warning
(p.8-15)
病毒、蟲毒
:::
4. 請說明常見的程式威脅有哪些?
:::warning
(p.8-13 ~ 8-18)
病毒、蟲毒、特洛伊木馬、間諜軟體、後門、緩衝區溢位、邏輯炸彈、阻絕服務
:::
5. 傳統的電腦病毒可以分為哪幾類?
:::warning
(p.8-13)
開機型、檔案型、開機與檔案混合型、巨集型
:::
6. 為什麼不開啟不明電子郵件中的附加檔案，可以減少電腦中毒的機會?
:::warning
(p.8-14)
因為會偽裝成各種附件，引誘你打開受到感染的附加檔案，遭受病毒感染，或植入木馬程式。
:::
7. 何謂分散式阻絕服務攻擊?
:::warning
(p.8-18)
入侵多台別人的電腦，同時對一台主機發動攻擊(DDoS)
:::
8. 美國國防部制定的電腦系統信任評估標準將電腦系統的安全分為哪4個等級?
:::warning
(p.8-32)
D級: 最低保護
C級: 自訂式保護
B級: 強制式保護
A級: 可驗證之保護
:::
9. 防火牆可以分為哪3類?
:::warning
(p.8-24 ~ 8-26)
封包過濾防火牆、應用層防火牆、線路層防火牆
:::
10. 在防火牆的架設中，設立非軍事區的目的為何?
:::warning
(p.8-26)
將企業內部網路與用來提供網際網路服務的網路區域隔離。
:::
11. 問何謂網路掃描程式?
:::warning
(p.8-23)
能掃描整個網路，產生哪些埠正在使用的詳細報表，進行密碼破解，並檢視伺服器的帳號細節，是進行網路稽核很有用的工具。
:::
