早在Windows 7尚未發(fā)布Beta版前,大家應(yīng)該都聽說(shuō)過(guò)有關(guān)Windows 7中被稱為“MinWin”的微內(nèi)核,它是小巧、獨(dú)立、簡(jiǎn)單的Windows。對(duì)于這個(gè)玩意兒相信很多人一直感到好奇,但一直以來(lái)有關(guān)它的細(xì)節(jié)資料幾乎沒(méi)有。
在前不久剛結(jié)束的微軟技術(shù)大會(huì)(TechEd 2009)上,操作系統(tǒng)內(nèi)核專家Mark Russinovich披露了有關(guān)MinWin的技術(shù)細(xì)節(jié)。
下面就讓我們來(lái)了解一下有關(guān)MinWin的重要信息。
MinWin確實(shí)存在于Windows 7(以及Windows Server 2008 R2)中,但它并不是傳統(tǒng)意義上的那種內(nèi)核。事實(shí)上,它是一個(gè)具備絕大部分基本功能并且可以被分離運(yùn)行的微型Windows系統(tǒng),不僅本身?yè)碛泻诵某绦颍€包含了基本的文件系統(tǒng)、網(wǎng)絡(luò)連接、驅(qū)動(dòng)和系統(tǒng)服務(wù)。
Windows系統(tǒng)經(jīng)過(guò)數(shù)十年的發(fā)展,體積成幾何級(jí)增長(zhǎng),目前已經(jīng)包含后數(shù)千個(gè)EXE、DLL文件和API。Russinovich解釋說(shuō),它們彼此之間又相互依賴,如果其中一個(gè)文件進(jìn)行改動(dòng),你甚至無(wú)法估計(jì)會(huì)影響到多少個(gè)其他文件。當(dāng)想改進(jìn)Windows的時(shí)候,發(fā)現(xiàn)只有從深層動(dòng)手才能解決這些互相聯(lián)系的狀況。
MinWin,就像是從Windows中獨(dú)立出來(lái)的系統(tǒng),僅占用25MB磁盤空間和40MB的內(nèi)存。它不需要依賴其他組件就可以獨(dú)自啟動(dòng)并運(yùn)行,還可以直接訪問(wèn)網(wǎng)絡(luò)。但這并不表示著它會(huì)成為一個(gè)基于命令行的超輕量級(jí)操作系統(tǒng),只是它自身集成的東西使它具有很高的獨(dú)立性。
為了生成這個(gè)MinWin,微軟需要對(duì)Windows架構(gòu)的低層部分進(jìn)行了額外的劃分。由于各文件以及組件之間關(guān)聯(lián)錯(cuò)綜復(fù)雜,這條分割線會(huì)從眾多的DLL文件鏈和底層系統(tǒng)服務(wù)中穿過(guò)。Russinovich說(shuō):“我們需要計(jì)算出哪些東西是MinWin需要的,哪些是不需要的。”
最后,Windows開發(fā)組決定為MinWin制作了一些不同標(biāo)識(shí)的專屬DLL文件(其中一個(gè)主要文件名為:KERNELBASE.DLL)。這樣一來(lái)基于原有Windows平臺(tái)的應(yīng)用程序?qū)⒉粫?huì)受到影響,而MinWin也可以擁有極高的獨(dú)立性。
也就是說(shuō),生成這個(gè)MinWin所需要的組件與其從現(xiàn)有的大堆文件中分離,還不如專門為其編寫來(lái)的簡(jiǎn)單。
注:更多精彩教程請(qǐng)關(guān)注CUOxin.COM電腦教程欄目,CUOxin.COM電腦辦公群:189034526歡迎你的加入
新聞熱點(diǎn)
疑難解答
圖片精選