<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 403, comments - 310, trackbacks - 0, articles - 7
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    讀核筆記(6) - 虛擬存儲

    Posted on 2008-02-27 23:29 ZelluX 閱讀(696) 評論(4)  編輯  收藏 所屬分類: LinuxSystem

    本來想看完pagefault的處理的,不過實驗室有事情了,只能先把這一半放上來了。

    頁面的分配與回收使用了一個叫做buddy allocator的機(jī)制,kernelnewbies上的解釋
    The memory allocation scheme used in the kernel. A vector of lists of free pages is kept, ordered by the size of the chunk (in powers of two). When a chunk is allocated, it is removed from the relevant list. When a chunk is freed back to the free pages pool, it is placed in the relevant list, starting from the top. If it is physically contiguous with a present chunk, they are merged and placed in the list above (i.e. where the chunks are twice the size), and this operation percolates up the vector. As regions are merged whenever possible, this design helps to reduce memory fragmentation.

    首先在zone_struct{} 中保存了一個free_area_t數(shù)組,這個數(shù)組記錄了各種大小的空閑內(nèi)存塊的信息。
    include/linux/mmzone.h:


    free_area_struct {}

    頁面分配時,找到適合大小的free_area_struct{},然后從free_list中找有沒有空閑的內(nèi)存塊,如果沒有就找更大的free_area_struct{},因為大小都是2^n,很容易把大塊內(nèi)存拆開,一塊分配給請求,剩下的保存到對應(yīng)大小的隊列中。
    頁面回收時主要的問題是如何解決過多的內(nèi)存碎片。當(dāng)頁面塊被釋放時,先檢查是否有相同大小的相鄰空閑塊存在,如果有的話就結(jié)合起來(遞歸過程)。

    評論

    # re: 讀核筆記(6) - 虛擬存儲  回復(fù)  更多評論   

    2008-03-13 13:49 by Kommit
    來踩踩~~~

    # re: 讀核筆記(6) - 虛擬存儲  回復(fù)  更多評論   

    2008-03-13 14:37 by ZelluX
    @Kommit
    哇,版大 @.@

    # re: 讀核筆記(6) - 虛擬存儲  回復(fù)  更多評論   

    2008-03-14 13:53 by luohandsome
    page fault很有意思。尤其是exception table和fix code
    土問,你看的是ULK?

    # re: 讀核筆記(6) - 虛擬存儲  回復(fù)  更多評論   

    2008-03-14 16:25 by ZelluX
    @luohandsome
    看的是那本邊干邊學(xué),差不多兩星期沒看過了
    主站蜘蛛池模板: 免费A级毛片无码久久版| 亚洲高清国产拍精品26U| 一级做a爰片久久毛片免费看| 亚洲精品国产精品乱码不99| 18国产精品白浆在线观看免费 | 亚洲中文字幕无码中文字| 国产传媒在线观看视频免费观看 | 免费国产黄网站在线看| 久久精品国产亚洲AV电影| 国产又黄又爽又猛的免费视频播放| 你懂的免费在线观看| 亚洲AV无码一区二区三区网址| 国产亚洲色婷婷久久99精品| 无码一区二区三区AV免费| 女同免费毛片在线播放| 亚洲国产成人精品无码区花野真一 | 拍拍拍无挡视频免费观看1000| 亚洲一区无码中文字幕乱码| 国产亚洲精品拍拍拍拍拍| 国产免费毛不卡片| a毛片全部播放免费视频完整18| 亚洲色大成WWW亚洲女子| 亚洲av无码不卡一区二区三区| 国产又黄又爽又刺激的免费网址 | 亚洲国产欧美一区二区三区| 国产成人A人亚洲精品无码| 国产禁女女网站免费看| 亚洲免费福利视频| a级毛片黄免费a级毛片| 国产亚洲精品第一综合| 久久精品国产亚洲αv忘忧草| 亚洲AV综合色区无码一区爱AV| 免费国产美女爽到喷出水来视频| 免费精品国产自产拍在| 久久免费动漫品精老司机 | 2022久久国产精品免费热麻豆| jizz在线免费播放| 国产综合激情在线亚洲第一页 | 57pao国产成视频免费播放| 国产无遮挡又黄又爽免费网站| 日本黄页网址在线看免费不卡|