• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 8  文章 - 4  trackbacks - 0
                  在驅(qū)動(dòng)中分配內(nèi)存,通常你的驅(qū)動(dòng)會(huì)向NT VMM請(qǐng)求內(nèi)存,這是你必須決定你的內(nèi)存是可分頁的或者非可分頁的。
                  分配原則:盡量使用可分頁內(nèi)存,但是必須注意高等級(jí)IRQL執(zhí)行不允許page fault。所以不允許采用可分頁內(nèi)存。可以使用PAGED_CODE();宏來檢查。
                  非分頁內(nèi)存在系統(tǒng)中是一個(gè)有限的資源,取決于操作系統(tǒng)和物理內(nèi)存大小. (NT VMM使用一個(gè)私有算法來計(jì)算非分頁大小,這個(gè)算法使用物理內(nèi)存總是作為計(jì)算因子來計(jì)算。)
                 NT提供如下例程來分配內(nèi)存:
                   ExAllocatePool();
                   ExAllocatePoolWithQuota();
                   ExAllocatePoolWithTag();
                    ExAllocatePoolWithQuotaTag
                   調(diào)用以上例程分配內(nèi)存是必須制定內(nèi)存的類型:
                   NonPagedPool
                   PagedPool
                   NonPagedPoolMustSuccessed.
                   ......................

                關(guān)于非分頁內(nèi)存碎片問題:
                 本來初始化的時(shí)候地址都是相鄰的非分頁池會(huì)變成碎片。而且VMM在托大的時(shí)候也不保證地址相鄰。
                如果請(qǐng)求的分配或者釋放小塊內(nèi)存(小于一個(gè)PAGE_SIZE),可能導(dǎo)致物理內(nèi)存碎片化。這回給系統(tǒng)帶來各種各樣的問題,包括降低系統(tǒng)性能和分配內(nèi)存失敗的情況。
                解決辦法使用旁視列表,旁視列表是一個(gè)NT4.0開始提供的一個(gè)內(nèi)存分配方式;具體請(qǐng)參考WDK docment.
                 順便提一下內(nèi)核棧:
                 每個(gè)在NT平臺(tái)的線程有一個(gè)用戶棧在用戶模式執(zhí)行的時(shí)候使用,一個(gè)內(nèi)核棧在內(nèi)核模式執(zhí)行的時(shí)候使用。當(dāng)線程請(qǐng)求系統(tǒng)服務(wù)而切換到內(nèi)核模式的時(shí)候,陷阱機(jī)制會(huì)切換棧。用分配和線程的內(nèi)核空間棧來覆蓋用戶空間棧。
            在NT3.51之前,內(nèi)核棧限制在兩頁的內(nèi)存中。NT4.0開始增加到12KB.必須要謹(jǐn)慎的在棧上使用變量以節(jié)省占空間,防止超過限制而是系統(tǒng)停止。

            posted on 2009-11-15 23:57 Only Soft 閱讀(899) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Windbg
            国产精品99精品久久免费| 久久成人精品| 久久久久久a亚洲欧洲aⅴ| 品成人欧美大片久久国产欧美| 国产精品激情综合久久| 精品久久久中文字幕人妻| 国产91色综合久久免费分享| 天天综合久久一二三区| 欧美亚洲色综久久精品国产| 国产精品无码久久久久| 一本色道久久88精品综合| 久久av高潮av无码av喷吹| 久久精品国产亚洲AV大全| 久久综合伊人77777| 久久亚洲高清观看| 亚洲色欲久久久综合网| 久久久久亚洲av毛片大| 青青草原综合久久大伊人精品| 久久久久av无码免费网| 欧美午夜精品久久久久久浪潮| 91久久婷婷国产综合精品青草| 久久婷婷色香五月综合激情| 国产日韩久久免费影院| 久久精品毛片免费观看| 久久人人青草97香蕉| 久久久久女教师免费一区| 久久国产免费观看精品| 久久久无码精品亚洲日韩按摩| 综合久久一区二区三区| 久久久久免费视频| 久久亚洲2019中文字幕| 久久se精品一区精品二区国产| 亚洲狠狠久久综合一区77777| 国产情侣久久久久aⅴ免费| 亚洲精品乱码久久久久久蜜桃图片| 一本大道久久东京热无码AV| 久久AV高清无码| 色88久久久久高潮综合影院| 色妞色综合久久夜夜| 97r久久精品国产99国产精| 99久久精品国产免看国产一区|