首页
/
每日頭條
/
生活
/
堆内存和堆外内存的區别
堆内存和堆外内存的區别
更新时间:2024-12-01 08:26:47

堆内存是計算機系統中,當多個程序同時運行時,為了這些進程能夠共享數據、交換信息而把它們的數據存放在一個連續的區域。它是一個連續的内存區域,在物理上并不存在。

在操作系統中,"堆"(heap)被定義為"由一塊連續的内存空間組成的存儲區域"。它是虛拟内存的默認存放地址,因此所有常駐内存的程序都需要使用這個地址進行數據的暫時存放。

當應用程序需要從磁盤讀取數據時(如:打開文件或向磁盤寫數據),就會先到該區域中尋找合适的塊來存放所讀内容;如果找不到合适的内容塊時,則将會在下一個可用的空閑塊中去查找;如果還是沒有找到合适的位置就繼續向下查找直到遇到空閑的塊為止。這樣依次循環下去直至找到可以使用的空餘内存為止。

"堆"中的每個快取單元都是的、彼此間沒有關聯關系的存儲單元(稱為頁)。每個頁都有一個與之對應的指針指向其自身的起始地址(稱為偏移量)。當某個頁面需要訪問其它頁面中的内容時,首先會通過指針指向的頁面的起始地址來所需内容的第一個字節并把它存入自己的緩沖區中;然後再通過指針指向的頁面去所需的第二個字節并把這兩個字節相加得到完整的兩個字節數後返回給它的指針所指的頁面作為結束标志符;最後再把得到的兩個字節相加得到完整的三個字節數并返回到它的指針所在位置即完成了對該頁面的訪問過程。

如果當前還沒有任何用戶正在使用這塊連續的"可用空間",那麼系統會自動為每一個快取單元分配一個大小為64mb的空間用于暫存用戶臨時調入的内容和已用掉的數據等.由于這種機制的存在使得整個系統不會因突然斷電而導緻硬盤上的數據丢失!

堆棧是由一組指令構成的順序執行的一條條指令鍊的組合體.每條指令都有一條與之對應的操作碼.每一條操作碼都對應于一個特定的寄存器或控制邏輯電路.所以隻要有一條操作碼與某寄存器的狀态發生改變相對應了這條操作就被執行了.也就是說我們可以通過修改寄存器的狀态來達到對系統的控制目的!

堆内存和堆外内存的區别(什麼是堆内存)1

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
四面佛四面代表什麼
四面佛四面代表什麼
四面佛四面代表什麼?四面佛(梵天)的四個面分别有分别代表:愛情、事業、健康與财運,今天小編就來聊一聊關于四面佛四面代表什麼?接下來我們就一起去研究一下吧!四面佛四面代表什麼四面佛(梵天)的四個面分别有分别代表:愛情、事業、健康與财運。四面佛...
2024-12-01
新醫保卡怎麼激活
新醫保卡怎麼激活
新醫保卡怎麼激活?持卡人攜帶醫保卡和身份證到指定的銀行營業網點櫃台進行激活新投保用戶直接帶着卡去櫃台即可激活不是新用戶則需要拿着原醫保卡和新社保卡前往銀行,即可激活,二者密碼一緻,我來為大家科普一下關于新醫保卡怎麼激活?以下内容希望對你有幫...
2024-12-01
閩南鹵驢肉
閩南鹵驢肉
閩南鹵驢肉?鬧湯驢肉名氣大,源于沁陽殺驢巷明末董姓創始人,乾隆年間成貢品熬煮過程似鬧春,鬧湯驢肉得此名色澤紅褐肉質鮮,美味佳肴上上品,我來為大家科普一下關于閩南鹵驢肉?下面希望有你要的答案,我們一起來看看吧!閩南鹵驢肉鬧湯驢肉名氣大,源于沁...
2024-12-01
蛋白尿1+是尿毒症嗎
蛋白尿1+是尿毒症嗎
長期以來,腎病領域有一種誤區:尿蛋白定量降到1g以下就夠了,沒必要降到0.5g以下。尿蛋白處于0.5-1g之間,卻不當回事、不治療的腎友,大有人在。為什麼許多腎友會這樣想呢?他們大多這樣告訴我:“看病的時候,醫生告訴我降到1g以下就差不多了...
2024-12-01
word 表格文字顯示不全
word 表格文字顯示不全
在日常辦公過程中,總能發現Word添加的文本框裡的文字總是顯示不全,該如何處理呢?文本框文字顯示不全方法一:很簡單,通過鼠标拖拽來手動調整文本框的大小。方法二:首先,點擊文本框,右鍵快捷菜單選擇【設置文本框格式】;然後,在彈出的對話框裡的【...
2024-12-01
Copyright 2023-2024 - www.tftnews.com All Rights Reserved