在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺析計(jì)算機(jī)中物理內(nèi)存的模型

存儲(chǔ)界 ? 來源:未知 ? 作者:胡薇 ? 2018-08-28 16:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

小伙伴們有沒有好奇,數(shù)據(jù)在計(jì)算機(jī)內(nèi)存中,是如何存儲(chǔ)的?計(jì)算機(jī)中物理內(nèi)存的模型是怎樣的呢?今天大雄就給大家詳細(xì)的介紹一下。

在了解存儲(chǔ)模型之前,我們首先應(yīng)該了解一下計(jì)算機(jī)的存儲(chǔ)體系。

個(gè)人感覺學(xué)這部分的知識(shí)應(yīng)該首先在腦海中抽象出存儲(chǔ)體系,因?yàn)闊o論磁盤,物理內(nèi)存還是虛擬內(nèi)存都是互相有聯(lián)系的,抽象出模型有助于我們的理解和記憶。接著需要哪部分知識(shí)或再次深入哪部分知識(shí),從體系圖中找。

建議不要在這塊知識(shí)拉長(zhǎng)戰(zhàn)線,看了前面忘后面。

計(jì)算機(jī)存儲(chǔ)體系圖

簡(jiǎn)述上圖:

從進(jìn)程開始,我們知道進(jìn)程運(yùn)行在內(nèi)存中,每個(gè)進(jìn)程都有自己獨(dú)立的內(nèi)存地址空間,目的是安全和高效利用內(nèi)存,一個(gè)進(jìn)程的地址空間是抽象出來的,屬于虛擬內(nèi)存,而內(nèi)存分為虛擬內(nèi)存和物理內(nèi)存。

從物理內(nèi)存分析,物理內(nèi)存管理分為等長(zhǎng)和不等長(zhǎng)劃分,等長(zhǎng)劃分一般通過位圖來記錄結(jié)構(gòu),不等長(zhǎng)劃分一般通過空閑區(qū)表來記錄。

而物理內(nèi)存的要通過算法來使進(jìn)程合理分配回收,其中分配算法有四種,回收算法分為四種情況,而內(nèi)存分配和回收會(huì)引起內(nèi)存碎片問題,內(nèi)存碎片問題分為內(nèi)碎片和外碎片,解決方案有壓縮技術(shù)。

從虛擬內(nèi)存分析,分為頁(yè)式/段式/段頁(yè)式內(nèi)存管理,中間通過頁(yè)表/段表/段頁(yè)表來進(jìn)行物理到虛擬內(nèi)存的轉(zhuǎn)換,重點(diǎn)是頁(yè)式管理,頁(yè)式管理中重要的概念有頁(yè)表項(xiàng),多級(jí)頁(yè)表,倒排頁(yè)表,MMU,快表TLB和頁(yè)錯(cuò)誤/缺頁(yè)異常,而虛擬存儲(chǔ)技術(shù)中核心概念就是將內(nèi)存中暫時(shí)不用的頁(yè)面(內(nèi)存塊)放入磁盤上,問題是哪些頁(yè)面(內(nèi)存塊)放到磁盤上呢,于是我們引入頁(yè)面置換算法,其中OPT為理想置換算法,基本算法有FIFO,F(xiàn)IFO改進(jìn)后的第二次機(jī)會(huì)算法和時(shí)鐘算法,LRU中老化算法和NRU,既然部分頁(yè)面暫存到磁盤上,那么就要聊聊磁盤。

磁盤是硬件,所以要討論它的結(jié)構(gòu),和如何存取數(shù)據(jù),以及磁盤調(diào)度的一些算法,此外,虛擬內(nèi)存還有重要的兩個(gè)技術(shù)就是內(nèi)存映射和寫時(shí)復(fù)制。

物理內(nèi)存

物理內(nèi)存其實(shí)就是我們機(jī)器的實(shí)際內(nèi)存大小,比如我的筆記本電腦內(nèi)存是4G。我們都知道程序是要加載道內(nèi)存中才能執(zhí)行,所以物理內(nèi)存越大,我們電腦的性能就越好。

位圖

位圖(bitmap),其實(shí)就是用位來標(biāo)記數(shù)據(jù)。

在等長(zhǎng)內(nèi)存管理中,比如我們將內(nèi)存等分為大小相同的內(nèi)存塊,那么一位標(biāo)記一塊,因?yàn)闀?huì)形成一個(gè)位圖。

這樣,我們需要多大的塊,只需要匹配bitmap中連續(xù)多少個(gè)0即可。

空閑區(qū)表

在不等長(zhǎng)劃分中,比如我們根據(jù)進(jìn)程的大小來分配內(nèi)存,這是就需要采用空閑區(qū)表來存儲(chǔ)空閑的內(nèi)存。

