99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>e_slab的不足及解決方案探究

e_slab的不足及解決方案探究

2017-10-19 | rar | 0.3 MB | 次下載 | 1積分

資料介紹

 隨著硬件技術(shù)的發(fā)展和內(nèi)存容量的擴(kuò)大,操作系統(tǒng)中內(nèi)存管理技術(shù)日趨完善。但是在嵌入式領(lǐng)域中,硬件性能和內(nèi)存容量遠(yuǎn)遠(yuǎn)落后于PC機(jī),其內(nèi)存管理受到多種因素制約,若直接采用操作系統(tǒng)中的內(nèi)存管理技術(shù),不僅難以達(dá)到預(yù)期效果,而且會影響嵌入式系統(tǒng)的性能。
  在嵌入式系統(tǒng)內(nèi)存管理設(shè)計(jì)過程中,發(fā)現(xiàn)操作系統(tǒng)中的slab分配器雖然在PC機(jī)上有良好的性能,但是在嵌入式系統(tǒng)中不但不能發(fā)揮其優(yōu)勢,還降低了系統(tǒng)的整體性能。本文通過分析,指出了slab分配器的不足,并給出相應(yīng)的解決方案。實(shí)驗(yàn)結(jié)果表明,slab分配器經(jīng)過改進(jìn)可適用于嵌入式系統(tǒng)。
  1 slab分配器分析
  操作系統(tǒng)內(nèi)核運(yùn)行時(shí)會頻繁地為某些對象分配內(nèi)存空間,而這些對象往往只需要幾十或幾百KB的空間,如果直接采用頁面管理器進(jìn)行內(nèi)存分配,將產(chǎn)生很多內(nèi)存碎片,造成嚴(yán)重的內(nèi)存浪費(fèi)。slab分配器支持細(xì)粒度的內(nèi)存分配,較好地解決了此問題。由于性能優(yōu)越,slab被Linux、FreeBSD等操作系統(tǒng)采用,是目前應(yīng)用最廣的內(nèi)核內(nèi)存管理器之一[1]。
  1.1 slab分配器設(shè)計(jì)思想
  基于頁面分配器[2],將一頁或幾頁的內(nèi)存組織起來,劃分成一定數(shù)量的小塊內(nèi)存,這種連續(xù)的頁面稱之為slab。它為內(nèi)核中使用頻繁的對象建立專門的緩沖區(qū)(cache),每種類型的對象都有自己專用的cache[2]。一個(gè)cache管理著多個(gè)slab,每個(gè)slab又管理著多個(gè)對象。slab的大小與所管理對象的大小有關(guān)。根據(jù)slab管理對象的分配情況,可將每個(gè)cache中的slab分為3類[3-4]:(1)slab管理的對象已經(jīng)完全分配,沒有空閑的對象;(2)slab管理的對象部分分配,還有部分空閑對象;(3)slab中的對象都未分配,都是空閑對象。
  不同的slab分別放入不同的隊(duì)列中,即每個(gè)cache管理3個(gè)slab隊(duì)列,cache與cache之間的關(guān)系如圖1虛框①內(nèi)所示,cache與slab的關(guān)系如圖1虛框②內(nèi)所示。
  e_slab的不足及解決方案探究
  當(dāng)slab分配器接收到內(nèi)存申請時(shí),根據(jù)所申請內(nèi)存的大小找到合適的cache,從cache管理的第二類slab中分配對象,若失敗則從第三類slab中分配對象,若還不成功則說明cache中沒有空閑對象,須為cache創(chuàng)建一個(gè)新的slab,從新的slab中分配空閑對象。
  對象釋放過程中,不僅要清空對象占用的空間,而且還要調(diào)整對象所屬slab的狀態(tài),判斷是否改變此slab在cache中的位置。
  slab分配器采用著色機(jī)制將不同slab中的對象放入不同的偏移處,利用硬件高速緩存的映射機(jī)制,將頁的不同偏移映射到硬件緩存的不同地址。而每個(gè)slab的開始部分訪問頻率最高,只要slab中起始對象的偏移不同則映射到硬件高速緩存的位置就不同,從而降低了頻繁換入換出的性能損失[4-5]。
  1.2 slab分配器在嵌入式系統(tǒng)中的缺陷
  slab分配器雖然能解決系統(tǒng)對小塊內(nèi)存的頻繁需求,但是管理結(jié)構(gòu)復(fù)雜,內(nèi)存分配策略開銷較大。在內(nèi)存受限的嵌入式系統(tǒng)中,slab的缺陷大大影響了系統(tǒng)的整體性能??傊?,slab分配器存在以下三方面的缺陷:
  
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21548次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)