您好,登錄后才能下訂單哦!
存儲和服務(wù)器的三大件
從底層原理實現(xiàn)角度來看,存儲和服務(wù)器的物理硬件本質(zhì)都是三大件:CPU、內(nèi)存和I/O的組合運用。
從電腦的角度看,服務(wù)器也是電腦,只是比普通的電腦更復(fù)雜更先進而已。服務(wù)器的誕生,是為了處理企業(yè)級的應(yīng)用,使工作協(xié)同性變得更高。所以服務(wù)器和家用的電腦相比,最重要的一點就是要穩(wěn)定、安全、少出錯。服務(wù)器上面運行的應(yīng)用程序、數(shù)據(jù)庫對于企業(yè)來說是非常重要的,所以服務(wù)器級別的內(nèi)存、硬盤、網(wǎng)卡、CPU等等的性能和穩(wěn)定性,理論上來說會比普通電腦要高出一些。所以服務(wù)器CPU、內(nèi)存、硬盤、網(wǎng)卡等配件均進行了技術(shù)升級,使之更加安全穩(wěn)定。但是其針對CPU、內(nèi)存及I/O設(shè)備的組合運用并無區(qū)別。在高端的服務(wù)器中,由于支持多路CPU、內(nèi)存及I/O設(shè)備,因此其組合運用方式會更加復(fù)雜。
在系統(tǒng)總線組合階段,通過系統(tǒng)總線將CPU芯片、內(nèi)存和I/O設(shè)備連接起來,實現(xiàn)相互間的通訊和協(xié)同工作,實現(xiàn)了最原始的組合運用,也實現(xiàn)了最基礎(chǔ)的計算功能。
服務(wù)器或者電腦從最開始的架構(gòu)設(shè)計之初,針對CPU、內(nèi)存及I/O設(shè)備的組合運用是最粗暴簡單的,其通過一條系統(tǒng)總線將CPU、內(nèi)存及I/O設(shè)備連接起來,CPU、內(nèi)存及I/O設(shè)備的通訊必須通過系統(tǒng)總線進行傳輸和同步,由于設(shè)備之間的差異性,在這個簡單的數(shù)字系統(tǒng)中,為了確保內(nèi)部所有硬件單元能夠協(xié)同快速工作,CPU架構(gòu)工程師們就設(shè)計了一套時鐘信號與系統(tǒng)同步進行操作,由CPU來決定其他設(shè)備工作在什么頻率上,保證所有的設(shè)備都在同步的模式下面工作。在這樣的模式下,所有的設(shè)備都會被限定在一個被所有設(shè)備所能承受的通用時鐘頻率上面,即產(chǎn)生所謂的"互鎖"效應(yīng),木桶原理告訴我們,這種情況下系統(tǒng)的整體性能會被最低頻率的設(shè)備拉低。
下圖顯示了最開始的計算機系統(tǒng)的基本框圖。它由CPU,內(nèi)存(RAM)和許多I/O設(shè)備組成。所有這些都通過系統(tǒng)總線連接。CPU執(zhí)行存儲在內(nèi)存中的指令。這些指令可以從內(nèi)存或I/O設(shè)備中讀取數(shù)據(jù),并可以操作這些數(shù)據(jù),以及將結(jié)果數(shù)據(jù)寫入內(nèi)存或I/O設(shè)備中。
這種體系結(jié)構(gòu)的計算機第一次怎么啟動,因為內(nèi)存中并不存在啟動代碼。為了解決系統(tǒng)總線直連計算機的啟動問題,最開始的解決方案是使用一個前面板(The front panel)來控制計算機的啟動過程,之后才采用ROM方式來控制計算機的啟動。
前面板架構(gòu)設(shè)計圖:
前面板的設(shè)計原理是,通過在一個金屬面板上添加帶有指示燈、撥動開關(guān)和按鈕的設(shè)備,這些設(shè)備通過導(dǎo)線和總線相連接,然后使用一行燈來表示一個或多個硬件寄存器的內(nèi)容,并允許在機器停止時直接讀取內(nèi)容。在計算機第一次啟動時,通過前面板進行啟動引導(dǎo),通常需要執(zhí)行一系列復(fù)雜的操作。首先操作員需要將具有包含一系列短引導(dǎo)指令的程序指令使用前面板的切換開關(guān)手動輸入其中。第一步需要設(shè)置“地址”信息,并通過設(shè)置地址的開關(guān)將二進制形式的地址表示信息數(shù)據(jù)輸入進去,前面板上會存在專門的二進制數(shù)字按鈕,比如DEC PDP-8或MITS Altair 8800的二進制數(shù)字在前面板上分組為三個,每組燈或開關(guān)代表0到7之間的單個八進制數(shù)字。接下來,操作員將設(shè)置地址的“值”,通過“值”的開關(guān)然后輸入用于該地址的值。然后操作員將設(shè)置引導(dǎo)程序的起始地址,并啟動“RUN”開關(guān)開始執(zhí)行程序。引導(dǎo)程序通常從打孔的紙帶讀取和加載程序,并最終將計算機運行起來。
前面板可以控制內(nèi)存控制器、CPU寄存器合其他I/O設(shè)備的寄存器地址,用戶可以設(shè)置要檢查或更改的寄存器地址,將新數(shù)據(jù)寫入寄存器位置,并且可復(fù)位、啟動和停止CPU。大多數(shù)前面板提供了一種讀取和寫入單個CPU寄存器的方法,在通過前面板輸入指令的情況下,CPU會一次一個指令地逐步執(zhí)行程序。
下圖展示了System/360 Model 91的前面板實物圖(圖片來自維基百科)
在20世紀50年代后期,計算機是一臺相當龐大且昂貴的機器。它的成本在當時遠遠高于豪華轎車甚至是房子,而且一個面積龐大滿是開關(guān)和燈的前面板也相對地增加了計算機的成本。當計算機通電時,CPU尚未運行,操作員可以使用前面板在沒有CPU幫助的情況下讀取和寫入內(nèi)存的內(nèi)容。當合適的程序存儲到內(nèi)存中,操作員將前面板開關(guān)設(shè)置到RUN位置時,CPU就會開始運行。1975年之前制造的大多數(shù)計算機都有這樣的前面板。
每次計算機上電時,操作員都必須將引導(dǎo)程序輸入內(nèi)存,該內(nèi)存將從I/O設(shè)備(例如讀卡器,磁帶或磁盤)讀取一些數(shù)據(jù)。加載的數(shù)據(jù)形成一個小程序,然后加載更多數(shù)據(jù),直到加載整個操作系統(tǒng)或應(yīng)用程序。根據(jù)當時的電子計算機架構(gòu)和I/O設(shè)備的類型,這些指令大概有數(shù)十條指令數(shù)的規(guī)模,每次機器上電時都必須逐位輸入。
為了解決繁瑣的計算機系統(tǒng)啟動問題,內(nèi)存需要使用非易失性存儲介質(zhì),保存位于內(nèi)存中的啟動代碼數(shù)據(jù),確保關(guān)機狀態(tài)下啟動指令仍然存儲在內(nèi)存中。當CPU啟動時,計算機就開始從內(nèi)存中明確定義的位置讀取并執(zhí)行指令。從20世紀50年代后期到20世紀70年代早期,大多數(shù)計算機使用核心存儲器來存儲內(nèi)存數(shù)據(jù),這種存儲是非易失性的。即當我們啟動計算機時,內(nèi)存仍然包含上次使用機器時存儲的內(nèi)容。
系統(tǒng)啟動之后,為了更進一步解決前面板后續(xù)的I/O設(shè)備初始化和操作繁瑣的問題,有些計算機設(shè)計們向CPU添加了邏輯,這樣CPU就可以自己從I/O設(shè)備中加載啟動代碼,而不需要內(nèi)存中的任何指令。操作員只需按下正確的按鈕,即可從正確的設(shè)備中選擇自動啟動加載代碼和運行I/O設(shè)備。
當計算機的硬件成本因為科技的進步和工藝制作的提升而變得更加便宜時,費用昂貴、面積龐大且明顯不友好的前面板就成為了急需解決的問題,此外,內(nèi)存的保存特性使得內(nèi)存的容量無法滿足系統(tǒng)的需求,擴充容量就會造成成本居高不下。因此架構(gòu)師們就設(shè)計出了ROM(只讀存儲器)以及CRT(顯像管)用于替代前面板的功能,并使用大容量的內(nèi)存元器件,將計算機運行所必需的程序放到ROM中。在20世紀70年代末和80年代初,除了一些早期微型計算機仍然有一個前面板外,絕大多數(shù)微型計算機都已經(jīng)更換到ROM和CRT。
ROM的作用是:當計算機通電時,CPU開始從明確定義的地址執(zhí)行指令,該地址指向只讀存儲器(ROM),如下圖所示。ROM中的程序控制計算機啟動的功能。
ROM內(nèi)部的數(shù)據(jù)是在ROM的制造工序中,在工廠里用特殊的方法燒錄進去的,其中的內(nèi)容只能讀不能改,一旦燒錄進去,用戶只能驗證寫入的數(shù)據(jù)是否正確,不能再作任何修改。如果發(fā)現(xiàn)數(shù)據(jù)有錯誤,則只有舍棄不用,重新訂做一份。ROM解決了前面板啟動電子計算機繁瑣的問題,使得計算機的啟動變得便捷許多,但是,這樣也存在著弊端。由于ROM定義了計算機內(nèi)部元件的寄存器地址及啟動地址信息等內(nèi)容,計算機的功能就不在僅由其硬件決定,而且由存儲在其ROM中的程序決定。簡單來說就是ROM限制了計算機的特定規(guī)格。
ROM中軟件的范圍在計算機系統(tǒng)之間差異很大。在某些機器中,ROM只是將軟盤的第一個扇區(qū)加載到內(nèi)存中,然后加載CPU跳轉(zhuǎn)到內(nèi)存中的這段程序去運行。剛加載的程序會將操作系統(tǒng)從軟盤加載到內(nèi)存。如果軟盤中沒有合適的系統(tǒng)盤,計算機就完全無法啟動了,會提示找不到啟動文件。另一方面,如果ROM可將硬盤的啟動扇區(qū)加載到內(nèi)存中并從這段程序運行,從而加載硬盤上的操作系統(tǒng)。在許多計算機中,ROM中的程序確定了計算機可以做什么以及以以什么方式做事。一般來說內(nèi)存大小通常非常有限,如果將重要程序(或操作系統(tǒng))存儲在ROM中意味著可以為應(yīng)用程序或數(shù)據(jù)提供更多內(nèi)存空間,此外也可以加速操作系統(tǒng)的啟動速度?;谶@樣的設(shè)計和理念,有些計算機就在ROM中嵌入了非常有限的固件,這些計算機在ROM上有大量程序,包括操作系統(tǒng),這樣的計算機將操作系統(tǒng)及功能實現(xiàn)均燒錄在了ROM中。
從今天計算機的組件來看,組成計算機的每個組件均包含了芯片、內(nèi)存及I/O這三部分核心的基礎(chǔ)元件。其中大部分模塊或組件的操作系統(tǒng)均燒錄在了組件自身的ROM中,ROM有些組件獨立,有些組件和內(nèi)存及芯片等完全集成在同一個芯片模組中。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。