• <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>
            aurain
            技術(shù)文摘
            posts - 137,  comments - 268,  trackbacks - 0

                 今天在調(diào)試驅(qū)動的時候,發(fā)現(xiàn)一個開始覺得很奇怪的問題,就是調(diào)用RtlStringCbPrintfW函數(shù)來格式化WCHAR字符串時,一定藍(lán)屏,提示
            IRQL_NOT_LESS_OR_EQUAL,并且比較郁悶的是,在虛擬機上有時不會出現(xiàn),有時會出現(xiàn),但在真正的主機上一定會出現(xiàn)(Windows xp sp2)。
            一般出現(xiàn)IRQL_NOT_LESS_OR_EQUAL,是IRQL在級別高的地方調(diào)用了分頁內(nèi)存,所以,我就想到把當(dāng)前的IRQL打出來看看,發(fā)現(xiàn)在進入函數(shù)
            的時候,當(dāng)前的IRQL是0(PASSIVE_LEVEL),而在執(zhí)行這段代碼的地方,IRQL是2(DISPATCH_LEVEL),是什么原因使得IRQL發(fā)生了變化呢?
            仔細(xì)查看代碼后,發(fā)現(xiàn)了原因,因為在執(zhí)行這段代碼之前,通過NdisAcquireSpinLock獲取旋轉(zhuǎn)鎖,而在旋轉(zhuǎn)鎖釋放之前,其中的代碼是跑在
            IRQL=2的,另外,RtlStringCbPrintfW需要處理分頁內(nèi)存(PagedPool),但在IRQL=2的情況下,是只能處理非分頁內(nèi)存的(NonpagedPool),所以,
            就產(chǎn)生了上面的藍(lán)屏現(xiàn)象。

            這里給出驅(qū)動內(nèi)存的分配細(xì)節(jié):
            驅(qū)動編程時,也有兩種申請內(nèi)存的方式:
            (1).在核心棧中申請,在X86 R0級中,核心棧只有約兩個頁面的大小,所以DDK中提到,不能使用遞歸調(diào)用。
            (2).在核心堆中申請,比如ExAllocatePoolWithTag函數(shù)就可以。不過核心堆分成兩種:分頁的、非分頁的。

            另外,獲取當(dāng)前IRQL級別方法:
             KIRQL uIrql = KeGetCurrentIrql();
             DEBUG_INFO(("%s is run on level: %x\n", __FUNCTION__, uIrql));

            posted on 2009-01-14 17:05 閱讀(5034) 評論(0)  編輯 收藏 引用 所屬分類: windows驅(qū)動

            <2009年1月>
            28293031123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(17)

            隨筆分類(138)

            隨筆檔案(137)

            網(wǎng)絡(luò)開發(fā)

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 498999
            • 排名 - 36

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            国内精品久久久人妻中文字幕| 久久午夜电影网| 久久久亚洲精品蜜桃臀| 久久国产V一级毛多内射| 亚洲伊人久久成综合人影院 | 久久午夜伦鲁片免费无码| 日韩人妻无码一区二区三区久久99| 欧美日韩精品久久久免费观看| 精品久久久中文字幕人妻| 久久久噜噜噜www成人网| 99热都是精品久久久久久| 亚洲精品国精品久久99热| 97精品久久天干天天天按摩| 美女久久久久久| 久久综合久久综合九色| 亚洲va中文字幕无码久久不卡| 伊人久久大香线焦综合四虎| 欧美国产成人久久精品| 精品午夜久久福利大片| 久久久久久午夜精品| 国内精品久久久久久野外| 婷婷久久综合九色综合绿巨人 | 精品久久777| 国产成人久久精品一区二区三区| 亚洲一本综合久久| 热re99久久精品国99热| 日本五月天婷久久网站| 久久九九免费高清视频| 久久综合综合久久97色| 久久精品国产亚洲AV无码麻豆 | 国产精品9999久久久久| 无码八A片人妻少妇久久| 国产成人久久精品二区三区| 性高湖久久久久久久久| 国产69精品久久久久9999APGF | 国产精品久久久久久久app| 精品无码久久久久久久久久| 久久九九青青国产精品| 久久伊人精品青青草原高清| 99国产欧美久久久精品蜜芽| 99久久99这里只有免费费精品|