Wordpress網(wǎng)站調(diào)用代碼2024年新冠疫情最新消息今天
目錄
1.內(nèi)存里的幾個(gè)區(qū)域
2.示意圖
3.解釋
1.內(nèi)存里的幾個(gè)區(qū)域
除了耳熟能詳?shù)臈^(qū),堆區(qū),靜態(tài)區(qū),還有內(nèi)核空間,內(nèi)存映射段,數(shù)據(jù)段,代碼段
2.示意圖
3.解釋
棧區(qū)(stack area):局部變量,函數(shù)參數(shù),返回?cái)?shù)據(jù),返回地址
內(nèi)存映射段:將文件映射到內(nèi)存
映射的含義:
如果看過(guò)李忠老師的 《x86匯編語(yǔ)言 從實(shí)模式到保護(hù)模式 第二版》,其中寫(xiě)到了可以操作B800:0000~BFFF:000F的虛擬地址來(lái)向80*25的顯示屏寫(xiě)入可視的文字
可以這樣做的原因是:
(以下摘抄自P67~P68)
????? 為了給出要顯示的字符,處理器需要訪(fǎng)問(wèn)顯存,把字符的ASCI碼寫(xiě)進(jìn)去。但是,顯存是位于顯卡上的,訪(fǎng)問(wèn)顯存需要和顯卡這個(gè)外圍設(shè)備打交道。同時(shí),多一道手續(xù)自然是不好的,這當(dāng)中最重要的考量是速度和效率。想想看,你讓人傳話(huà)給父母,和自己親自往家里打電話(huà),花費(fèi)的時(shí)間是不一樣的。為了實(shí)現(xiàn)一些快速的游戲動(dòng)畫(huà)效果,或者播放高碼率的電影,不直接訪(fǎng)問(wèn)顯在是辦不到的。
????? 為此,計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)者們,這些敢想敢干的人,決定把顯存映射到處理器可以直接訪(fǎng)問(wèn)的地址空間里,也就是內(nèi)存空間里
--------------------------------------------------------------------------------------------------------------------------
即處理器-->顯卡-->顯存變成處理器-->內(nèi)存(含映射的顯存)
堆區(qū)(heap area):動(dòng)態(tài)內(nèi)存管理(malloc函數(shù),realloc函數(shù),calloc函數(shù),free函數(shù))
數(shù)據(jù)段(data? segment)(靜態(tài)區(qū)):全局變量(如全局變量),靜態(tài)數(shù)據(jù)(如靜態(tài)變量(由static修飾))
代碼段(code segment):存放函數(shù)體(類(lèi)成員函數(shù)和全局函數(shù))的二進(jìn)制代碼和只讀常量(如常量字符串)