計算機的加點和複位
在處理器衆多的引腳中,有一個是 RESET,用于接受複位信号。每當處理器加電,或者RESET 引腳的電平由低變高時①,處理器都會執行一個硬體初始化,以及一個可選的内部自測試(Build-in Self-Test,BIST),然後将内部所有寄存器的内容初始到一個預置的狀态。
為了節約成本,并提高容量和內建度,在記憶體中,每個比特的存儲都是靠一個極其微小的半導體,外加一個同樣極其微小的電容來完成的。可以想象,這樣微小的電容,其洩漏電荷的速度當然也非常快。是以,個人計算機中使用的記憶體需要定期補充電荷,這稱為重新整理,是以這種存儲器也稱為動态随機通路存儲器(Dynamic Random Access Memory,DRAM)。随機通路的意思是,通路任何一個記憶體單元的速度和它的位置(位址)無關。舉個例子來說,從頭至尾在一盤錄音帶上找某首歌曲,它越靠前,找到它所花的時間就越短。但記憶體就不一樣,讀寫位址為 0x00001 的記憶體單元,和讀寫位址為 0xFFFF0 的記憶體單元,所需要的時間是一樣的。在記憶體重新整理期間,處理器将無法通路它。這還不是最麻煩的,最麻煩的是,在它斷電之後,所有儲存的内容都會統統消失。是以,每當處理器加電之後,它無法從記憶體中取得任何指令。
與 DRAM 不同,隻讀存儲器(Read Only Memory,ROM)不需要重新整理,它的内容是預先寫入的,即使掉電也不會消失,但也很難改變。這個特點很有用,比如,可以将一些程式指令固化在 ROM 中,使處理器在每次加電時都自動執行。處理器醒來後不能餓着,這是很重要的。
硬碟及其工作原理

這是一塊被拆開的硬碟,中間是用于記錄資料的鋁合金盤片,固定在中心的軸上,由一個高速旋轉的馬達驅動。附着在盤片表面的扁平錐狀物,就是用于在盤片上讀寫資料的磁頭。
硬碟可以隻有一個盤片(這稱為單碟),也可能有好幾個盤片。但無論如何,它們都串在同一個軸上,由電動機帶動着一起高速旋轉。一般來說,轉速可以達到每分鐘 3600 轉或者 7200 轉,有的能達到一萬多轉,這個參數就是我們常說的“轉/分鐘”(Round Per Minute,RPM)。
每個盤片都有兩個磁頭(Head),上面一個,下面一個,是以經常用磁頭來指代盤面。磁頭都有編号,第 1 個盤片,上面的磁頭編号為 0,下面的磁頭編号為 1;第 2 個盤片,上面的磁頭編号為 2,下面的磁頭編号為 3,依次類推。
每個磁頭不是單獨移動的。相反,它們都通過磁頭臂固定在同一個支架上,由步進電動機帶動着一起在盤片的中心和邊緣之間來回移動。也就是說,它們是同進退的。步進電動機由脈沖驅動,每次可以旋轉一個固定的角度,即可以步進一次。
可以想象,當盤片高速旋轉時,磁頭每步進一次,都會從它所在的位置開始,繞着圓心“畫”出一個看不見的圓圈,這就是磁道(Track)。磁道是資料記錄的軌迹。因為所有磁頭都是關聯的,故每個盤面上的同一條磁道又可以形成一個虛拟的圓柱,稱為柱面(Cylinder)。
磁道,或者柱面,也要編号。編号是從盤面最邊緣的那條磁道開始,向着圓心的方向,從 0 開始編号。
柱面是一個用來優化資料讀寫的概念。初看起來,用硬碟來記錄資料時,應該先将一個盤面填滿後,再填寫另一個盤面。實際上,移動磁頭是一個機械動作,看似很快,但對處理器來說,卻很漫長,這就是尋道時間。為了加速資料在硬碟上的讀寫,最好的辦法就是盡量不移動磁頭。這樣,當 0 面的磁道不足以容納要寫入的資料時,應當把剩餘的部分寫在 1 面的同一磁道上。如果還寫不下,那就繼續把剩餘的部分寫在 2 面的同一磁道上。換句話說,在硬碟上,資料的通路是以柱面來組織的。
實際上,磁道還不是硬碟資料讀寫的最小機關,磁道還要進一步劃分為扇區(Sector)。磁道很窄,也看不見,但在想象中,它仍呈帶狀,占有一定的寬度。将它劃分許多分段之後,每一部分都呈扇形,這就是扇區的由來。
每條磁道能夠劃分為幾個扇區,取決于磁盤的制造者,但通常為 63 個。而且,每個扇區都有一個編号,與磁頭和磁道不同,扇區的編号是從 1 開始的。
扇區與扇區之間以間隙(空白)間隔開來,每個扇區以扇區頭開始,然後是 512 個位元組的資料區。扇區頭包含了每個扇區自己的資訊,主要有本扇區的磁道号、磁頭号和扇區号,用來供硬碟定位機構使用。現代的硬碟還會在扇區頭部包括一個訓示扇區是否健康的标志,以及用來替換該扇區的扇區位址。用于替換扇區的,是一些保留和隐藏的磁道。