日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

《现代操作系统》第3章读书笔记--内存管理(未完成)

發(fā)布時間:2025/4/5 windows 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《现代操作系统》第3章读书笔记--内存管理(未完成) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

寫在前面:本文僅供個人學(xué)習(xí)使用,如有侵權(quán),請聯(lián)系刪除。文章中所用圖片絕大多數(shù)來源于《現(xiàn)代操作系統(tǒng)(第4版)》,請讀者支持原版。

內(nèi)存(RAM) 是計算機中一種需要認真管理的重要資源。一個事實是程序大小的正常速度比內(nèi)存容量的增長速度要快得多。正如帕金森定律所指出的:“不管存儲器有多大,程序都可以把它填滿。”在這一章中,我們將討論操作系統(tǒng)是怎樣對存儲器創(chuàng)建抽象模型以及怎樣管理它們的。

每個程序員都夢想擁有這樣的存儲器:它是私有的、容量無限大的、速度無限快的,并且是永久性的(即斷電時不會丟失數(shù)據(jù))。當(dāng)我們期望這樣的存儲器時,何不進一步要求它價格低廉? 遺憾的是,目前的技術(shù)還不能為我們提供這樣的存儲器。

除此之外的選擇是什么呢? 經(jīng)過多年探索,人們提出了分層存儲器體系(memory hierarchy) 的概念,即在這個體系中,計算機有若干兆(MB)快速、昂貴且易失性的高速緩存(cache),數(shù)千兆(GB)速度與價格適中且同樣易失性的內(nèi)存,以及幾兆兆(TB)低速、廉價、非易失性的磁盤存儲,另外還有諸如DVD和USB等可移動存儲裝置。操作系統(tǒng)的工作是將這個存儲體系抽象為一個有用的模型并管理這個抽象模型。

操作系統(tǒng)中管理分層存儲器模型的部分稱為存儲管理器(memory manager) 。它的任務(wù)是有效地管理內(nèi)存,即記錄哪些內(nèi)存是正在使用的,哪些內(nèi)存是空閑的;在進程需要時為其分配內(nèi)存,在進程使用完后釋放內(nèi)存。

文章目錄

    • 3.1 無存儲器抽象
    • 3.2 一種存儲器抽象:地址空間
      • 3.2.1 地址空間的概念
      • 3.2.2 交換技術(shù)
      • 3.2.3 空閑內(nèi)存管理
    • 3.3 虛擬內(nèi)存
      • 3.3.1 分頁
      • 3.3.2 頁表
      • 3.3.3 加速分頁過程
      • 3.3.4 針對大內(nèi)存的頁表
    • 3.4 頁面置換算法
      • 3.4.1 最優(yōu)頁面置換算法
      • 3.4.2最近未使用(NRU)頁面置換算法
      • 3.4.3先進先出(FIFO)頁面置換算法
      • 3.4.4 第二次機會頁面置換算法
      • 3.4.5時鐘頁面置換算法
      • 3.4.6最近最少使用(LRU)頁面置換算法
      • 3.4.7 用軟件模擬LRU
      • 3.4.8 工作集頁面置換算法
      • 3.4.9 工作集時鐘頁面置換算法
      • 3.4.10 頁面置換算法小結(jié)
    • 3.5 分頁系統(tǒng)中的設(shè)計問題
      • 3.5.1 局部分配策略與全局分配策略
      • 3.5.2負載控制
      • 3.5.3 頁面大小
      • 3.5.4 分離的指令空間和數(shù)據(jù)空間
      • 3.5.5 共享頁面
      • 3.5.6 共享庫
      • 3.5.7 內(nèi)存映射文件
      • 3.5.8 清除策略
      • 3.5.9 虛擬內(nèi)存接口
    • 3.6 有關(guān)實現(xiàn)的問題
      • 3.6.1 與分頁有關(guān)的工作
      • 3.6.2 缺頁中斷處理
      • 3.6.3指令備份
      • 3.6.4 鎖定內(nèi)存中的頁面
      • 3.6.5 后備存儲
      • 3.6.6 策略和機制的分離
    • 3.7 分段
      • 3.7.1純分段的實現(xiàn)
      • 3.7.2 分段與分頁結(jié)合:MULTICS
      • 3.7.3 分段與分頁結(jié)合:Intel x86
    • 3.8 小結(jié)

3.1 無存儲器抽象

最簡單的存儲器抽象就是根本沒有抽象。每一個程序都直接訪問物理內(nèi)存。當(dāng)一個程序執(zhí)行如下指令

