:::

[日記]次回預告

布丁布丁吃布丁

[日記]次回預告

「感謝大家參與這場遊戲,希望能帶給你們充實的時光,下次請大家務必繼續光臨,一起來玩吧。」

我看過很多桌上遊戲的主持人(Game Master),都會以這句話做為遊戲的閉幕。因為很喜歡,所以我也用這句話,為這學期的最後一天,也是最歡樂的一場桌上遊戲畫下句點。

於是,暑假開始了。

放假固然是很開心,也是很麻煩的事情。首先第一個令人苦惱的問題就是搬家。我自認為東西已經不多了,實際上卻還是相當的多,就算是事先搬移、囤積到其他地方去,要搬的東西還是多到看了會令人退縮的境界。

仔細分析看看自己房間的東西,書是最多的──課本、厚得像電話簿一樣的電腦書、數本F誌與十幾本漫畫、跟老妹借來的日文教材。其次要說的話,就是回憶物吧,尤其是最彼的東西,怎樣都有種不想讓它離開身邊的感覺。大概因為這是我的開始...也是我的終點,所以在我可以到達這個終點之前,我不會想要去挑戰終點的。此外的話,我生活使用的雜物還不少,帶起來也很重,身上裝備就算再怎樣實用取向,這點也該檢討檢討了。

跟以往一樣,我只要有摩托車與行李箱,一個人就這樣慢慢搬吧。雖然累,不過去年也是這樣過來的,所以今年也一定可以作得到。

除了搬家之外,國科會的計畫、英文老師的結案、幫隆基整理電腦、自我充實什麼的,也是該開始作業了。啊,還有,要好好適應一下孤單的暑假了。到系上卻沒有同學可以聊天,還蠻寂寞的。

明天是社團送舊啊......這也是這學期最讓我覺得可惜的部份吧,希望送舊的時候還是能跟大家快樂地在一起。

嗯,加油!然後好好地去面對這個暑假吧!

(more...)

[圖資] 網路概論942 猜題之二

布丁布丁吃布丁

[圖資] 網路概論942 猜題之二

請解釋網路區隔(isolate traffic)。

在實體層的訊號增強器(repeater)與集線器(hub)只是將小網路連結而成大網路,但是因為碰撞機會增加,造成區域網路的效能降低。網路區隔(isolate traffic)解決了這個問題,它可以依據傳送封包的目的位置,拒絕或接收封包傳遞到另一個區域網路。並檢查封包是否正確(錯誤偵測),如果另一個區域網路使用不同格式的封包,也可以改變這個封包的格式,轉換成目的地區域網路的格式。屬於資料鏈結層(data-link layer)的橋接器(breidge)與交換器(switch)都具備這些能力。

請問下圖網路中的繞送表格該如何填寫?

記住幾個原則:

  1. 路由器(router)只會記得相鄰自己的區域網路
  2. 目的地與下一個區域網路的意義在於「從這個區域網路,可以找到這個目的地」

用這個規則來判斷,繞送表格就不難填寫了

請問透明式橋接器(transparent bridges)的特色。

  1. IEEE 802.1d
  2. 不需要設定網路拓樸與裝置位置,可直接移除或新增裝置 (相較於fixed route table固定繞送表),透明式橋接器可以自動填寫route table

透明式橋接器主要分成兩個部份

繞送學習 route learning

  1. 收到封包時,檢查封包的來源位置。從來源位置得知該位置可從這個相鄰網路過來
  2. 比對位置與繞送表,以進行修改
  3. 初始化:
    1. 計時器:在繞送表每個位置加上計時器,逾時則刪去該位置
    2. 漫送演算法 (flooding algorithm):如果收到繞送表中未記錄的位置,則將這個封包傳送到所有區域網路。一方面能確定封包能夠送達目的地,另一方面也可以讓所有的橋接器一併更新繞送表

封包重複傳送...被跳過了

請簡述routing information protocol (路徑資訊協定)。

路徑資訊協定是一種自治系統 (automous systems),可以讓路由器之間自動通知到特定網路位置的最短路徑。