空閑區(qū)鏈表只不過是通過鏈?zhǔn)浇Y(jié)構(gòu)將空閑區(qū)表中的數(shù)據(jù)組織起來。

內(nèi)存分配算法

上面說了我們?nèi)绾瓮ㄟ^數(shù)據(jù)結(jié)構(gòu)來組織未分配的內(nèi)存,我們以空閑區(qū)鏈表結(jié)構(gòu)為例,下面來說說物理內(nèi)存的分配算法,有如下四種。

1.首次適配算法

首次適配算法是在空閑區(qū)鏈表中從頭開始查找符合申請(qǐng)內(nèi)存大小的塊,直到找到滿足條件的為止,該算法不斷的從頭開始試驗(yàn)申請(qǐng),所以大部分使用的都是低地址空間的內(nèi)容,從而流出了高地址空間來滿足大的申請(qǐng)需求,但是缺點(diǎn)是會(huì)在較低的地址空間中頻繁的申請(qǐng)和釋放導(dǎo)致低地址空間中的內(nèi)存碎片,而且每次都查找都從頭開始,查找效率比較低。

2.下次適配算法

下次適配算法是首次適配算法的一個(gè)改進(jìn),它每次從上一次適配的地方開始向下查找,不需要每次都從頭開始,此算法使得內(nèi)存使用均勻,但是不會(huì)有大的內(nèi)存塊來滿足內(nèi)存分配。

3.最佳適配算法

此算法先按照內(nèi)存塊的空閑區(qū)大小從小到大進(jìn)行排序,排序后,每次從頭開始匹配,這樣匹配出來的結(jié)果肯定是最優(yōu)的,但實(shí)際因?yàn)楸容^符合申請(qǐng)內(nèi)存的大小,會(huì)出現(xiàn)很多較小的內(nèi)存碎片無法使用,并且每次分配后都要重新排序,開銷比較大。

4.最差適配算法

此算法按照內(nèi)存塊的空閑區(qū)從大到小進(jìn)程排序,排序后,有進(jìn)程申請(qǐng)內(nèi)存時(shí),將表頭最大的內(nèi)存塊分配給它,這樣如果不能分配則所有不能分配,且將大內(nèi)存分配給它,若只占用一小部分還可以進(jìn)行二次分配。

內(nèi)存回收算法

內(nèi)存分配且進(jìn)程使用完后,我們要進(jìn)行回收,一般而言,內(nèi)存回收算法和內(nèi)存的分配算法有著密切的關(guān)系。

所以我們僅僅看內(nèi)存回收算法可能會(huì)出現(xiàn)的四種情況。

左上為上相鄰,右下相鄰,左下是上下相鄰,右下是上下不相鄰。

內(nèi)存碎片

什么是內(nèi)存碎片,就是在內(nèi)存中占據(jù)一定大小的空間卻得不到利用的內(nèi)存。內(nèi)存碎片分為內(nèi)碎片和外碎片。

內(nèi)碎片:比如按頁(yè)式分配等長(zhǎng),那么如果有一個(gè)進(jìn)程需要5頁(yè)多內(nèi)存,那么我們只能給他分配6頁(yè)內(nèi)存,那么這第6頁(yè)是未用完的,其中除過一些數(shù)據(jù)外,我們還有空閑的被該進(jìn)程占據(jù),其他進(jìn)程也不能使用。

外碎片:外碎片是還未分出來的,未被進(jìn)程占用且因?yàn)樘』蚱渌粷M足條件再次分配的小的內(nèi)存塊稱為外碎片。

緊縮技術(shù):我們一般采用緊縮技術(shù)來合并小的內(nèi)存碎片,原理是將暫時(shí)不運(yùn)行的進(jìn)程安全的移動(dòng)位置,獨(dú)立出內(nèi)存碎片,從而組裝多個(gè)內(nèi)存碎片合并成一個(gè)大的內(nèi)存塊。

注意的是有些進(jìn)程并不能被移動(dòng),比如正在讀寫IO。

伙伴算法

伙伴算法是Linux底層內(nèi)存分配回收算法的一種實(shí)現(xiàn)。本文只講述伙伴算法的基本原理。

伙伴算法基本思想:

將內(nèi)存大小變?yōu)槎膎此方 。

如果一個(gè)程序申請(qǐng)的內(nèi)存塊大小 m 滿足 2^n-1 < m < 2^n條件,那么就將此時(shí)的內(nèi)存塊分配給它。

如上圖,我們現(xiàn)在需要200K空間,1M等于1024K,如果m小于1M的一半,那么繼續(xù)分離m,當(dāng)分離到256時(shí),剛好能滿足200K的需求,所以分配。