MOVE REGISTER1,1000

計算機會將位置為1000的物理內(nèi)存中的內(nèi)容移到REGISTER1中。因此,那時呈現(xiàn)給編程人員的存儲器模型就是簡單的物理內(nèi)存:從0到某個上限的地址集合,每一個地址對應(yīng)一個可容納一定數(shù)目二進制位的存儲單元,通常為8個。

在這種情況下,要想在內(nèi)存中同時運行兩個程序是不可能的。如果第一個程序在2000 的位置寫入一個新的值,將會擦掉第二個程序存放在相同位置上的所有內(nèi)容,所以同時運行兩個程序是根本行不通的,這兩個程序會立即崩潰。

不過即使存儲器模型就是物理模型,還是存在一些可行選項的。圖3-1展示了三種變體。 在a)中,操作系統(tǒng)位于RAM(隨機訪問存儲器)的底部;在b)中,操作系統(tǒng)位于內(nèi)存頂端的ROM(只讀存儲器)中;在C)中,設(shè)備驅(qū)動程序位于內(nèi)存頂端的ROM中,而操作系統(tǒng)的其他部分則位于下面的RAM底部。第一種方案以前用于大型機和小型計算機,現(xiàn)在很少使用了。第二種方案被用在一些掌上電腦和嵌入式系統(tǒng)中。第三種方案用于早期的個人計算機中(例如運行MS-DOS的計算機),在ROM中的系統(tǒng)部分稱為BIOS(Basic Input Output System,基本輸入輸出系統(tǒng))。第一種和第三種方案的缺點是用戶程序出現(xiàn)的錯誤可能摧毀操作系統(tǒng),引發(fā)災(zāi)難性后果。

當(dāng)按這種方式組織系統(tǒng)時,通常同一時刻只能有一個進程在運行。一旦用戶鍵入了一個命令,操作系統(tǒng)就把需要的程序從磁盤復(fù)制到內(nèi)存中執(zhí)行;當(dāng)進行運行結(jié)束后,操作系統(tǒng)在用戶終端顯示提示符并等待新的命令。收到新的命令后,它把新的程序裝入內(nèi)存,覆蓋前一個程序。

在沒有存儲器抽象的系統(tǒng)中實現(xiàn)并行的一種方法是使用多線程來編程。由于在引入線程時就假設(shè)一個進程中的所有線程對同一

在不使用存儲器抽象的情況下運行多個程序

3.2 一種存儲器抽象:地址空間

3.2.1 地址空間的概念

基址寄存器與界限寄存器

3.2.2 交換技術(shù)

3.2.3 空閑內(nèi)存管理

3.3 虛擬內(nèi)存

3.3.1 分頁

3.3.2 頁表

3.3.3 加速分頁過程

3.3.4 針對大內(nèi)存的頁表

3.4 頁面置換算法

3.4.1 最優(yōu)頁面置換算法

3.4.2最近未使用(NRU)頁面置換算法

3.4.3先進先出(FIFO)頁面置換算法

3.4.4 第二次機會頁面置換算法

3.4.5時鐘頁面置換算法

3.4.6最近最少使用(LRU)頁面置換算法

3.4.7 用軟件模擬LRU

3.4.8 工作集頁面置換算法

3.4.9 工作集時鐘頁面置換算法

3.4.10 頁面置換算法小結(jié)

3.5 分頁系統(tǒng)中的設(shè)計問題

3.5.1 局部分配策略與全局分配策略

3.5.2負載控制

3.5.3 頁面大小

3.5.4 分離的指令空間和數(shù)據(jù)空間

3.5.5 共享頁面

3.5.6 共享庫

3.5.7 內(nèi)存映射文件

3.5.8 清除策略

3.5.9 虛擬內(nèi)存接口

3.6 有關(guān)實現(xiàn)的問題

3.6.1 與分頁有關(guān)的工作

3.6.2 缺頁中斷處理

3.6.3指令備份

3.6.4 鎖定內(nèi)存中的頁面

3.6.5 后備存儲

3.6.6 策略和機制的分離

3.7 分段

3.7.1純分段的實現(xiàn)

3.7.2 分段與分頁結(jié)合:MULTICS

3.7.3 分段與分頁結(jié)合:Intel x86

3.8 小結(jié)

總結(jié)

以上是生活随笔為你收集整理的《现代操作系统》第3章读书笔记--内存管理(未完成)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。