路徑資訊協定又分成內部路徑協定(interior routing protocol)與外部協定(exterior routing protocol)。內部路徑協定控制自治系統內的路徑,外部路徑協定則是自治系統外。老師主要是講內部路徑協定。

內部路徑協定是透過不斷地傳送訊息以確定各個路徑的資訊,其路徑距離的單位是hop,意思是跳過幾個路由器的記數。與透明式橋接器的封包學習功能一樣,路由器會給每個位置一個計時器,以刪除過久沒有傳送訊息的位置。

請比較TCP與UDP的不同。

TCP,傳送控制協定(Transmission Control Protocol),是一種連接導向的網路層服務。兩台電腦以TCP連結時,會先執行握手動作(handshake),確認並建立起彼此邏輯上的連結。每一邊都會有流量控管協定(flow control protocol)、確認機制(acknowledge segment)與回報受損的封包以確保可靠的連結。TCP應用在以穩定為目的的服務上,網路上大部分常見的服務都是透過TCP在傳送,例如SMTP (Simple Mail Transfer Protocol,簡單郵件傳送協定,就是送電子郵件用的)、Telnet (網路遠端控制) 、HTTP與FTP。

UDP...

請解釋IP當中的網路位置、機器數量以及子網路遮罩,並得算出在特定子網路遮罩中的網路位置以及機器的節點數量。

何謂DHCP?

何謂DNS?

(more...)

[圖資] 網路概論942 猜題之一

布丁布丁吃布丁

[圖資] 網路概論942 猜題之一

請解釋何謂bit stuffing

HDLC的頁框中,為避免頁框資料與標示頁框起始與終點的旗號(flag)相同,也就是01111110,所以送方在送出五個1的時候,自動填入一個0;而收方則是在收到五個1的時候,自動刪去一個0,以保持平衡。

請解釋DLE的用處

BSC協定的透明資料頁框(transparent data frame)中,為了避免資料與控制訊號相混,因此使用DLE來打開或關閉控制訊號的檢查,在STX(Start of Text)與ETX(End of Text)之前各安插一個DLE。DLE就像是Toggle Switch一樣,第一次讀到DLE的時候,會關閉ETX的檢查,因此不會與ETX相混;直到讀到下一個DLE,才再次打開對ETX的檢查。

然而,這依然會有資料與DLE相同而誤判的情況發生。所以在送出前,要把資料與DLE一樣的地方後面,再加入一個DLE。這種方法稱之為位元組填充(byte stuffing)。

為何乙太網路(Ethernet)的頁框資料長度會有限制?

乙太網路的資料欄有資料的下限與上限。因為乙太網路是使用匯流排(bus)協定的方式在運作,同一時間內只能有一台電腦傳送資料,為了避免通道佔據時間過長,所以設定上限為1500位元組;為了確保CSMA/CD (載體感應多重存取與碰撞偵測)偵測機制能夠正常運作,資料長度必須確保要在頁框最後一個位元送出前聽到碰撞的聲音,所以下限是46位元組。

因為有下限的緣故,不足於下限的話,便用填充欄(pad field)來補足長度。

請簡述Hub的運作原理,請問hub與switch有何差別。

集線器(hub),又稱為多工訊號增強器(multiport repeater),擁有許多個連接埠,可用10BaseT(10Mbps, 基頻, 雙絞線)連接到多台電腦。Hub的外部線是星狀拓樸,但是內部仍是用匯流排協定。當其中一台電腦要傳遞資料給另一台電腦時,必須要先將資料傳送給hub,再由hub複製資料,傳送到每一台電腦。

Hub的優點是可以簡化檢查的工作,可從hub看出哪一台電腦連接失效;hub也保留了匯流排拓樸容易安裝、移除裝置的特色。

switch的構造類似hub的不同,但是hub的傳送資料是傳遞給所有電腦,這也包括了不相干的電腦,因而提高網路阻塞的時間、增加碰撞的機會;swtich則是只傳送給目標的電腦,而不會造成無浪費。

請解釋100BaseTX加快網路速度的方法

