這篇文章將為大家詳細(xì)講解有關(guān)計算機(jī)中不產(chǎn)生內(nèi)部碎片的存儲管理是什么,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)阜新免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。不會產(chǎn)生內(nèi)部碎片的存儲管理是:分段式存儲管理。在分段存儲管理方式中,作業(yè)的地址空間被劃分為若干個段,每個段定義了一組邏輯信息。每個段都從0開始編址,并采用一段連續(xù)的地址空間。整個作業(yè)的地址空間由于是分成多個段,因而是二維的。
不會產(chǎn)生內(nèi)部碎片的存儲管理是:分段式存儲管理。分頁式存儲管理才有內(nèi)部碎片,分段式存儲管理有外部碎片。
分頁式存儲管理
分頁存儲管理是將一個進(jìn)程的邏輯地址空間分成若干個大小相等的片,稱為頁面或頁,并為各頁加以編號,從0開始,如第0頁、第1頁等。
相應(yīng)地,也把內(nèi)存空間分成與頁面相同大小的若干個存儲塊,稱為(物理)塊或頁框(frame),也同樣為它們加以編號,如0#塊、1#塊等等。在為進(jìn)程分配內(nèi)存時,以塊為單位將進(jìn)程中的若干個頁分別裝入到多個可以不相鄰接的物理塊中。由于進(jìn)程的最后一頁經(jīng)常裝不滿一塊而形成了不可利用的碎片,稱之為“頁內(nèi)碎片”。
分段式存儲管理
引入分段存儲管理方式的目的,則主要是為了滿足用戶(程序員)在編程和使用上多方面的要求,其中有些要求是其它幾種存儲管理方式所難以滿足的。因此,這種存儲管理方式已成為當(dāng)今所有存儲管理方式的基礎(chǔ)。
在分段存儲管理方式中,作業(yè)的地址空間被劃分為若干個段,每個段定義了一組邏輯信息。例如,有主程序段MAIN、子程序段X、數(shù)據(jù)段D及棧段S等。每個段都有自己的名字。為了實(shí)現(xiàn)簡單起見,通常可用一個段號來代替段名,每個段都從0開始編址,并采用一段連續(xù)的地址空間。段的長度由相應(yīng)的邏輯信息組的長度決定,因而各段長度不等。整個作業(yè)的地址空間由于是分成多個段,因而是二維的,亦即,其邏輯地址由段號(段名)和段內(nèi)地址所組成。
分段地址中的地址具有如下結(jié)構(gòu):
在該地址結(jié)構(gòu)中,允許一個作業(yè)最長有 64 K個段,每個段的較大長度為64 KB?!》侄畏绞揭训玫皆S多編譯程序的支持,編譯程序能自動地根據(jù)源程序的情況而產(chǎn)生若干個段。例如,Pascal編譯程序可以為全局變量、用于存儲相應(yīng)參數(shù)及返回地址的過程調(diào)用棧、每個過程或函數(shù)的代碼部分、每個過程或函數(shù)的局部變量等等,分別建立各自的段。類似地,F(xiàn)ortran編譯程序可以為公共塊(Common block)建立單獨(dú)的段,也可以為數(shù)組分配一個單獨(dú)的段。裝入程序?qū)⒀b入所有這些段,并為每個段賦予一個段號。
引入分段存儲管理方式,主要是為了滿足用戶和程序員的下述一系列需要:
1) 方便編程
通常,用戶把自己的作業(yè)按照邏輯關(guān)系劃分為若干個段,每個段都是從0開始編址,并有自己的名字和長度。因此,希望要訪問的邏輯地址是由段名(段號)和段內(nèi)偏移量(段內(nèi)地址)決定的。例如,下述的兩條指令便是使用段名和段內(nèi)地址:
LOAD 1,[A] |〈D〉;
STORE 1,[B] |〈C〉;
其中,前一條指令的含義是將分段A中D單元內(nèi)的值讀入寄存器1;后一條指令的含義是將寄存器1的內(nèi)容存入B分段的C單元中。
2) 信息共享
在實(shí)現(xiàn)對程序和數(shù)據(jù)的共享時,是以信息的邏輯單位為基礎(chǔ)的。比如,共享某個例程和函數(shù)。分頁系統(tǒng)中的“頁”只是存放信息的物理單位(塊),并無完整的意義,不便于實(shí)現(xiàn)共享;然而段卻是信息的邏輯單位。由此可知,為了實(shí)現(xiàn)段的共享,希望存儲管理能與用戶程序分段的組織方式相適應(yīng)。
3) 信息保護(hù)
信息保護(hù)同樣是對信息的邏輯單位進(jìn)行保護(hù),因此,分段管理方式能更有效和方便地實(shí)現(xiàn)信息保護(hù)功能。
4) 動態(tài)增長
在實(shí)際應(yīng)用中,往往有些段,特別是數(shù)據(jù)段,在使用過程中會不斷地增長,而事先又無法確切地知道數(shù)據(jù)段會增長到多大。前述的其它幾種存儲管理方式,都難以應(yīng)付這種動態(tài)增長的情況,而分段存儲管理方式卻能較好地解決這一問題。
5) 動態(tài)鏈接
動態(tài)鏈接是指在作業(yè)運(yùn)行之前,并不把幾個目標(biāo)程序段鏈接起來。要運(yùn)行時,先將主程序所對應(yīng)的目標(biāo)程序裝入內(nèi)存并啟動運(yùn)行,當(dāng)運(yùn)行過程中又需要調(diào)用某段時,才將該段(目標(biāo)程序)調(diào)入內(nèi)存并進(jìn)行鏈接。可見,動態(tài)鏈接也要求以段作為管理的單位。
關(guān)于“計算機(jī)中不產(chǎn)生內(nèi)部碎片的存儲管理是什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
分享題目:計算機(jī)中不產(chǎn)生內(nèi)部碎片的存儲管理是什么-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://aaarwkj.com/article28/dihjcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、外貿(mào)建站、網(wǎng)站制作、做網(wǎng)站、營銷型網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容