Windows驱动的Checked (chk)和Free(fre)区别
??? 微軟的驅(qū)動(dòng)發(fā)布時(shí)一般有兩個(gè)版本:chk和fre。chk表示Checked,fre表示Free。兩者的區(qū)別在于,checked build有traces和asserts,而free build沒(méi)有。
??? 簡(jiǎn)單而言,checked 就是debug,free就是release啦。
?? 以下內(nèi)容FROM:http://msdn.microsoft.com/en-us/library/ff543450.aspx對(duì)這兩個(gè)版本區(qū)別的說(shuō)明。
??? 這兩種截然不同的構(gòu)建基于NT的操作系統(tǒng)可用有以下幾種:
Free(fre)的版本:
??? 微軟Windows的免費(fèi)構(gòu)建用于生產(chǎn)環(huán)境。操作系統(tǒng)的自由構(gòu)建是建立在完整的編譯器優(yōu)化。當(dāng)自由生成發(fā)現(xiàn)可糾正的問(wèn)題,它繼續(xù)運(yùn)行。
??? 包含操作系統(tǒng)的自由生成的分發(fā)介質(zhì)沒(méi)有任何特殊的標(biāo)簽 - 換句話說(shuō),包含自由生成的光盤貼有Windows版本的名稱,而不涉及構(gòu)建的類型。
Checked(chk)版本:
??? 微軟Windows的檢查的版本使得識(shí)別和診斷操作系統(tǒng)級(jí)問(wèn)題更容易。
?兩者不同于自由建立在以下方面:
??????? 許多編譯器優(yōu)化(如堆棧幀消除),在chk的版本被禁用。這使得更容易理解分解的機(jī)器指令,并且因此更容易跟蹤的系統(tǒng)軟件問(wèn)題的原因。
??????? chk版本允許在操作系統(tǒng)代碼和系統(tǒng)提供的驅(qū)動(dòng)程序了大量的調(diào)試檢查。這有助于檢查的版本盡快發(fā)生識(shí)別內(nèi)部矛盾和問(wèn)題。
??? 包含chk版本發(fā)布媒體都清楚地標(biāo)示為“調(diào)試/調(diào)試的生成。 ”chk版本分發(fā)介質(zhì)包含檢查版本的操作系統(tǒng),加上的HAL ,驅(qū)動(dòng)程序,文件系統(tǒng),甚至很多用戶模式組件的選中版本。有關(guān)如何獲得此版本的信息,請(qǐng)參閱獲取檢查的版本。
因?yàn)閏hk的版本包含比f(wàn)re生成較少的優(yōu)化和更多的調(diào)試檢查,chk版本是在規(guī)模較大和較慢的運(yùn)行速度比免費(fèi)版本。因此,fre構(gòu)建用于生產(chǎn)環(huán)境,除非有必要使用checked版本識(shí)別嚴(yán)重的問(wèn)題。
總結(jié)
以上是生活随笔為你收集整理的Windows驱动的Checked (chk)和Free(fre)区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 不能学习vlan的解决
- 下一篇: java信息管理系统总结_java实现科