在10Mbps乙太網路中,是使用Manchester自我同步碼傳送資料。如果要增加傳送的資料量,而加快Manchester碼的頻率的話,也會造成太高的噪音。

因此在100BaseTX當中,改用straight NRZI不回歸0編碼傳送。但是不回歸0編碼的問題在於,當連續太多0傳送的時候,便會失去自我同步的功能。因此100BaseTX將資料先以4B/5B的方式,將4個位元的資料改成另一種5個位元的資料,以確保同步。

雖然straight NRZI不回歸0編碼搭配4B/5B的方式會浪費25%的多餘消耗,不過速度上還是比Manchester自我同步碼來得快。

為了降低高頻所帶來的噪音,又發展出多層次線路傳輸──三層(Multilevel Line Transmission-Three Levels, MLT-3)。跟以往使用兩種訊號(0與1)不一樣,MLT-3使用三種訊號(0、1與-1)。當要傳送0的時候,訊號不變;傳送1的時候,才改變訊號到下一層。

MLT-3是-1→0→+1→0→-1完成一個循環,與Manchester碼的low→high→low比起來可以容納更多訊息,頻率最多也只需要Manchester的25%。因此MLT-3可以取代Manchester而達到更低頻率、攜帶更多訊息的優勢。

 

(more...)

[圖資] 網路概論942 Ch9

布丁布丁吃布丁

[圖資] 網路概論942 Ch9

考試範圍:

  • 第八章:8.1、8.2(X-ON / X-OFF)、8.3、8.4(GO-BACK-n: SLIDING WINDOW)、8.5(8.4、8.5都很重要喔)
    第八章重點整理
  • 第九章:9.1、9.2(很重要喔)、9.3、9.4(到100BaseTX)
  • 第十章:10.1(後半部,講Layer 1 2 3)、10.2、10.3(到透明式橋接器)、10.7(階層式繞送到路徑資訊協定)
  • 第十一章:11.1、11.2(到DNS)

Chapter 9 Local Area Networks


9.1 簡介 Introduction

 

常見的區域網路拓樸(Topology)類型


(from The University of Texas at Austin - Web Central)

1. 匯流排拓樸 (bus topology)

優點是簡單,不論是新增或移除其中一台電腦都很容易。缺點是傳送資料時,是以廣播(broadcast)的方式把資料傳送到每台電腦,同一時間點上只允許一台電腦傳送資料,否則會發生碰撞(contention)。

2. 環狀拓樸 (ring topology)

環狀拓樸是將每台電腦串成一個圈圈,每台電腦輪流傳遞權杖(token),拿到權杖的電腦可以把資料放在權杖中,權杖中的資料記錄著來源電腦與目的電腦,資料僅有目的電腦可以接收,傳完一圈之後,來源電腦有權限刪除該資料。環狀拓樸優點是允許多台電腦傳送資料,缺點是裝置的增加或刪除都必須重新設定,而且一台電腦的錯誤會導致網路癱瘓,難以偵錯。

3. 星狀拓樸 (star topology)

一台電腦作為其他所有電腦的邏輯通訊中心 ,任何電腦要傳送訊息,都必須透過這台電腦。

 

區域網路IEEE標準

  • 乙太網路(Ethernet):IEEE802.3,現今最流行
  • token ring:IEEE 802.5,現在不怎麼使用
  • token bus:IEEE 802.4,現在幾乎沒人在用
  • 無線網路(wireless): IEEE 802.11,現今有A、B、G三種類型

9.2 資料鏈結層 Data Link Control

這層的用處是連結網路兩點間的傳輸,其功能包括

  1. 規定頁框格式
  2. 錯誤檢查
  3. 流量管制

資料連結層又分為兩個次層:

  1. 邏輯鏈結控制 logical link control, LLC:
    裝置與裝置之間的邏輯連結
  2. 媒體存取控制 medium access control, MAC:
    控制傳輸媒介,包括乙太網路與token ring標準。在MAC底下必須將所有不同的資料傳輸協定整合。

同步資料傳輸協定
Synchronous Data Link Control, SDLC

