磁帶存儲器(magnetic tape storage):以磁帶為存儲介質(zhì),由磁帶機(jī)及其控制器組成的存儲設(shè)備,是計算機(jī)的一種輔助存儲器。磁帶機(jī)由磁帶傳動機(jī)構(gòu)和磁頭等組成,能驅(qū)動磁帶相對磁頭運(yùn)動,用磁頭進(jìn)行電磁轉(zhuǎn)換,在磁帶上順序地記錄或讀出數(shù)據(jù)。磁帶存儲器是計算機(jī)外圍設(shè)備之一。磁帶控制器是中央處理器在磁帶機(jī)上存取數(shù)據(jù)用的控制電路裝置。磁帶存儲器以順序方式存取數(shù)據(jù)。存儲數(shù)據(jù)的磁帶可脫機(jī)保存和互換讀出。
中文名稱 | 磁帶存儲器 | 外文名稱 | magnetic tape storage |
---|---|---|---|
物理特性 | 工作點(diǎn)總是在磁滯回線上 | 記錄方式 | 形成不同寫入電流波形的方式 |
在許多常見的應(yīng)用中,微處理器要求用非易失性存儲器來存放其可執(zhí)行代碼、變量和其他暫態(tài)數(shù)據(jù)。ROM、EPROM或Flash Memory(快閃存儲器)常被用來存放可執(zhí)行代碼(因這些...
存儲器:是計算機(jī)的重要組成部分.它可分為:計算機(jī)內(nèi)部的存儲器(簡稱內(nèi)存)計算機(jī)外部的存儲器(簡稱外存)內(nèi)存儲器從功能上可以分為:讀寫存儲器 RAM、只讀存儲器ROM兩大類計算機(jī)存儲容量以字節(jié)為單位,它...
用數(shù)碼相機(jī)照的照片一般放在專門的文件夾中,并且是統(tǒng)一的格式,網(wǎng)上找的照片,必須要是相機(jī)能識別的,并且要考到專門的文件夾中才能用相機(jī)瀏覽。相機(jī)與電腦連接時,出現(xiàn)的屏幕上顯示著:存儲卡+內(nèi)部存儲器,是指:...
格式:pdf
大?。?span id="5gdzf0s" class="single-tag-height">66KB
頁數(shù): 16頁
評分: 4.7
SOC基礎(chǔ)教程9外部存儲器控制器IP設(shè)計
操作系統(tǒng)的主要功能是資源管理,程序控制和人機(jī)交互等。計算機(jī)系統(tǒng)的資源可分為設(shè)備資源和信息資源兩大類。設(shè)備資源指的是組成計算機(jī)的硬件設(shè)備,如中央處理器,主存儲器,磁盤存儲器,打印機(jī),磁帶存儲器,顯示器,鍵盤輸入設(shè)備和鼠標(biāo)等。信息資源指的是存放于計算機(jī)內(nèi)的各種數(shù)據(jù),如文件,程序庫,知識庫,系統(tǒng)軟件和應(yīng)用軟件等。
操作系統(tǒng)位于底層硬件與用戶之間,是兩者溝通的橋梁。用戶可以通過操作系統(tǒng)的用戶界面,輸入命令。操作系統(tǒng)則對命令進(jìn)行解釋,驅(qū)動硬件設(shè)備,實現(xiàn)用戶要求。以現(xiàn)代觀點(diǎn)而言,一個標(biāo)準(zhǔn)個人電腦的OS應(yīng)該提供以下的功能:
進(jìn)程管理(Processing management)
內(nèi)存管理(Memory management)
文件系統(tǒng)(File system)
網(wǎng)絡(luò)通訊(Networking)
安全機(jī)制(Security)
用戶界面(User interface)
驅(qū)動程序(Device drivers)
系統(tǒng)的設(shè)備資源和信息資源都是操作系統(tǒng)根據(jù)用戶需求按一定的策略來進(jìn)行分配和調(diào)度的。操作系統(tǒng)的存儲管理就負(fù)責(zé)把內(nèi)存單元分配給需要內(nèi)存的程序以便讓它執(zhí)行,在程序執(zhí)行結(jié)束后將它占用的內(nèi)存單元收回以便再使用。對于提供虛擬存儲的計算機(jī)系統(tǒng),操作系統(tǒng)還要與硬件配合做好頁面調(diào)度工作,根據(jù)執(zhí)行程序的要求分配頁面,在執(zhí)行中將頁面調(diào)入和調(diào)出內(nèi)存以及回收頁面等。
處理器管理或稱處理器調(diào)度,是操作系統(tǒng)資源管理功能的另一個重要內(nèi)容。在一個允許多道程序同時執(zhí)行的系統(tǒng)里,操作系統(tǒng)會根據(jù)一定的策略將處理器交替地分配給系統(tǒng)內(nèi)等待運(yùn)行的程序。一道等待運(yùn)行的程序只有在獲得了處理器后才能運(yùn)行。一道程序在運(yùn)行中若遇到某個事件,例如啟動外部設(shè)備而暫時不能繼續(xù)運(yùn)行下去,或一個外部事件的發(fā)生等等,操作系統(tǒng)就要來處理相應(yīng)的事件,然后將處理器重新分配。
操作系統(tǒng)的設(shè)備管理功能主要是分配和回收外部設(shè)備以及控制外部設(shè)備按用戶程序的要求進(jìn)行操作等。對于非存儲型外部設(shè)備,如打印機(jī)、顯示器等,它們可以直接作為一個設(shè)備分配給一個用戶程序,在使用完畢后回收以便給另一個需求的用戶使用。對于存儲型的外部設(shè)備,如磁盤、磁帶等,則是提供存儲空間給用戶,用來存放文件和數(shù)據(jù)。存儲性外部設(shè)備的管理與信息管理是密切結(jié)合的。
信息管理是操作系統(tǒng)的一個重要的功能,主要是向用戶提供一個文件系統(tǒng)。一般說,一個文件系統(tǒng)向用戶提供創(chuàng)建文件,撤銷文件,讀寫文件,打開和關(guān)閉文件等功能。有了文件系統(tǒng)后,用戶可按文件名存取數(shù)據(jù)而無需知道這些數(shù)據(jù)存放在哪里。這種做法不僅便于用戶使用而且還有利于用戶共享公共數(shù)據(jù)。此外,由于文件建立時允許創(chuàng)建者規(guī)定使用權(quán)限,這就可以保證數(shù)據(jù)的安全性。
一個用戶程序的執(zhí)行自始至終是在操作系統(tǒng)控制下進(jìn)行的。一個用戶將他要解決的問題用某一種程序設(shè)計語言編寫了一個程序后就將該程序連同對它執(zhí)行的要求輸入到計算機(jī)內(nèi),操作系統(tǒng)就根據(jù)要求控制這個用戶程序的執(zhí)行直到結(jié)束。操作系統(tǒng)控制用戶的執(zhí)行主要有以下一些內(nèi)容:調(diào)入相應(yīng)的編譯程序,將用某種程序設(shè)計語言編寫的源程序編譯成計算機(jī)可執(zhí)行的目標(biāo)程序,分配內(nèi)存儲等資源將程序調(diào)入內(nèi)存并啟動,按用戶指定的要求處理執(zhí)行中出現(xiàn)的各種事件以及與操作員聯(lián)系請示有關(guān)意外事件的處理等。
操作系統(tǒng)的人機(jī)交互功能是決定計算機(jī)系統(tǒng)“友善性”的一個重要因素。人機(jī)交互功能主要靠可輸入輸出的外部設(shè)備和相應(yīng)的軟件來完成??晒┤藱C(jī)交互使用的設(shè)備主要有鍵盤顯示、鼠標(biāo)、各種模式識別設(shè)備等。與這些設(shè)備相應(yīng)的軟件就是操作系統(tǒng)提供人機(jī)交互功能的部分。人機(jī)交互部分的主要作用是控制有關(guān)設(shè)備的運(yùn)行和理解并執(zhí)行通過人機(jī)交互設(shè)備傳來的有關(guān)的各種命令和要求。
不管是常駐程序或者應(yīng)用程序,他們都以進(jìn)程為標(biāo)準(zhǔn)執(zhí)行單位。當(dāng)年運(yùn)用馮紐曼架構(gòu)建造電腦時,每個中央處理器最多只能同時執(zhí)行一個進(jìn)程。早期的OS(例如DOS)也不允許任何程序打破這個限制,且DOS同時只有執(zhí)行一個進(jìn)程(雖然DOS自己宣稱他們擁有終止并等待駐留(TSR)能力,可以部分且艱難地解決這問題)?,F(xiàn)代的操作系統(tǒng),即使只擁有一個CPU,也可以利用多進(jìn)程(multitask)功能同時執(zhí)行復(fù)數(shù)進(jìn)程。進(jìn)程管理指的是操作系統(tǒng)調(diào)整復(fù)數(shù)進(jìn)程的功能。
由于大部分的電腦只包含一顆中央處理器,在單內(nèi)核(Core)的情況下多進(jìn)程只是簡單迅速地切換各進(jìn)程,讓每個進(jìn)程都能夠執(zhí)行,在多內(nèi)核或多處理器的情況下,所有進(jìn)程通過許多協(xié)同技術(shù)在各處理器或內(nèi)核上轉(zhuǎn)換。越多進(jìn)程同時執(zhí)行,每個進(jìn)程能分配到的時間比率就越小。很多OS在遇到此問題時會出現(xiàn)諸如音效斷續(xù)或鼠標(biāo)跳格的情況(稱做崩潰(Thrashing),一種OS只能不停執(zhí)行自己的管理程序并耗盡系統(tǒng)資源的狀態(tài),其他使用者或硬件的程序皆無法執(zhí)行)。進(jìn)程管理通常實現(xiàn)了分時的概念,大部分的OS可以利用指定不同的特權(quán)等級(priority),為每個進(jìn)程改變所占的分時比例。特權(quán)越高的進(jìn)程,執(zhí)行優(yōu)先級越高,單位時間內(nèi)占的比例也越高。交互式OS也提供某種程度的回饋機(jī)制,讓直接與使用者交互的進(jìn)程擁有較高的特權(quán)值。
根據(jù)帕金森定律:“你給程序再多內(nèi)存,程序也會想盡辦法耗光”,因此程序員通常希望系統(tǒng)給他無限量且無限快的存儲器。大部分的現(xiàn)代計算機(jī)存儲器架構(gòu)都是層次結(jié)構(gòu)式的,最快且數(shù)量最少的暫存器為首,然后是高速緩存、存儲器以及最慢的磁盤存儲設(shè)備。而操作系統(tǒng)的存儲器管理提供查找可用的記憶空間、配置與釋放記憶空間以及交換存儲器和低速存儲設(shè)備的內(nèi)含物……等功能。此類又被稱做虛擬內(nèi)存管理的功能大幅增加每個進(jìn)程可獲得的記憶空間(通常是4GB,既使實際上RAM的數(shù)量遠(yuǎn)少于這數(shù)目)。然而這也帶來了微幅降低運(yùn)行效率的缺點(diǎn),嚴(yán)重時甚至也會導(dǎo)致進(jìn)程崩潰。
存儲器管理的另一個重點(diǎn)活動就是借由CPU的幫助來管理虛擬位置。如果同時有許多進(jìn)程存儲于記憶設(shè)備上,操作系統(tǒng)必須防止它們互相干擾對方的存儲器內(nèi)容(除非通過某些協(xié)定在可控制的范圍下操作,并限制可訪問的存儲器范圍)。分區(qū)存儲器空間可以達(dá)成目標(biāo)。每個進(jìn)程只會看到整個存儲器空間(從0到存儲器空間的最大上限)被配置給它自己(當(dāng)然,有些位置被操作系統(tǒng)保留而禁止訪問)。CPU事先存了幾個表以比對虛擬位置與實際存儲器位置,這種方法稱為標(biāo)簽頁(paging)配置。
借由對每個進(jìn)程產(chǎn)生分開獨(dú)立的位置空間,操作系統(tǒng)也可以輕易地一次釋放某進(jìn)程所占據(jù)的所有存儲器。如果這個進(jìn)程不釋放存儲器,操作系統(tǒng)可以退出進(jìn)程并將存儲器自動釋放。
虛擬內(nèi)存是計算機(jī)系統(tǒng)內(nèi)存管理的一種技術(shù)。它使得應(yīng)用程序認(rèn)為它擁有連續(xù)的可用的內(nèi)存(一個連續(xù)完整的地址空間),而實際上,它通常是被分隔成多個物理內(nèi)存碎片,還有部分暫時存儲在外部磁盤存儲器上,在需要時進(jìn)行數(shù)據(jù)交換。
在早期的單用戶單任務(wù)操作系統(tǒng)(如DOS)中,每臺計算機(jī)只有一個用戶,每次運(yùn)行一個程序,且次序不是很大,單個程序完全可以存放在實際內(nèi)存中。這時虛擬內(nèi)存并沒有太大的用處。但隨著程序占用存儲器容量的增長和多用戶多任務(wù)操作系統(tǒng)的出現(xiàn),在程序設(shè)計時,在程序所需要的存儲量與計算機(jī)系統(tǒng)實際配備的主存儲器的容量之間往往存在著矛盾。例如,在某些低檔的計算機(jī)中,物理內(nèi)存的容量較小,而某些程序卻需要很大的內(nèi)存才能運(yùn)行;而在多用戶多任務(wù)系統(tǒng)中,多個用戶或多個任務(wù)更新全部主存,要求同時執(zhí)行獨(dú)斷程序。這些同時運(yùn)行的程序到底占用實際內(nèi)存中的哪一部分,在編寫程序時是無法確定的,必須等到程序運(yùn)行時才動態(tài)分配。
為此,希望在編寫程序時獨(dú)立編址,既不考慮程序是否能在物理存儲中存放得下,也不考慮程序應(yīng)該存放在什么物理位置。而在程序運(yùn)行時,則分配給每個程序一定的運(yùn)行空間,由地址轉(zhuǎn)換部件將編程時的地址轉(zhuǎn)換成實際內(nèi)存的物理地址。如果分配的內(nèi)存不夠,則只調(diào)入當(dāng)前正在運(yùn)行的或?qū)⒁\(yùn)行的程序塊(或數(shù)據(jù)塊),其余部分暫時駐留在輔存中。
1.按存儲介質(zhì)分類
(1)半導(dǎo)體存儲器用半導(dǎo)體器件組成的存儲器稱為半導(dǎo)體存儲器;特點(diǎn):集成度高、容量大、體積小、存取速度快、功耗低、價格便宜、維護(hù)簡單.主要分兩大類:雙極型存儲器:TTL型和ECL型.金屬氧化物半導(dǎo)體存儲器(簡稱MOS存儲器):靜態(tài)MOS存儲器和動態(tài)MOS存儲器。
(2)磁表面存儲器用磁性材料做成的存儲器稱為磁表面存儲器,簡稱磁存儲器。它包括磁盤存儲器、磁帶存儲器等。特點(diǎn):體積大、生產(chǎn)自動化程度低、存取速度慢,但存儲容量比半導(dǎo)體存儲器大得多且不易丟失。
(3)激光存儲器信息以刻痕的形式保存在盤面上,用激光束照射盤面,靠盤面的不同反射率來讀出信息。光盤可分為只讀型光盤(CD-ROM)、只寫一次型光盤(WORM)和磁光盤(MOD)三種.
2.按存取方式分類
(1)隨機(jī)存儲器(RAM):如果存儲器中任何存儲單元的內(nèi)容都能被隨機(jī)存取,且存取時間與存儲單元的物理位置無關(guān),則這種存儲器稱為隨機(jī)存儲器(RAM)。RAM主要用來存放各種輸入/輸出的程序、數(shù)據(jù)、中間運(yùn)算結(jié)果以及存放與外界交換的信息和做堆棧用。隨機(jī)存儲器主要充當(dāng)高速緩沖存儲器和主存儲器。
(2)串行訪問存儲器(SAS):如果存儲器只能按某種順序來存取,也就是說,存取時間與存儲單元的物理位置有關(guān),則這種存儲器稱為串行訪問存儲器。串行存儲器又可分為順序存取存儲器(SAM)和直接存取存儲器(DAM)。順序存取存儲器是完全的串行訪問存儲器,如磁帶,信息以順序的方式從存儲介質(zhì)的始端開始寫入(或讀出);直接存取存儲器是部分串行訪問存儲器,如磁盤存儲器,它介于順序存取和隨機(jī)存取之間。
(3)只讀存儲器(ROM):只讀存儲器是一種對其內(nèi)容只能讀不能寫入的存儲器,即預(yù)先一次寫入的存儲器。通常用來存放固定不變的信息。如經(jīng)常用作微程序控制存儲器。目前已有可重寫的只讀存儲器。常見的有掩模ROM(MROM),可擦除可編程ROM(EPROM),電可擦除可編程ROM(EEPROM).ROM的電路比RAM的簡單、集成度高,成本低,且是一種非易失性存儲器,計算機(jī)常把一些管理、監(jiān)控程序、成熟的用戶程序放在ROM中。
3.按信息的可保存性分類
非永久記憶的存儲器:斷電后信息就消失的存儲器,如半導(dǎo)體讀/寫存儲器RAM。
永久性記憶的存儲器:斷電后仍能保持信息的存儲器,如磁性材料做成的存儲器以及半導(dǎo)體ROM.
4.按在計算機(jī)系統(tǒng)中的作用分類
主存儲器 輔助存儲器緩沖存儲器 控制存儲器
操作系統(tǒng)的主要功能是資源管理,程序控制和人機(jī)交互等。計算機(jī)系統(tǒng)的資源可分為設(shè)備資源和信息資源兩大類。設(shè)備資源指的是組成計算機(jī)的硬件設(shè)備,如中央處理器,主存儲器,磁盤存儲器,打印機(jī),磁帶存儲器,顯示器,鍵盤輸入設(shè)備和鼠標(biāo)等。信息資源指的是存放于計算機(jī)內(nèi)的各種數(shù)據(jù),如文件,程序庫,知識庫,系統(tǒng)軟件和應(yīng)用軟件等。
操作系統(tǒng)位于底層硬件與用戶之間,是兩者溝通的橋梁。用戶可以通過操作系統(tǒng)的用戶界面,輸入命令。操作系統(tǒng)則對命令進(jìn)行解釋,驅(qū)動硬件設(shè)備,實現(xiàn)用戶要求。以現(xiàn)代觀點(diǎn)而言,一個標(biāo)準(zhǔn)個人電腦的OS應(yīng)該提供以下的功能:
進(jìn)程管理(Processing management)
內(nèi)存管理(Memory management)
文件系統(tǒng)(File system)
網(wǎng)絡(luò)通訊(Networking)
安全機(jī)制(Security)
用戶界面(User interface)
驅(qū)動程序(Device drivers)
資源管理
系統(tǒng)的設(shè)備資源和信息資源都是操作系統(tǒng)根據(jù)用戶需求按一定的策略來進(jìn)行分配和調(diào)度的。操作系統(tǒng)的存儲管理就負(fù)責(zé)把內(nèi)存單元分配給需要內(nèi)存的程序以便讓它執(zhí)行,在程序執(zhí)行結(jié)束后將它占用的內(nèi)存單元收回以便再使用。對于提供虛擬存儲的計算機(jī)系統(tǒng),操作系統(tǒng)還要與硬件配合做好頁面調(diào)度工作,根據(jù)執(zhí)行程序的要求分配頁面,在執(zhí)行中將頁面調(diào)入和調(diào)出內(nèi)存以及回收頁面等。
處理器管理或稱處理器調(diào)度,是操作系統(tǒng)資源管理功能的另一個重要內(nèi)容。在一個允許多道程序同時執(zhí)行的系統(tǒng)里,操作系統(tǒng)會根據(jù)一定的策略將處理器交替地分配給系統(tǒng)內(nèi)等待運(yùn)行的程序。一道等待運(yùn)行的程序只有在獲得了處理器后才能運(yùn)行。一道程序在運(yùn)行中若遇到某個事件,例如啟動外部設(shè)備而暫時不能繼續(xù)運(yùn)行下去,或一個外部事件的發(fā)生等等,操作系統(tǒng)就要來處理相應(yīng)的事件,然后將處理器重新分配。
操作系統(tǒng)的設(shè)備管理功能主要是分配和回收外部設(shè)備以及控制外部設(shè)備按用戶程序的要求進(jìn)行操作等。對于非存儲型外部設(shè)備,如打印機(jī)、顯示器等,它們可以直接作為一個設(shè)備分配給一個用戶程序,在使用完畢后回收以便給另一個需求的用戶使用。對于存儲型的外部設(shè)備,如磁盤、磁帶等,則是提供存儲空間給用戶,用來存放文件和數(shù)據(jù)。存儲性外部設(shè)備的管理與信息管理是密切結(jié)合的。
信息管理是操作系統(tǒng)的一個重要的功能,主要是向用戶提供一個文件系統(tǒng)。一般說,一個文件系統(tǒng)向用戶提供創(chuàng)建文件,撤銷文件,讀寫文件,打開和關(guān)閉文件等功能。有了文件系統(tǒng)后,用戶可按文件名存取數(shù)據(jù)而無需知道這些數(shù)據(jù)存放在哪里。這種做法不僅便于用戶使用而且還有利于用戶共享公共數(shù)據(jù)。此外,由于文件建立時允許創(chuàng)建者規(guī)定使用權(quán)限,這就可以保證數(shù)據(jù)的安全性。
程序控制
一個用戶程序的執(zhí)行自始至終是在操作系統(tǒng)控制下進(jìn)行的。一個用戶將他要解決的問題用某一種程序設(shè)計語言編寫了一個程序后就將該程序連同對它執(zhí)行的要求輸入到計算機(jī)內(nèi),操作系統(tǒng)就根據(jù)要求控制這個用戶程序的執(zhí)行直到結(jié)束。操作系統(tǒng)控制用戶的執(zhí)行主要有以下一些內(nèi)容:調(diào)入相應(yīng)的編譯程序,將用某種程序設(shè)計語言編寫的源程序編譯成計算機(jī)可執(zhí)行的目標(biāo)程序,分配內(nèi)存儲等資源將程序調(diào)入內(nèi)存并啟動,按用戶指定的要求處理執(zhí)行中出現(xiàn)的各種事件以及與操作員聯(lián)系請示有關(guān)意外事件的處理等。
人機(jī)交互
操作系統(tǒng)的人機(jī)交互功能是決定計算機(jī)系統(tǒng)“友善性”的一個重要因素。人機(jī)交互功能主要靠可輸入輸出的外部設(shè)備和相應(yīng)的軟件來完成??晒┤藱C(jī)交互使用的設(shè)備主要有鍵盤顯示、鼠標(biāo)、各種模式識別設(shè)備等。與這些設(shè)備相應(yīng)的軟件就是操作系統(tǒng)提供人機(jī)交互功能的部分。人機(jī)交互部分的主要作用是控制有關(guān)設(shè)備的運(yùn)行和理解并執(zhí)行通過人機(jī)交互設(shè)備傳來的有關(guān)的各種命令和要求。
進(jìn)程管理
不管是常駐程序或者應(yīng)用程序,他們都以進(jìn)程為標(biāo)準(zhǔn)執(zhí)行單位。當(dāng)年運(yùn)用馮紐曼架構(gòu)建造電腦時,每個中央處理器最多只能同時執(zhí)行一個進(jìn)程。早期的OS(例如DOS)也不允許任何程序打破這個限制,且DOS同時只有執(zhí)行一個進(jìn)程(雖然DOS自己宣稱他們擁有終止并等待駐留(TSR)能力,可以部分且艱難地解決這問題)。現(xiàn)代的操作系統(tǒng),即使只擁有一個CPU,也可以利用多進(jìn)程(multitask)功能同時執(zhí)行復(fù)數(shù)進(jìn)程。進(jìn)程管理指的是操作系統(tǒng)調(diào)整復(fù)數(shù)進(jìn)程的功能。
由于大部分的電腦只包含一顆中央處理器,在單內(nèi)核(Core)的情況下多進(jìn)程只是簡單迅速地切換各進(jìn)程,讓每個進(jìn)程都能夠執(zhí)行,在多內(nèi)核或多處理器的情況下,所有進(jìn)程通過許多協(xié)同技術(shù)在各處理器或內(nèi)核上轉(zhuǎn)換。越多進(jìn)程同時執(zhí)行,每個進(jìn)程能分配到的時間比率就越小。很多OS在遇到此問題時會出現(xiàn)諸如音效斷續(xù)或鼠標(biāo)跳格的情況(稱做崩潰(Thrashing),一種OS只能不停執(zhí)行自己的管理程序并耗盡系統(tǒng)資源的狀態(tài),其他使用者或硬件的程序皆無法執(zhí)行)。進(jìn)程管理通常實現(xiàn)了分時的概念,大部分的OS可以利用指定不同的特權(quán)等級(priority),為每個進(jìn)程改變所占的分時比例。特權(quán)越高的進(jìn)程,執(zhí)行優(yōu)先級越高,單位時間內(nèi)占的比例也越高。交互式OS也提供某種程度的回饋機(jī)制,讓直接與使用者交互的進(jìn)程擁有較高的特權(quán)值。
內(nèi)存管理
根據(jù)帕金森定律:“你給程序再多內(nèi)存,程序也會想盡辦法耗光”,因此程序員通常希望系統(tǒng)給他無限量且無限快的存儲器。大部分的現(xiàn)代計算機(jī)存儲器架構(gòu)都是層次結(jié)構(gòu)式的,最快且數(shù)量最少的暫存器為首,然后是高速緩存、存儲器以及最慢的磁盤存儲設(shè)備。而操作系統(tǒng)的存儲器管理提供查找可用的記憶空間、配置與釋放記憶空間以及交換存儲器和低速存儲設(shè)備的內(nèi)含物……等功能。此類又被稱做虛擬內(nèi)存管理的功能大幅增加每個進(jìn)程可獲得的記憶空間(通常是4GB,既使實際上RAM的數(shù)量遠(yuǎn)少于這數(shù)目)。然而這也帶來了微幅降低運(yùn)行效率的缺點(diǎn),嚴(yán)重時甚至也會導(dǎo)致進(jìn)程崩潰。
存儲器管理的另一個重點(diǎn)活動就是借由CPU的幫助來管理虛擬位置。如果同時有許多進(jìn)程存儲于記憶設(shè)備上,操作系統(tǒng)必須防止它們互相干擾對方的存儲器內(nèi)容(除非通過某些協(xié)定在可控制的范圍下操作,并限制可訪問的存儲器范圍)。分區(qū)存儲器空間可以達(dá)成目標(biāo)。每個進(jìn)程只會看到整個存儲器空間(從0到存儲器空間的最大上限)被配置給它自己(當(dāng)然,有些位置被操作系統(tǒng)保留而禁止訪問)。CPU事先存了幾個表以比對虛擬位置與實際存儲器位置,這種方法稱為標(biāo)簽頁(paging)配置。
借由對每個進(jìn)程產(chǎn)生分開獨(dú)立的位置空間,操作系統(tǒng)也可以輕易地一次釋放某進(jìn)程所占據(jù)的所有存儲器。如果這個進(jìn)程不釋放存儲器,操作系統(tǒng)可以退出進(jìn)程并將存儲器自動釋放。
虛擬內(nèi)存
虛擬內(nèi)存是計算機(jī)系統(tǒng)內(nèi)存管理的一種技術(shù)。它使得應(yīng)用程序認(rèn)為它擁有連續(xù)的可用的內(nèi)存(一個連續(xù)完整的地址空間),而實際上,它通常是被分隔成多個物理內(nèi)存碎片,還有部分暫時存儲在外部磁盤存儲器上,在需要時進(jìn)行數(shù)據(jù)交換。
在早期的單用戶單任務(wù)操作系統(tǒng)(如DOS)中,每臺計算機(jī)只有一個用戶,每次運(yùn)行一個程序,且次序不是很大,單個程序完全可以存放在實際內(nèi)存中。這時虛擬內(nèi)存并沒有太大的用處。但隨著程序占用存儲器容量的增長和多用戶多任務(wù)操作系統(tǒng)的出現(xiàn),在程序設(shè)計時,在程序所需要的存儲量與計算機(jī)系統(tǒng)實際配備的主存儲器的容量之間往往存在著矛盾。例如,在某些低檔的計算機(jī)中,物理內(nèi)存的容量較小,而某些程序卻需要很大的內(nèi)存才能運(yùn)行;而在多用戶多任務(wù)系統(tǒng)中,多個用戶或多個任務(wù)更新全部主存,要求同時執(zhí)行獨(dú)斷程序。這些同時運(yùn)行的程序到底占用實際內(nèi)存中的哪一部分,在編寫程序時是無法確定的,必須等到程序運(yùn)行時才動態(tài)分配。[4]
為此,希望在編寫程序時獨(dú)立編址,既不考慮程序是否能在物理存儲中存放得下,也不考慮程序應(yīng)該存放在什么物理位置。而在程序運(yùn)行時,則分配給每個程序一定的運(yùn)行空間,由地址轉(zhuǎn)換部件將編程時的地址轉(zhuǎn)換成實際內(nèi)存的物理地址。如果分配的內(nèi)存不夠,則只調(diào)入當(dāng)前正在運(yùn)行的或?qū)⒁\(yùn)行的程序塊(或數(shù)據(jù)塊),其余部分暫時駐留在輔存中。