參考:記憶體分段和分頁的區別
分段和分頁其實都是一種對位址的劃分或者對映的方式。
兩者的區別主要有以下幾點:
1)頁是資訊的物理單位;段是資訊的邏輯單位;
分頁是實現離散的分配方式,以消除記憶體的外零頭,提高記憶體的利用率;分段含有一組其意義相對完整的資訊(比如:資料段、**段、和堆疊等);
分頁僅僅是由於系統管理的需要,而不是使用者的需要;分段的目的是為了能夠更好的滿足使用者的需要;
2)頁的大小固定且由系統確定,把邏輯位址劃分為頁號和頁內位址兩部分,是由機器硬體實現的,因而乙個系統只能有一種大小的頁面;
段的長度卻不固定,決定於使用者所編寫的程式,通常由編輯程式在對源程式進行編輯時,根據資訊的性質來劃分。
3)分頁的作業位址空間是一維的,即單一的線性空間,程式設計師只須利用乙個記憶符(線性位址的16進製表示),即可表示一位址;
分段的作業位址空間是二維的,程式設計師在標識乙個位址時,既需給出段名(比如資料段、**段和堆疊段等),又需給出段內位址。
4)頁和段都有儲存保護機制。但訪問許可權不同:段有讀、寫和執行三種許可權;而頁只有讀和寫兩種許可權。
作業系統中記憶體使用與分段
計算機執行的本質是取址執行。1 這裡的取址就是從記憶體中的某個位址處取得指令,然後放入cpu中進行解析該指令 2 這裡的執行就是在cpu解析完該指令後,按照該指令的意願去處理一些任務,比如讀數或寫數。計算機作業系統上電執行時會把儲存在磁碟上的程式指令讀入到記憶體中。我們知道程式每次執行乙個週期都會取...
作業系統 記憶體使用與分段
首先讓程式進入記憶體 程式載入後還需要移動 重定位的最合適時機 執行時重定位 首先在記憶體中找一段空閒的記憶體,然後把這段空閒記憶體的位址找到例如起始位址1000,然後把這個1000賦給pcb,因為建立了程序自然就有了pcb,這個起始位址就作為基位址,然後pc置好初始位址開始執行。把程式放到找到的空...
作業系統 記憶體的分頁管理與分段管理 異同
比較點 分頁分段 目的頁是資訊的物理單位 分頁是為了實現離散分配方式,以抵消記憶體的外部碎片,提高記憶體利用率 分頁僅僅是由於系統管理的需要而不是使用者的需要 段是資訊的邏輯單位 分段是為了能更好地滿足使用者的需要 長度頁的長度固定且由系統決定,由系統把邏輯位址劃分為頁號和頁內位址兩部分,這是由機器...