IBM制定,之後經過多次申請,名稱演變的樹狀圖為:


高階資料鏈結控制協定
High-level Data Link Control Protocol, HDLC

HDLC是一種位元導向的協定,支援半雙工與全雙工通訊。

  • 半雙工(half-duplex):同時間只能一邊傳送訊息
  • 全雙工(full-duplex):兩邊可以同時傳送訊息

位元導向:HDLC把頁框(frame)當成位元串流(bit stream)處理。

在HDLC當中設備(device)被區分為三種:

  • 主站 (primary station):發號命令
  • 次站 (secondary station):聽取命令
  • 混合站(combined station):可發令,也可聽令

HDLC通訊模式也有三種:(斯斯聽說只有兩種)

  • 正常工作模式 Normal response mode(NRM):主次分明
    • 點對點連結 (point-to-point, P2P):主站發令(command),次站回應(response)
    • 多點連結 (multipoint link):主站發令給數個次站,數個次站回應
  • 非同步反應模式 Asynchronous response mode (ARM):次站比較獨立
    • 次站可以傳送資料、控制訊息(control information)到主站
    • 次站不能送出命令
  • 非同步平衡模式 Asynchronous balanced mode (ABM):各站台平等
    • 每個裝置都能夠傳送資料、控制訊息以及命令
    • 這是兩台電腦連結的典型模式

HDLC的頁框格式(frame format)

位元數 8 8或16 8或16 不固定 16或32 8
  旗號
Flag
位置
Address
控制訊號
Control
--資料-- 頁框檢查序列
FCS
旗號
Flag

‧旗號 Flag

用來標示頁框的開頭與結尾。一概是由01111110 (0兩個,中間1六個,共八個位元)組成。

位元填充 (bit stuffing)

  • 避免資料中也有相同的位元串而被誤認為旗號
  • 送方:如果看到五個連續的1,則在後方增加一個0
  • 收方:如果收到五個連續的1,則在後方減少一個0

‧位置 Address

  • 可以是標準的8位元,也可以是延伸的16位元
  • P2P mode
    • 主站發送→位置填寫收方(目標地的次站)
    • 次站發送→ 位置填寫送方(還是次站自己)
  • ML mode
    • group address:群體位置,填寫一群位置,則可以傳送到各個點
    • broadcast address:廣播位置,會送到全部位置

頁框檢查序列(frame check sequence,FCS):使用CRC檢查,CRC多項是為x16 + x12 + x5 + 1。


HDLC三種不同的頁框類型

由開頭的一到兩個位元來定義頁框的類型:

資料頁框 Information frame

位元數 1 3 1 3
  0 N(S)
本頁框編號
P/F
要求/終點
N(R)
預期頁框
  • 開頭為0
  • 主要是傳送資料,使用go-back-n或是選擇性重複(selective repeat)滑動窗戶協定(sliding window protocol)
  • P/F (Poll / Final bit):
    • 依照送方的不同而有不同意義
    • 主站→poll bit設為1:主站回應次站的要求
    • 次站→final bit設為1:表示現再的頁框是整串頁框當中的最後一個
  • 預期頁框 (N(R),number of received frame)
    • 肩負式確認訊號 (piggyback acknowledgment)
    • 表示N(R) 之前的頁框都已經收到了,請傳送編號N(R)的頁框

監督頁框 Supervisory frame

位元數 1 1 2 1 3
  1 0 S
狀態
P/F
要求/終點
N(R)
預期頁框
  • 開頭是1 0
  • S 狀態:用兩個位元表示
    • RR(00):準備接收資料
    • REJ(01):拒絕,發生錯誤。同等於go-back-n的NAKs
    • RNR(10):尚未準備好接收資料
    • SREJ(11):拒絕。同等於選擇性重複協定的NAKs

無編號頁框 Unnumbered frame

位元數 1 1 2 1 3
  1 1 M
協定決定
P/F
要求/終點
M
協定決定
  • 開頭是1 1
  • M 決定使用哪種通訊協定
    • 兩組M組成5個位元