歸還時(shí),采用內(nèi)存回收算法的思想,看左右相鄰。若沒被占用則合并(也是為什么叫伙伴算法)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    8

    文章

    3117

    瀏覽量

    75115
  • 磁盤
    +關(guān)注

    關(guān)注

    1

    文章

    389

    瀏覽量

    25709

原文標(biāo)題:淺談?dòng)?jì)算機(jī)中的存儲(chǔ)模型之物理內(nèi)存

文章出處:【微信號(hào):cunchujie,微信公眾號(hào):存儲(chǔ)界】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    計(jì)算機(jī)中的電磁兼容情況

    電磁兼容的英文名稱為Electromagnetic Compatibility ,簡(jiǎn)稱EMC。電磁兼容技術(shù)涉及的頻率范圍寬達(dá)0-400GHz,研究對(duì)象除傳統(tǒng)設(shè)施外,涉及芯片級(jí),直到各型艦船、航天飛機(jī)、洲際導(dǎo)彈,甚至整個(gè)地球的電磁環(huán)境。本文章主要介紹計(jì)算機(jī)中的電磁兼容情況。
    發(fā)表于 05-31 08:22

    什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?

    第一章 計(jì)算機(jī)系統(tǒng)概論1. 什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?硬件和軟件哪個(gè)更重要?解:P3計(jì)算機(jī)系統(tǒng):由
    發(fā)表于 07-22 09:06

    關(guān)于計(jì)算機(jī)的硬件維護(hù)的淺析

    大家搜索整理的關(guān)于計(jì)算機(jī)的硬件維護(hù)的淺析,歡迎參考閱讀,希望對(duì)您有所幫助!隨著社會(huì)的進(jìn)步,科學(xué)技術(shù)的發(fā)展,信息的傳播方式以計(jì)算機(jī)傳播為主。這就需要我們定期對(duì)良好計(jì)算機(jī)進(jìn)行防范檢查,對(duì)故
    發(fā)表于 09-08 08:07

    微型計(jì)算機(jī)的存儲(chǔ)設(shè)備

    第四章微型計(jì)算機(jī)的存儲(chǔ)設(shè)備4.1 內(nèi)存內(nèi)存計(jì)算機(jī)中數(shù)據(jù)存儲(chǔ)和交換的設(shè)備。在整個(gè)計(jì)算機(jī)中內(nèi)存起著
    發(fā)表于 09-10 09:02

    微型計(jì)算機(jī)中采用的邏輯元件是什么

    第7部分 計(jì)算機(jī)硬件 單選(1) .[B]計(jì)算機(jī)向使用者傳送計(jì)算、處理結(jié)果的設(shè)備稱為______。(A) 輸入設(shè)備(B) 輸出設(shè)備(C) 存儲(chǔ)設(shè)備(D) 微處理器(2) .[C]目前微型計(jì)算機(jī)
    發(fā)表于 09-15 07:43

    個(gè)人計(jì)算機(jī)中的串行端

    【LabVIEW從入門到精通】4.1.5 個(gè)人計(jì)算機(jī)中的串行端口
    發(fā)表于 01-08 15:43 ?0次下載

    量子計(jì)算機(jī)的優(yōu)點(diǎn)_量子計(jì)算機(jī)的應(yīng)用_量子計(jì)算機(jī)的未來應(yīng)用

    量子計(jì)算機(jī)是一類遵循量子力學(xué)規(guī)律進(jìn)行高速數(shù)學(xué)和邏輯運(yùn)算、存儲(chǔ)及處理量子信息的物理裝置。當(dāng)某個(gè)裝置處理和計(jì)算的是量子信息,運(yùn)行的是量子算法時(shí),它就是量子計(jì)算機(jī)。量子
    發(fā)表于 11-28 18:10 ?1.2w次閱讀

    內(nèi)存計(jì)算機(jī)中的作用是什么

    內(nèi)存計(jì)算機(jī)運(yùn)行過程是一個(gè)數(shù)據(jù)的臨時(shí)存儲(chǔ)和中轉(zhuǎn)站。當(dāng)程序開始運(yùn)行時(shí),數(shù)據(jù)從硬盤讀入內(nèi)存,然后內(nèi)存數(shù)據(jù)和CPU之間交換,CPU的運(yùn)算結(jié)果存放
    的頭像 發(fā)表于 12-03 17:58 ?1w次閱讀

    計(jì)算機(jī)中程序到底是如何運(yùn)行的?

    摘要:計(jì)算機(jī)內(nèi)存計(jì)算機(jī)中所有程序的運(yùn)行都在內(nèi)存中進(jìn)行,也就是你電腦的內(nèi)存運(yùn)行的。
    的頭像 發(fā)表于 05-03 17:31 ?9620次閱讀
    <b class='flag-5'>計(jì)算機(jī)中</b>程序到底是如何運(yùn)行的?

    cmos技術(shù)在計(jì)算機(jī)中的應(yīng)用

    cmos技術(shù)在計(jì)算機(jī)中的應(yīng)用 CMOS技術(shù)(互補(bǔ)金屬氧化物半導(dǎo)體技術(shù))是現(xiàn)代電子設(shè)備制造過程中使用最廣泛的技術(shù)之一。CMOS技術(shù)結(jié)合了MOSFET晶體管的特性,利用正負(fù)電荷的互補(bǔ)作用,使得芯片的功耗
    的頭像 發(fā)表于 09-05 17:39 ?3336次閱讀

    DRAM在計(jì)算機(jī)中的應(yīng)用

    DRAM(Dynamic Random Access Memory,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)在計(jì)算機(jī)系統(tǒng)扮演著至關(guān)重要的角色。它是一種半導(dǎo)體存儲(chǔ)器,用于存儲(chǔ)和快速訪問數(shù)據(jù),是計(jì)算機(jī)內(nèi)存
    的頭像 發(fā)表于 07-24 17:04 ?2849次閱讀

    邊沿觸發(fā)器在計(jì)算機(jī)中的應(yīng)用

    邊沿觸發(fā)器在計(jì)算機(jī)中的應(yīng)用極為廣泛,它們作為數(shù)字電路的基本單元,對(duì)于實(shí)現(xiàn)計(jì)算機(jī)內(nèi)部的時(shí)序控制、數(shù)據(jù)存儲(chǔ)與傳輸、以及復(fù)雜邏輯功能等方面起著至關(guān)重要的作用。以下將從邊沿觸發(fā)器的定義、特點(diǎn)、工作原理及其在
    的頭像 發(fā)表于 08-12 14:20 ?1249次閱讀

    計(jì)算機(jī)中總線的作用是什么

    計(jì)算機(jī)中,總線(Bus)扮演著極其重要的角色,它是計(jì)算機(jī)內(nèi)部各功能部件之間傳送信息的公共通信干線。總線不僅連接了計(jì)算機(jī)的各個(gè)核心組件,還確保了數(shù)據(jù)、指令和控制信號(hào)的高效、準(zhǔn)確傳輸。
    的頭像 發(fā)表于 08-26 15:57 ?3536次閱讀

    邏輯內(nèi)存物理內(nèi)存的區(qū)別

    Access Memory),是計(jì)算機(jī)硬件的一部分,用于存儲(chǔ)計(jì)算機(jī)當(dāng)前正在使用的數(shù)據(jù)和程序。物理內(nèi)存計(jì)算機(jī)中的一種易失性存儲(chǔ)器,這意味著
    的頭像 發(fā)表于 09-27 15:38 ?1709次閱讀

    虛擬內(nèi)存對(duì)計(jì)算機(jī)性能的影響

    在現(xiàn)代計(jì)算機(jī)系統(tǒng)內(nèi)存管理是確保系統(tǒng)高效運(yùn)行的關(guān)鍵因素之一。虛擬內(nèi)存技術(shù)作為內(nèi)存管理的核心組成部分,對(duì)于提升
    的頭像 發(fā)表于 12-04 09:17 ?3336次閱讀
    主站蜘蛛池模板: 久久精品国产免费看久久精品 | 亚洲综合激情六月婷婷在线观看 | 黄网站免费视频 | 午夜精品久久久久久久第一页 | 日本污视频网站 | 性欧美激情在线观看 | 综合第一页 | 羞羞色院91精品网站 | 天天操天天谢 | avt天堂网 | 色视频在线播放 | 久久综合久久精品 | 8050午夜一级二级全黄 | 亚洲一区二区三区电影 | 免费国内精品久久久久影院 | 日本黄色免费片 | 免费高清成人啪啪网站 | 亚洲精品视频免费 | 五月天婷婷在线观看 | 日本黄色电影在线 | 77788色淫视频免费观看 | 毛片网此 | 日韩电影中文字幕 | 妖精视频永久在线入口 | 国产午夜不卡在线观看视频666 | 激情在线视频 | 成成人看片在线 | 高清激情小视频在线观看 | 美国一级做a一级爱视频 | 免费午夜在线视频 | 最近最新中文字幕在线第一页 | 深深激情网 | 性色欧美 | 色噜噜狠狠色综合久 | 玖玖在线精品 | 国产重口老太和小伙乱视频 | 国卡一卡二卡三免费网站 | 久久艹综合 | 天天爱夜夜爱 | 三级在线观看网站 | 国产高清视频在线免费观看 |