五分钟带你了解《操作系统原理》
前言:
- (1)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
- (2)硬件環(huán)境
- (3)操作系統(tǒng)結(jié)構(gòu)
- (1)進(jìn)程
- (2)進(jìn)程狀態(tài)
- (3) 中斷優(yōu)先級(jí)和中斷屏蔽
- 頁(yè)式存儲(chǔ)管理
在生活中常聽說(shuō)過這種話,如果想做為一個(gè)編程高手學(xué)習(xí)操作系統(tǒng)是必要的,現(xiàn)在我國(guó)大多都屬于應(yīng)用層面的開發(fā),操作系統(tǒng)層面開發(fā)少至要少,為了成為真正的高手給大家每天 分享一個(gè)操作系統(tǒng)知識(shí),每天一小步就是夢(mèng)想的一大步。
誰(shuí)都知道計(jì)算機(jī)系統(tǒng)是由 硬件和軟件組成的,計(jì)算機(jī)硬件的每一次革新都伴隨著操作系統(tǒng)的發(fā)展。
操作系統(tǒng)的發(fā)展大致分為4個(gè)階段。 第一代的 電子管計(jì)算機(jī)誕生于 20世紀(jì)40年代,當(dāng)時(shí)操作系統(tǒng)尚未出現(xiàn),程序員直接與硬件打交道; 第二代的 晶體管計(jì)算機(jī)始于 20世紀(jì)50年代,為了提高計(jì)算資源的使用效率,減少空閑時(shí)間,提出了單道批處理系統(tǒng); 20世紀(jì)60年代,隨著小規(guī)模 集成電路的發(fā)展,出現(xiàn)了多道批操作系統(tǒng),以進(jìn)一步提高資源的使用效率; 20世紀(jì)70年代, 大規(guī)模集成電路飛速發(fā)展,操作系統(tǒng)百家爭(zhēng)鳴,涌現(xiàn)出UNIX、DOS、Windows、Mac OS、Linux等著名的操作系統(tǒng)。
01
第四代操作系統(tǒng)
20世紀(jì)70年代,隨著大規(guī)模集成電路的發(fā)展,微處理器的性能日益強(qiáng)大,計(jì)算機(jī)逐漸從大型機(jī)發(fā)展為微型機(jī),操作系統(tǒng)的發(fā)展也進(jìn)入了個(gè)人計(jì)算機(jī)和工作站時(shí)代。兩款著名的操作系統(tǒng)占領(lǐng)了大部分PC市場(chǎng):微軟公司編寫的MS-DOS操作系統(tǒng)主要運(yùn)行在IBM個(gè)人計(jì)算機(jī)和使用英特爾處理器的計(jì)算機(jī)中;UNIX則主要運(yùn)行在使用摩托羅拉處理器的大型個(gè)人計(jì)算機(jī)中。
02
國(guó)產(chǎn)操作系統(tǒng)
我國(guó)最早的操作系統(tǒng)可以追溯到20世紀(jì)70年代末,在40多年的發(fā)展歷史中,涌現(xiàn)出多種國(guó)產(chǎn)操作系統(tǒng),大體可將其分成自主研發(fā)與基于Linux內(nèi)核兩大類。
自主研發(fā)操作系統(tǒng)是指一個(gè)從無(wú)到有構(gòu)建出來(lái)的操作系統(tǒng)。早期的國(guó)產(chǎn)操作系統(tǒng)COSIX及最初的麒麟操作系統(tǒng)均采取了自主研發(fā)的策略,除產(chǎn)品的規(guī)格定義參照國(guó)際標(biāo)準(zhǔn)外,整個(gè)操作系統(tǒng)均由中國(guó)開發(fā)人員進(jìn)行開發(fā),不依賴已有成果。這類型操作系統(tǒng)的知識(shí)產(chǎn)權(quán)完全自主可控,但由于“閉門造車”的開發(fā)方式,受開發(fā)團(tuán)隊(duì)的限制,使系統(tǒng)容易存在漏洞;同時(shí),由于市場(chǎng)規(guī)模較小,會(huì)出現(xiàn)軟件生態(tài)薄弱等問題,除中科方德外,當(dāng)前大多數(shù)國(guó)產(chǎn)操作系統(tǒng)已不再采取自主研發(fā)的方式。
由于開源操作系統(tǒng)內(nèi)核Linux的出現(xiàn),越來(lái)越多的廠商選擇基于Linux內(nèi)核或基礎(chǔ)發(fā)行版進(jìn)行研發(fā),實(shí)現(xiàn)自主可控的目標(biāo)。與Windows操作系統(tǒng)存在斷供風(fēng)險(xiǎn)不同,Linux內(nèi)核由GPL v2許可證授權(quán),因此任何人都可以使用Linux內(nèi)核,對(duì)其進(jìn)行運(yùn)行、復(fù)制、修改、分發(fā),甚至是盈利,這為基于Linux的國(guó)產(chǎn)操作系統(tǒng)提供了自主可控的基礎(chǔ)。同時(shí),操作系統(tǒng)廠商需要對(duì)Linux內(nèi)核進(jìn)行深入的分析與研究,對(duì)代碼有一定的把握,可以對(duì)其進(jìn)行定制及安全增強(qiáng),防止后門的出現(xiàn)。
一、概念:
- (1)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
- (2)硬件環(huán)境
- (3)操作系統(tǒng)結(jié)構(gòu)
- (1)進(jìn)程
- (2)進(jìn)程狀態(tài)
- (3) 中斷優(yōu)先級(jí)和中斷屏蔽
- 頁(yè)式存儲(chǔ)管理
(1)什么是操作系統(tǒng)
在回答這個(gè)問題之前,我們先來(lái)了解一下什么是計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)系統(tǒng)是按用戶的要求接收和存儲(chǔ)信息、自動(dòng)進(jìn)行數(shù)據(jù)處理并輸出結(jié)果信息的系統(tǒng)。
計(jì)算機(jī)系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)組成。軟硬件系統(tǒng)的組成部分就是計(jì)算機(jī)系統(tǒng)的資源,當(dāng)不同的用戶使用計(jì)算機(jī)時(shí)都要占用系統(tǒng)資源并且有不同的控制需求。
操作系統(tǒng)就是計(jì)算機(jī)系統(tǒng)的一種系統(tǒng)軟件,由它統(tǒng)一管理計(jì)算機(jī)系統(tǒng)的資源和控制程序的執(zhí)行。
操作系統(tǒng)的設(shè)計(jì)目標(biāo)一是使計(jì)算機(jī)系統(tǒng)使用方便。二是使得計(jì)算機(jī)系統(tǒng)能高效地工作。
(2)操作系統(tǒng)的形成
早期沒有操作系統(tǒng)→原始匯編系統(tǒng)→管理程序→操作系統(tǒng) 可以看到,操作系統(tǒng)是隨著計(jì)算機(jī)硬件的發(fā)展和應(yīng)用需求的推動(dòng)而形成的。
(3)操作系統(tǒng)的類型
按照操作系統(tǒng)提供的服務(wù),大致可以把操作系統(tǒng)分為以下幾類:
批處理操作系統(tǒng)、分時(shí)操作系統(tǒng)、實(shí)時(shí)操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)。其中批處理操作系統(tǒng)、分時(shí)操作系統(tǒng)、實(shí)時(shí)操作系統(tǒng)是基本的操作系統(tǒng)。
批處理操作系統(tǒng)按照用戶預(yù)先規(guī)定好的步驟控制作業(yè)的執(zhí)行,實(shí)現(xiàn)計(jì)算機(jī)操作的自動(dòng)化。又可分為批處理單道系統(tǒng)和批處理多道系統(tǒng)。單道系統(tǒng)每次只有一個(gè)作業(yè)裝入計(jì)算機(jī)系統(tǒng)的主存儲(chǔ)器運(yùn)行,多個(gè)作業(yè)可自動(dòng)、順序地被裝入運(yùn)行。批處理多道系統(tǒng)則允許多個(gè)作業(yè)同時(shí)裝入主存儲(chǔ)器,中央處理器輪流地執(zhí)行各個(gè)作業(yè),各個(gè)作業(yè)可以同時(shí)使用各自所需的外圍設(shè)備,這樣可以充分利用計(jì)算機(jī)系統(tǒng)的資源,縮短作業(yè)時(shí)間,提高系統(tǒng)的吞吐率。
分時(shí)操作系統(tǒng),這種系統(tǒng)中,一個(gè)計(jì)算機(jī)系統(tǒng)與許多終端設(shè)備連接,分時(shí)系統(tǒng)支持多個(gè)終端用戶,同時(shí)以交互方式使用計(jì)算機(jī)系統(tǒng),為用戶在測(cè)試、修改和控制程序執(zhí)行方面提供了靈活性。分時(shí)系統(tǒng)的主要特點(diǎn)是同時(shí)性、獨(dú)立性、及時(shí)性和交互性。
實(shí)時(shí)操作系統(tǒng)能使計(jì)算機(jī)系統(tǒng)接收到外部信號(hào)后及時(shí)進(jìn)行處理,并在嚴(yán)格的規(guī)定時(shí)間內(nèi)完成處理,且給出反饋信號(hào)。它是較少有人為干預(yù)的監(jiān)督和控制系統(tǒng)。實(shí)時(shí)系統(tǒng)對(duì)可靠性和安全性要求極高,不強(qiáng)求系統(tǒng)資源的利用率。
網(wǎng)絡(luò)操作系統(tǒng)可以把若干計(jì)算機(jī)聯(lián)合起來(lái),實(shí)現(xiàn)各臺(tái)計(jì)算機(jī)之間的通信及網(wǎng)絡(luò)中各種資源的共享,像我們現(xiàn)在使用的Windows ,UNIX和Linux等操作系統(tǒng)都是網(wǎng)絡(luò)操作系統(tǒng)。
分布式操作系統(tǒng)的網(wǎng)絡(luò)中各臺(tái)計(jì)算機(jī)沒有主次之分,在任意兩臺(tái)計(jì)算機(jī)間的可進(jìn)行信息交換和資源共享。這一點(diǎn)上分布式操作系統(tǒng)和網(wǎng)絡(luò)操作系統(tǒng)差別不大,他們的本質(zhì)區(qū)別在于:分布式操作系統(tǒng)能使系統(tǒng)中若干計(jì)算機(jī)相互協(xié)作完成一個(gè)共同的任務(wù)。這使得各臺(tái)計(jì)算機(jī)組成一個(gè)完整的,功能強(qiáng)大的計(jì)算機(jī)系統(tǒng)。
(4)操作系統(tǒng)的功能
從資源管理的觀點(diǎn)出發(fā),操作系統(tǒng)功能可分為五大部分:處理器管理、存儲(chǔ)管理、文件管理、設(shè)備管理和作業(yè)管理。
二、OS結(jié)構(gòu):
- (1)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
- (2)硬件環(huán)境
- (3)操作系統(tǒng)結(jié)構(gòu)
- (1)進(jìn)程
- (2)進(jìn)程狀態(tài)
- (3) 中斷優(yōu)先級(jí)和中斷屏蔽
- 頁(yè)式存儲(chǔ)管理
計(jì)算機(jī)系統(tǒng)系統(tǒng)是由硬件系統(tǒng)和軟件系統(tǒng)兩部分組成,操作系統(tǒng)是軟件系統(tǒng)的一個(gè)組成部分,它是直接在硬件系統(tǒng)的硬件的基礎(chǔ)上工作的,所以在研究操作系統(tǒng)之前,先必須對(duì)計(jì)算機(jī)系統(tǒng)的結(jié)果有一個(gè)基本的了解
(1)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
現(xiàn)在的通用計(jì)算機(jī)系統(tǒng)是由硬件和軟件組成的一種層次結(jié)構(gòu),最內(nèi)層是硬件系統(tǒng),最外層是使用計(jì)算機(jī)系統(tǒng)的人,人與硬件系統(tǒng)之間是軟件系統(tǒng)。(2)硬件環(huán)境
CPU和外設(shè)的并行工作I/O中斷的作用存儲(chǔ)結(jié)構(gòu)主存儲(chǔ)器是CPU能訪問的唯一的存儲(chǔ)空間,任何程序和數(shù)據(jù)都必須被封入主存儲(chǔ)器之后,CPU才能對(duì)它進(jìn)行操作主存儲(chǔ)器以“字節(jié)(BYTE)”為單位進(jìn)行編址,若干字節(jié)組成一個(gè)“字(WORD)”。中央處理器可以按地址讀出主存儲(chǔ)器中的一個(gè)字節(jié)或一個(gè)字的內(nèi)容。
輔助存儲(chǔ)器解決了主存儲(chǔ)器容量不足,以及主存儲(chǔ)器無(wú)法保存信息的問題。輔助存儲(chǔ)器的優(yōu)點(diǎn)是容量大且能永久保存信息,缺點(diǎn)是無(wú)法被中央處理器直接訪問,必須通過輔助存儲(chǔ)器才能訪問。
中央處理器存儲(chǔ)信息的速度依次為:存取寄存器中的信息速度最快;通過系統(tǒng)總線存取主存儲(chǔ)器的速度居中;使用輔助存儲(chǔ)器的信息速度最慢。
寄存器用來(lái)存放臨時(shí)的工作信息和系統(tǒng)必須的控制信息。
主存儲(chǔ)器中存放操作系統(tǒng)的核心部分,以及當(dāng)前需執(zhí)行的程序和數(shù)據(jù)。
輔助存儲(chǔ)器是存放操作的核心部分和其他程序和數(shù)據(jù)。
磁盤的信息可隨機(jī)存取,磁帶上的信息只能順序存取。
硬件保護(hù):在資源共享的計(jì)算機(jī)系統(tǒng)中,只有有了必要的保護(hù)措施,才能使個(gè)別的錯(cuò)誤不致影響其他程序。
(3)操作系統(tǒng)結(jié)構(gòu)
層次結(jié)構(gòu)的最大特點(diǎn)是把整體問題局部化。把一個(gè)大型復(fù)雜的操作系統(tǒng)分解成若干單向依賴的層次,由各層的正確性來(lái)保證整個(gè)操作系統(tǒng)的正確性。
采用層次結(jié)構(gòu),能使結(jié)構(gòu)清晰,便于調(diào)試,有利于功能的增、刪和修改,正確性容易得到保證,也提高了系統(tǒng)的可維護(hù)性和可移植性。
操作系統(tǒng)的一種層次結(jié)構(gòu)如下圖:
作業(yè)管理
文件管理
設(shè)備管理
存儲(chǔ)管理
處理器管理
硬件
三、多道程序:
- (1)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
- (2)硬件環(huán)境
- (3)操作系統(tǒng)結(jié)構(gòu)
- (1)進(jìn)程
- (2)進(jìn)程狀態(tài)
- (3) 中斷優(yōu)先級(jí)和中斷屏蔽
- 頁(yè)式存儲(chǔ)管理
(1)進(jìn)程
進(jìn)程的定義:把一個(gè)程序在一個(gè)數(shù)據(jù)集上的一次執(zhí)行稱為一個(gè) “進(jìn)程”進(jìn)程是由程序、數(shù)據(jù)集和進(jìn)程控制塊三部分組成的。我們舉一個(gè)例子,比如在有一個(gè)用戶程序notepad.exe(記事本),當(dāng)它存放在磁盤上時(shí),就是一個(gè)程序,在windows操作系統(tǒng)下運(yùn)行它時(shí),就會(huì)在內(nèi)存中建立一個(gè)記事本程序的進(jìn)程,而我們?cè)谟浭卤局芯庉嫷漠?dāng)前文字就是這個(gè)進(jìn)程的數(shù)據(jù)集,操作系統(tǒng)會(huì)為當(dāng)前的進(jìn)程設(shè)置一個(gè)進(jìn)程控制塊。如果我們?cè)俅蜷_一個(gè)記事本程序的窗口,就會(huì)建立另一個(gè)進(jìn)程,此時(shí)運(yùn)行的是同一個(gè)程序,但存在兩個(gè)進(jìn)程,第二個(gè)窗口中的編輯內(nèi)容就是第二個(gè)進(jìn)程的數(shù)據(jù)集。進(jìn)程與程序的區(qū)別及關(guān)系。程序是靜止的,進(jìn)程是動(dòng)態(tài)的。進(jìn)程包括程序和程序處理的對(duì)象(數(shù)據(jù)集),進(jìn)程能得到程序處理的結(jié)果。進(jìn)程和程序并非一一對(duì)應(yīng)的,一個(gè)程序運(yùn)行在不同的數(shù)據(jù)集上就構(gòu)成了不同的進(jìn)程。通常把進(jìn)程分為“系統(tǒng)進(jìn)程”和“用戶進(jìn)程”兩大類,把完成操作系統(tǒng)功能的進(jìn)程稱為系統(tǒng)進(jìn)程,而完成用戶功能的進(jìn)程則稱為用戶進(jìn)程。
(2)進(jìn)程狀態(tài)
通常,根據(jù)進(jìn)程執(zhí)行過程不同時(shí)刻的狀態(tài),可歸納為三種基本狀態(tài):
等待態(tài) :等待某個(gè)事件的完成;
就緒態(tài) :等待系統(tǒng)分配處理器以便運(yùn)行;
運(yùn)行態(tài) :占有處理器正在運(yùn)行。
(3) 中斷優(yōu)先級(jí)和中斷屏蔽
1、 中端優(yōu)先級(jí)是硬件設(shè)計(jì)時(shí)確定的。中斷裝置按預(yù)定的順序來(lái)響應(yīng)同時(shí)出現(xiàn)的中斷事件,這個(gè)預(yù)定的順序稱為“中斷優(yōu)先級(jí)”。中斷優(yōu)先級(jí)是按中斷事件的重要性和緊迫程度來(lái)確定的 ,是由硬件設(shè)計(jì)師固定下來(lái)的。一般情況下,優(yōu)先級(jí)的高低順序依次為: 硬件故障中斷 、 自愿中斷 、 程序性中斷 , 外部中斷 和 輸入輸出中斷 。
2、中斷的嵌套處理
3、中斷屏蔽的作用。中斷優(yōu)先級(jí)只是規(guī)定了中斷裝置響應(yīng)同時(shí)出現(xiàn)的中斷的次序,當(dāng)中斷裝置響應(yīng)了某個(gè)中斷后中斷處理程序在進(jìn)行處理時(shí),中斷裝置也可能去響應(yīng)另一個(gè)中斷事件。因此會(huì)出現(xiàn)優(yōu)先級(jí)低的中斷事件的處理打斷優(yōu)先級(jí)高的中斷事件的處理,使得中斷事件的處理順序與響應(yīng)順序不一致,而且會(huì)形成多重嵌套處理,使多現(xiàn)場(chǎng)保護(hù)、程序返回等工作變的復(fù)雜。
中斷屏蔽技術(shù)就是為了解決上述問題而提出的在一個(gè)中斷處理沒有結(jié)束之前不響應(yīng)其他中斷事件,或者只響應(yīng)比當(dāng)前級(jí)別高的中斷事件。于是,當(dāng)中斷裝置檢查到有中斷事件后,便去查看PSW中中斷屏蔽標(biāo)志,如果沒有屏蔽就響應(yīng)該中斷;否則,暫時(shí)不響應(yīng)該中斷,待屏蔽標(biāo)志消除后再響應(yīng)。自愿中斷是不能屏蔽的。
四、存儲(chǔ)管理:
- (1)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)
- (2)硬件環(huán)境
- (3)操作系統(tǒng)結(jié)構(gòu)
- (1)進(jìn)程
- (2)進(jìn)程狀態(tài)
- (3) 中斷優(yōu)先級(jí)和中斷屏蔽
- 頁(yè)式存儲(chǔ)管理
操作系統(tǒng)的存儲(chǔ)管理如同一個(gè)大地主,管著一個(gè)大莊園,當(dāng)有農(nóng)戶需要租用田地時(shí),地主就給分配一塊地讓他種(用戶區(qū)分配)。等到地里長(zhǎng)出了果實(shí),結(jié)果出來(lái)后,地主還得來(lái)收回這塊地(去配)。
為了管好這片田地,地主還要管好莊園的門,凡是要進(jìn)去種地的,都得由地主根據(jù)他的需要讓他到位置確定實(shí)際的田地上去干活。(把邏輯地址轉(zhuǎn)換成物理地址)
莊園里還有一些大家共同可以使用的地方,比如地主的花園,工具房等,大家可以進(jìn)去,也可以使用,但是不許改變?nèi)魏维F(xiàn)有的東東,還有,每個(gè)農(nóng)戶只能在自己的地里刨食吃,如果有人膽敢到別人地里或地主的花園里摘花偷食,可要當(dāng)心他們養(yǎng)的狼狗跳出來(lái)哦。(共享和保護(hù))
當(dāng)然,再大的地也是不夠多的,地主為了多賺些錢,當(dāng)所有的地都租出去的時(shí)候,他想辦法把有些種田人暫時(shí)不種的那塊地里的東東連地皮一起挖出來(lái)放到倉(cāng)庫(kù)里先堆著。把地騰出來(lái)租給別人種(這一招可夠絕的,不過地主說(shuō)啦,這就是“虛擬存儲(chǔ)”。)
頁(yè)式存儲(chǔ)管理
1、如何分頁(yè)和分塊
頁(yè)式存儲(chǔ)管理中有兩個(gè)名詞:“ 頁(yè) ”和“ 塊
”,其中的“塊”是針對(duì)硬件來(lái)說(shuō)的,就是把存儲(chǔ)器分成若干相等大小地區(qū),每個(gè)區(qū)就稱為一個(gè)塊。對(duì)應(yīng)的,在程序中,邏輯地址進(jìn)行“分頁(yè)”,其大小和每個(gè)塊相一致。
事實(shí)上,頁(yè)面的大小是由塊的大小決定的。對(duì)于程序來(lái)說(shuō),其邏輯地址還是和原來(lái)一樣采用連續(xù)的地址。只是 按照塊的位數(shù)取其前面數(shù)位作為頁(yè)號(hào) .
分配空間時(shí),根據(jù)作業(yè)長(zhǎng)度可以確定它的頁(yè)面數(shù),根據(jù)這個(gè)頁(yè)面數(shù)在主存中分配相應(yīng)的塊數(shù),只要是空閑塊就可以放入,即使不是相鄰的。并把分配情況記在“頁(yè)表”中,根據(jù)頁(yè)表可以找到相對(duì)應(yīng)的頁(yè)號(hào)與塊號(hào),就得出絕對(duì)地址了。
2、采用頁(yè)式管理,使主存空間充分利用,也不必為了得到連續(xù)空間而進(jìn)行移動(dòng)。 可以提高系統(tǒng)的效率。
3、頁(yè)表的構(gòu)造與作用
每個(gè)被裝入主存的作業(yè)都有一張 頁(yè)表
,指出該作業(yè)邏輯地址中的頁(yè)號(hào)與所占用的主存塊號(hào)之間的對(duì)應(yīng)關(guān)系。頁(yè)表的長(zhǎng)度由作頁(yè)擁有的頁(yè)面數(shù)決定,行號(hào)對(duì)應(yīng)為頁(yè)號(hào),行中記錄的是主頁(yè)中的塊號(hào)。
頁(yè)表是硬件進(jìn)行地址轉(zhuǎn)換的依據(jù),每執(zhí)行一條指令時(shí)按邏輯地址中的頁(yè)號(hào)查找頁(yè)表并轉(zhuǎn)換成絕對(duì)地址。
在多道程序設(shè)計(jì)系統(tǒng)中,進(jìn)入主存的每個(gè)作業(yè)都有一張頁(yè)表,由一個(gè)硬件“頁(yè)表控制寄存器”來(lái)記錄每個(gè)作業(yè)的頁(yè)表所在位置和長(zhǎng)度以便作業(yè)轉(zhuǎn)換時(shí)同時(shí)轉(zhuǎn)換頁(yè)表。
4、快表的構(gòu)造與作用
快表
就是頁(yè)表的一部分克隆,每行中有頁(yè)號(hào)及其對(duì)應(yīng)的塊號(hào),整個(gè)快表存放在一個(gè)小容量的高速緩存中,訪問時(shí)快表和內(nèi)存同時(shí)進(jìn)行查找,因?yàn)榭毂硭俣群芸?#xff0c;而常用的頁(yè)都登記在快表中,因此可以大大加快執(zhí)行速度。
5、采用頁(yè)式管理的地址轉(zhuǎn)換過程
(為什么不直接用塊分配表來(lái)記錄而要用位示圖呢,因?yàn)橹鞔鎵K很多,這樣可以節(jié)省空間,提高效率。位示圖就是用一個(gè)位(0或1)來(lái)表示一個(gè)塊的使用狀態(tài),一個(gè)字32位,可以表示32塊。按順序排列,只需一小段內(nèi)存就可以記錄主存中大量的塊狀態(tài))
6、利用位示圖實(shí)現(xiàn)頁(yè)式存儲(chǔ)空間的分配和回收
頁(yè)式存儲(chǔ)管理把主存空間分成大小固定的許多塊,在裝業(yè)作業(yè)時(shí),如何知道主存中哪些塊已使用,哪些還未用,可以用位示圖來(lái)表示。
塊號(hào)=字號(hào)×字長(zhǎng)+位號(hào)
字號(hào)=[i/字長(zhǎng)](即塊號(hào)i除以字長(zhǎng)取整)
尾號(hào)=i mod 字長(zhǎng)(即塊號(hào)i除以字長(zhǎng)取余)。
今天就寫到這里了這只是簡(jiǎn)單的介紹,后面會(huì)一個(gè)層面的解析,有感興趣的可以加群分享一些編程知識(shí):
總結(jié)
以上是生活随笔為你收集整理的五分钟带你了解《操作系统原理》的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 文字识别之检测部分
- 下一篇: 奔驰S400豪华型升级后排电动腿托系统,