HDLC範例

(a) 建立連結

(b) 交換頁框

(c) 結束連結


二元同步通訊協定
Binary Synchronous Communication Protocol,BSC

特色

  1. 同步半雙工
  2. 停止並等待流量控制(stop-and-wait flow control)

剩下的看有沒有時間寫囉!

 

 

(more...)

[日記]道歉啟事

布丁布丁吃布丁

[日記]道歉啟事

最近似乎因為壓力的關係有點累,所以與人講話時的態度不是很好,出現那種「看起來很像沒耐性」的態度,是我自身修養不足,真是非常抱歉,我並沒有那個意思。

網概重點要怎麼整理啊...(抓頭)

(more...)

[圖資] 作業系統942 額外補充

布丁布丁吃布丁

[圖資] 作業系統942 額外補充

補充額外題目:(印象中老師有敎過的)


何謂檔案系統掛載(File System Mount)?

如果要讀取檔案系統(如磁碟),則必須要先做掛載的動作,將新增的檔案系統是為一顆磁碟或是一個目錄,掛載在現有目錄底下,而掛載的地方就稱為掛載點(mount point)。舉例來說,Windows新增隨身碟的時候,會將隨身碟的資料當成一顆硬碟,自動掛載在我的電腦底下。


請比較循序存取(sequential access)與直接存取(direct access)的差異。

(雖然老師講不多,不過算是基本常識吧)

循序存取非常單純,就是一個接著一個讀取程序。這是相當常見的方式。有些作業系統可以操控讀取的方向,預設是向後,也可以向前讀取。

直接存取(或稱為相關存取(relative access))是把檔案當作一個固定長度的邏輯紀錄,然後允許程式讀取或寫入檔案的任何一個地方,而不需要任何指令來操作。直接存取最常用在處理大量的資訊,例如資料庫就是。當資料庫收到一個查詢(query),就能夠計算出哪個區塊包含著答案,然後直接讀取這個答案以取得需要的資訊。

請畫出檔案資訊系同的層級表(Layered file system)。

應用程式
application
操作者
以下步驟是由作業系統進行中斷
邏輯檔案系統
logical file system
邏輯
 
檔案組織模組
file-organization module
邏輯轉成實體的中介者
 
基層檔案系統
basic file system
實體
 
輸入輸出控制
I/O control
 
 
裝置
devices
如:硬碟等輔助儲存裝置

請比較目錄實作中,線性清單(linear list)與雜湊表格(hash table)的差別。

線性清單非常單純,目錄使用線性清單記錄著檔案名稱以及連結到該檔案資料區段的指標。線性清單在設計上很簡單,但是在檔案搜尋上相當消耗時間。

雜湊表格是利用線性清單儲存,但也用雜湊的方式把資料結構化。雜湊表格擁有著雜湊的優點:時間複雜度為常數,即使檔案越來越多,雜湊表格搜尋檔案的時間也不會因此增加。但是也得考慮到雜湊會遇到的碰撞問題。

請解釋seek time、rotational latency、transfer time這三個名詞。

seek time (搜尋時間):磁碟讀寫臂移動到包含目標區段(desired sector)磁柱的時間

rotational latency (旋轉潛伏期、旋轉延遲):磁碟把目標區段轉到磁碟開頭的等待時間

transfer time (傳輸時間):從磁碟傳送檔案到記憶體的時間

(more...)

[圖資] 作業系統942期末考 (附參考說明)

布丁布丁吃布丁

[圖資] 作業系統942期末考 (附參考說明)

92.6.16 第二學期
作業系統期末考 (附參考說明)


以下多為依照自己的記憶寫的參考用解答,希望能夠幫助同學釐清概念。(當然,也是會有幫倒忙的時候)


一、磁碟陣列排班法則 1. FCFS 2. SSTF 3. SCAN 4. C-SCAN 5. LOOK 6. C-LOOK 中

[1] 略述SCAN與C-LOOK兩個法則的作法?

SCAN排班表是從開始磁區往同一方向掃描到磁區尾端,改變方向一路掃回開頭,掃到開頭再折回去。

