• <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>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運(yùn)轉(zhuǎn),開(kāi)心的工作
            簡(jiǎn)單、開(kāi)放、平等的公司文化;尊重個(gè)性、自由與個(gè)人價(jià)值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
            Windows NT文件系統(tǒng)內(nèi)幕讀書筆記(一)
            2008-11-22 11:29

            “在WINDOWS NT執(zhí)行體的內(nèi)核組件創(chuàng)建的所有對(duì)象可以用兩種方式引用,一種是使用當(dāng)創(chuàng)建或者打開(kāi)的時(shí)候NT對(duì)象管理器返回的對(duì)象句柄,一種是使用對(duì)象的指針。注意通常由內(nèi)核組件分配的對(duì)象的指針在所有執(zhí)行環(huán)境中都有效,因?yàn)閷?duì)象引用的虛擬地址將在核心虛擬地址空間。但是,前面提到的,對(duì)象的句柄是特定于得到這個(gè)句柄的線程的執(zhí)行上下文的,因此只有在那個(gè)特定在執(zhí)行上下文中有效。

            ??????? 記住每個(gè)NT對(duì)象管理器創(chuàng)建的對(duì)象都有一個(gè)相關(guān)的引用計(jì)數(shù)器。當(dāng)對(duì)象最初創(chuàng)建的時(shí)候這個(gè)引用計(jì)數(shù)器設(shè)置為1.每當(dāng)一個(gè)內(nèi)核組件請(qǐng)求對(duì)象管理器增加引用計(jì)數(shù)器的時(shí)候引用計(jì)數(shù)器增加,通常是調(diào)用ObReferenceObjectByHandle(在DDK中描述)。引用計(jì)數(shù)器當(dāng)在對(duì)象句柄上執(zhí)行關(guān)閉操作的時(shí)候遞減。內(nèi)核驅(qū)動(dòng)使用ZwClose系統(tǒng)服務(wù)調(diào)用來(lái)關(guān)閉系統(tǒng)創(chuàng)建的任何對(duì)象句柄。引用計(jì)數(shù)器在內(nèi)核組件調(diào)用 ObDereferenceObject()的時(shí)候也遞減,這個(gè)函數(shù)要求傳遞對(duì)象的指針。當(dāng)對(duì)象計(jì)數(shù)器變成0的時(shí)候,NT對(duì)象管理器將會(huì)刪除這個(gè)對(duì)象。

            在這本書的進(jìn)程中,你會(huì)經(jīng)常發(fā)現(xiàn)我們打開(kāi)一個(gè)對(duì)象,收到一個(gè)句柄,然后得到這個(gè)對(duì)象的指針,然后藏到某個(gè)地方(可能在全局內(nèi)存中),引用這個(gè)對(duì)象,關(guān)閉句柄。這給我們兩個(gè)好處:

            1、通過(guò)保存對(duì)象的指針,我們能夠在不是原來(lái)的打開(kāi)對(duì)象的線程上下文中重新得到相同對(duì)象的句柄,你會(huì)在這本書后面發(fā)現(xiàn)這樣的例子。

            2、通過(guò)引用這個(gè)對(duì)象和關(guān)閉原來(lái)的句柄,我們確保對(duì)象不會(huì)被刪除(知道我們最后一次解除引用),我們還確保一旦我們最后解除引用,對(duì)象將會(huì)自動(dòng)被刪除。”

            ……

            “你初始化的例程將在系統(tǒng)進(jìn)程上下文中被調(diào)用:這一點(diǎn)尤其重要要記住,如果你打開(kāi)或者創(chuàng)建任何對(duì)象得到一個(gè)句柄,任何這樣的句柄只是在這個(gè)系統(tǒng)進(jìn)程的上下文中才有效。為了能夠在其他進(jìn)程的上下文中使用這些句柄,你不得不使用這章中前面講的方法,你可以得到這個(gè)對(duì)象的指針然后需要的時(shí)候再在其他線程上下文中得到對(duì)象的句柄?!?/font>

            久久免费大片| 国产精品99久久久精品无码| 亚洲国产精品一区二区久久hs| 精品久久久久久国产三级| 久久99国产精品久久久| 久久久久亚洲AV片无码下载蜜桃| 久久人与动人物a级毛片| 噜噜噜色噜噜噜久久| 理论片午午伦夜理片久久 | 国产精品va久久久久久久| 亚洲午夜无码久久久久| 精品熟女少妇AV免费久久| 久久AV高潮AV无码AV| 国产色综合久久无码有码| 国产69精品久久久久9999APGF| 久久强奷乱码老熟女网站| 99久久国产亚洲综合精品| 久久久久av无码免费网| 亚洲国产精品无码久久久蜜芽 | 日本道色综合久久影院| 久久精品无码一区二区三区| 色综合色天天久久婷婷基地| 亚洲国产天堂久久综合网站| 久久精品亚洲精品国产欧美| 日日狠狠久久偷偷色综合96蜜桃| 欧美日韩久久中文字幕| 久久精品亚洲精品国产色婷| 欧美伊香蕉久久综合类网站| 久久精品亚洲男人的天堂 | 久久精品国产乱子伦| 亚洲国产精品无码久久久秋霞2 | 久久久久久免费一区二区三区| 久久久久国产一级毛片高清版| 久久久久国色AV免费观看| 欧美国产成人久久精品| 99久久精品国产麻豆| 国产一区二区精品久久凹凸| 国产亚洲精久久久久久无码77777| 高清免费久久午夜精品| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久嫩草影院免费看夜色|