2011-08-17 21 views
3

我想知道是否有可能一個Windows程序來分配過程中的局部描述符表內的段描述符。是否有Windows API函數可以使用提供的線性偏移量,段長度和標誌組合(RWX)爲正在運行的進程LDT安裝新的段描述符?是否可以使用Windows API分配段?

回答

4

它使用無證NT API,特別是NtSetLdtEntries是可能的。 請注意,Windows X86-64不成立的LDT所以這隻能在x86上。

Here's一些代碼。

+0

感謝您的鏈接。我很好奇你的聲稱「x86-64沒有LDT」。閱讀英特爾架構手冊,沒有跡象表明x86-64會放棄LDT。實際上,有一句話「局部描述符表寄存器(LDTR)和任務寄存器(TR)也擴展爲保存完整的64位基地址。」你的意思是說64位Windows不使用LDT? –

+1

是的,我的意思是說Windows x64沒有設置LDT。 http://www.reactos.org/pipermail/ros-dev/2006-August/008775.html – pezcode

相關問題