C-LOOK則是從頭到尾就遵照一個方向掃描,從頭到最靠近尾端的一個要求磁區,然後再返回最近靠開頭的一個要求磁區開始,往尾端掃描

[2] 哪一個法則有可能會造成飢餓的問題?(請簡單說明)

SSTF最可能造成飢餓(starvation)。飢餓是指要求的指令永遠無法執行,必須無止盡等待的情況。SSTF無視順序地只先服務最近靠近的要求,因此太遠的要求磁區會很難有機會可以執行到,可能造成肌餓。

[3] 哪一個演算法最適合我們平常所搭乘的電梯使用?(請簡單說明)

電梯的演算法是LOOK,就這樣。

不考電梯,但應該會有同樣類型的應用題型出現。推測較可能會考的有:SSTF(25%,最短路徑,可能會發生飢餓)、SCAN(20%,掃到底)、C-SCAN(10%,掃到底,單方向圓圈循環)、LOOK(35%,掃到最靠近底)、C-LOOK(10%,掃到最靠近底,單方向圓圈循環)

以上推測可能出題的%來自於實際應用最可能的情況,也就是說,LOOK排程最容易套用在現實生活的情境;其次是SSTF的最短路徑;SCAN則是LOOK改良的前身,適用於必須強迫走到底的狀況;而其他C-的演算法,因為必須為圓圈循環的模式,所以比較難以看到應用在現實生活;相對的,如果有圓圈循環的特徵出現,那麼極可能是C-的兩種演算法之一喔!

以上是無責任推測,只要搞懂這幾種排班表,遇上問題時,便可以很快地想到應用的方法囉。

[4] 假設某磁碟共有200個磁柱(注意,編號是從0到199),若有連續之讀寫要求 60, 100, 190, 20, 180, 40, 50,請問上述各法則中讀寫臂移動距離最多的是哪一個法則?
(假設開始是位於50,方向為由小到大,兩者距離相等的時候,以移動方向為準←這些考試的時候都要舉手問老師喔!)

(不用算都知道是FCFS...)

FCFS
磁區 60 100 190 20 180 40 50
移動 10 40 90 170 160 140 10
累加 10 50 140 310 470 610 620
SSTF
磁區 50 60 40 20 100 180 190
移動 0 10 20 20 80 80 10
累加 0 10 30 50 130 210 220
SCAN
磁區 50 60 100 180 190 (199) 40 20
移動 0 10 40 80 10 9 159 20
累加 0 10 50 130 140 149 308 328
C-SCAN
磁區 50 60 100 180 190 (199) (0) 20 40
移動 0 10 40 80 10 9 199 20 20
累加 0 10 50 130 140 149 348 368 388
LOOK
磁區 50 60 100 180 190 40 20
移動 0 10 40 80 10 150 20
累加 0 10 50 130 140 390 410
C-LOOK
磁區 50 60 100 180 190 40 20
移動 0 10 40 80 10 140 20
累加 0 10 50 130 140 280 300

各排班移動距離排序:FCFS(620) > C-LOOK(430) > LOOK(410) > C-SCAN(390) > SCAN(330) > SSTF(200)


二、試解釋為什麼SSTF法則似乎對中間磁柱較有興趣,而對極內或極外圈的磁柱較為不便?

SSTF會優先移動到距離現在最接近的要求磁柱。在要求磁柱呈現均勻分配,極內、中間、極外磁柱皆有的情況下,中間磁柱便類似統計學上的中位數,他與所有要求的磁柱與中位數的距離為最短,因此在SSTF的規則下,中間磁柱會有較高的機會被執行,感覺上會偏中間磁柱。


三、在磁碟可用空間管理的方法中,試比較位元向量(bit vertor)與鏈接串列(linked list)的優劣?

位元向量是把磁碟可用(free)的空間以一連串的0或1表示。優點是簡單且可以快速找到開始或一段連續的可用區段。因為需要時常存取的關係,擺在記憶體當中才能發揮效率,不過這牽扯到磁碟大小影響位元向量的長度,大型磁碟的位元向量會佔用記憶體太多位置。

