日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

Windows驱动程序运行时函数的调用

發(fā)布時(shí)間:2024/8/23 windows 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Windows驱动程序运行时函数的调用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

編譯器廠商一般在發(fā)布其編譯器的時(shí)候,會(huì)連同運(yùn)行時(shí)函數(shù)一同發(fā)布。Windows驅(qū)動(dòng)程序不能再代碼中使用編譯器提供的運(yùn)行時(shí)函數(shù),因?yàn)榇蟛糠诌\(yùn)行時(shí)函數(shù)是基于Win32 API實(shí)現(xiàn)的,由于Win 32 API運(yùn)行在用戶模式(RIng3層),驅(qū)動(dòng)程序運(yùn)行在內(nèi)核模式(RIng0層),運(yùn)行在內(nèi)核模式下的程序不能調(diào)用用戶模式下提供的API函數(shù)的。當(dāng)然一些少部分的運(yùn)行時(shí)函數(shù)并沒有調(diào)用Win32 API,我們依然可以再驅(qū)動(dòng)程序中去使用它們,比如strcpy等。

Windows提供了內(nèi)核態(tài)的運(yùn)行時(shí)函數(shù),我們應(yīng)該盡量在驅(qū)動(dòng)程序中使用這些函數(shù)。

現(xiàn)在探討內(nèi)核程序和應(yīng)用程序之間的本質(zhì)區(qū)別。除了能用WDK編寫內(nèi)核程序和閱讀一部分Windows的內(nèi)核代碼之外,我們還需要了解它們的本質(zhì)是什么,它們和我們熟悉的應(yīng)用程序有什么區(qū)別。

???? Intel的x86處理器是通過Ring級(jí)別來進(jìn)行訪問控制的,級(jí)別共分4層,從Ring0到Ring3(后面簡稱R0、R1、R2、R3)。R0層擁有最高的權(quán)限,R3層擁有最低的權(quán)限。按照Intel原有的構(gòu)想,應(yīng)用程序工作在R3層,只能訪問R3層的數(shù)據(jù);操作系統(tǒng)工作在R0層,可以訪問所有層的數(shù)據(jù);而其他驅(qū)動(dòng)程序位于R1、R2層[多多關(guān)注www.hitidc.com],每一層只能訪問本層以及權(quán)限更低層的數(shù)據(jù)。

???? 這應(yīng)該是很好的設(shè)計(jì),這樣操作系統(tǒng)工作在最核心層,沒有其他代碼可以修改它;其他驅(qū)動(dòng)程序工作在R1、R2層,有要求則向R0層調(diào)用,這樣可以有效保障操作系統(tǒng)的安全性。但現(xiàn)在的OS,包括Windows和Linux都沒有采用4層權(quán)限,而只是使用2層——R0層和R3層,分別來存放操作系統(tǒng)數(shù)據(jù)和應(yīng)用程序數(shù)據(jù),從而導(dǎo)致一旦驅(qū)動(dòng)加載了,就運(yùn)行在R0層,就擁有了和操作系統(tǒng)同樣的權(quán)限,可以做任何事情,而所謂的rootkit也就隨之而生了。

???? rootkit在字面上來理解,是擁有“根權(quán)限”的工具。實(shí)際上,所有的內(nèi)核代碼都擁有根權(quán)限,當(dāng)然,并不一定它們都叫做rootkit,這要看你用它來做什么。用rootkit技術(shù)開發(fā)的木馬和病毒正在迅速發(fā)展,它們往往極難清除,以往殺毒軟件可以輕松清除掉系統(tǒng)中病毒的時(shí)代似乎已經(jīng)一去不復(fù)返了。


總結(jié)

以上是生活随笔為你收集整理的Windows驱动程序运行时函数的调用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。