硬盘结构及工作原理
外存儲器—磁盤
計算機存儲設備一般分為兩種:內存儲器(main memory)和外存儲器(external memory)。?內存存取速度快,但容量小,價格昂貴,而且不能長期保存數據(在不通電情況下數據會消失)。
外存儲器—磁盤是一種直接存取的存儲設備(DASD)。它是以存取時間變化不大為特征的。可以直接存取任何字符組,且容量大、速度較其它外存設備更快。
磁盤的構造
磁盤是一個扁平的圓盤(與電唱機的唱片類似)。盤面上有許多稱為磁道的圓圈,數據就記錄在這些磁道上。磁盤可以是單片的,也可以是由若干盤片組成的盤組,每一盤片上有兩個面。如下圖11.3中所示的6片盤組為例,除去最頂端和最底端的外側面不存儲數據之外,一共有10個面可以用來保存信息。
???????????????????????????
?
當磁盤驅動器執行讀/寫功能時。盤片裝在一個主軸上,并繞主軸高速旋轉,當磁道在讀/寫頭(又叫磁頭)?下通過時,就可以進行數據的讀?/?寫了。
一般磁盤分為固定頭盤(磁頭固定)和活動頭盤。固定頭盤的每一個磁道上都有獨立的磁頭,它是固定不動的,專門負責這一磁道上數據的讀/寫。
活動頭盤?(如上圖)的磁頭是可移動的。每一個盤面上只有一個磁頭(磁頭是雙向的,因此正反盤面都能讀寫)。它可以從該面的一個磁道移動到另一個磁道。所有磁頭都裝在同一個動臂上,因此不同盤面上的所有磁頭都是同時移動的(行動整齊劃一)。當盤片繞主軸旋轉的時候,磁頭與旋轉的盤片形成一個圓柱體。各個盤面上半徑相同的磁道組成了一個圓柱面,我們稱為柱面?。因此,柱面的個數也就是盤面上的磁道數。?
磁盤的讀/寫原理和效率
磁盤上數據必須用一個三維地址唯一標示:柱面號、盤面號、塊號(磁道上的盤塊)。
讀/寫磁盤上某一指定數據需要下面3個步驟:
(1)??首先移動臂根據柱面號使磁頭移動到所需要的柱面上,這一過程被稱為定位或查找?。
(2)??如上圖11.3中所示的6盤組示意圖中,所有磁頭都定位到了10個盤面的10條磁道上(磁頭都是雙向的)。這時根據盤面號來確定指定盤面上的磁道。
(3)?盤面確定以后,盤片開始旋轉,將指定塊號的磁道段移動至磁頭下。
經過上面三個步驟,指定數據的存儲位置就被找到。這時就可以開始讀/寫操作了。
訪問某一具體信息,由3部分時間組成:
●?查找時間(seek time) Ts:?完成上述步驟(1)所需要的時間。這部分時間代價最高,最大可達到0.1s左右。
●?等待時間(latency time) Tl:?完成上述步驟(3)所需要的時間。由于盤片繞主軸旋轉速度很快,一般為7200轉/分(電腦硬盤的性能指標之一,?家用的普通硬盤的轉速一般有5400rpm(筆記本)、7200rpm幾種)。因此一般旋轉一圈大約0.0083s。
●?傳輸時間(transmission time) Tt:?數據通過系統總線傳送到內存的時間,一般傳輸一個字節(byte)大概0.02us=2*10^(-8)s
磁盤讀取數據是以盤塊(block)為基本單位的。位于同一盤塊中的所有數據都能被一次性全部讀取出來。而磁盤IO代價主要花費在查找時間Ts上。因此我們應該盡量將相關信息存放在同一盤塊,同一磁道中。或者至少放在同一柱面或相鄰柱面上,以求在讀/寫信息時盡量減少磁頭來回移動的次數,避免過多的查找時間Ts。
所以,在大規模數據存儲方面,大量數據存儲在外存磁盤中,而在外存磁盤中讀取/寫入塊(block)中某數據時,首先需要定位到磁盤中的某塊,如何有效地查找磁盤中的數據,需要一種合理高效的外存數據結構,就是下面所要重點闡述的B-tree結構,以及相關的變種結構:B+-tree結構和B*-tree結構。
總結
- 上一篇: 育碧给巴黎捐 30 万欧元,刺客信条·大
- 下一篇: #visual studio编译# wa