鏈結串列是將所有可用磁區以指標的方式連結在一起,而將這整串的開頭磁區儲存在特別區域並且擺置在記憶體當中快取。然而,這樣是很難去追溯完整的清單,系統必須執行長時間的I/O (輸入輸出)動作來找尋每一個鏈結的磁區。不過還好,大多時候作業系統只會需要一個可用磁區,就是那個快取中的開頭磁區。鏈結串列可以搭配FAT一起運作,他們都是儲存檔案串列資訊的特殊資料。

  位元向量
bit vertor
鏈結串列
linked list
儲存方式 0,1字元陣列 指標(pointer)
複雜度 簡單 複雜
找到可用空間 快,且任意位置都可以找尋 只有開頭磁區快速,其他的得慢慢尋找、鏈結
額外空間 隨著磁碟大小等比例增加 只需要一個地方來儲存開頭磁區的位置,其他的鏈結則存在各個可用磁區裡面
快取 檔案過大便難以快取 可快取加快速度,且可與FAT搭配運作

四、在磁碟檔案配置中何謂索引區段(index block)?

索引區段是索引配置(indexed allocation)裡面使用的特別磁區。在索引配置中,每個檔案都有一個索引區段,記錄著這個檔案各個部份的指標位置。即使只有紀錄小型檔案,索引區段依然得佔用一整個磁區,因此發展出縮小磁區大小以避免浪費索引區段的方法,這又得考慮到當檔案過大、必須存放的指標數量超過單一磁區大小時的問題。解決的方法有三種:

  1. 索引磁區連結索引磁區(Linked Scheme):一個索引磁區擺不下,那就連到下一個索引磁區繼續擺
  2. 多層次索引(Multilevel index):將指標分層存放。開始的索引磁區包含著下一層的數個索引磁區,在這數個索引磁區存放指標。
  3. 綜合兩種方法(Combined scheme):索引磁區中,前12個指標指到資料本身,後3個則指到單層、雙層、三層索引磁區

五、實作磁碟檔案目錄的資料結構採用雜亂表格(hash table,又稱雜湊表格)有何優點?

雜湊表格是指儲存檔案目錄的資料結構是採用「陣列(array)」,也就是一個固定長度、分成很多格子,每個格子都儲存資料的結構。雜湊的意思是,當資料要儲存或讀取時,都會經過一個特殊的函數(function),以算出一個位置。因為函數計算的時間是固定的,不像普通的搜尋方法會隨著檔案大小而影響搜尋時間。所以雜湊演算法具有時間固定、簡單的優點。

缺點是需要考慮到碰撞(collision,多對一函數的結果,兩個不同的輸入卻有相同的輸出)的處理。


六、RAM磁碟與磁碟快取間的差異?(13.4.3)


七、何謂檔案控制區段(File Control Block)

在邏輯邏輯系統管理當中,檔案結構是由檔案控制區段來維護。檔案結構區段包含著檔案的資訊,包括擁有者、擁有群組、權限,以及檔案內容的位置。


八、試比較RAID 0、RAID 1與RAID 2三種磁碟陣列規格的差異與優劣?
→ 比較RAID 0、RAID 1、RAID 2與RAID 0+1

n為磁碟個數

  普通 RAID 0 RAID 1 RAID 2 RAID 0+1
目的 - 快速 備份 錯誤修正 快速+備份
寫入消耗時間 1 1 / n 1 1 + 同位元計算時間 1 / n (同RAID 0)
安全度 - 1 / n (其中一顆硬碟損壞,檔案就全毀) 2倍 (有第二顆可以隨時備用) 用記憶體偵錯碼(ECC)來修正或重建 2倍 (同RAID 1)
額外空間
(overhead)
→成本
0 0 與儲存資料的空間相同 比RAID 1還少 是儲存資料空間的三倍

※注意,RAID 2不是漢明碼、不是CRC,而是記憶體類型錯誤偵錯碼組織(memory-style error-correcting-code(ECC) organization

 

(more...)