操作系統(tǒng)面試題目_第1頁(yè)
操作系統(tǒng)面試題目_第2頁(yè)
操作系統(tǒng)面試題目_第3頁(yè)
操作系統(tǒng)面試題目_第4頁(yè)
操作系統(tǒng)面試題目_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1、什么是進(jìn)程(Process )和線程(Thread )?有何區(qū)別?進(jìn)程是具有一定獨(dú)立功能的程序關(guān)于某個(gè)數(shù)據(jù)集合上的一次運(yùn)行活動(dòng),進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。線程是進(jìn)程的一個(gè)實(shí)體,是CPU調(diào)度和分派的基本單位,它是比進(jìn)程更小的能獨(dú)立運(yùn)行的基本單位。 線程自己基 本上不擁有系統(tǒng)資源,只擁有一點(diǎn)在運(yùn)行中必不可少的資源(如程序計(jì)數(shù)器,一 組寄存器和棧),但是它可與同屬一個(gè)進(jìn)程的其他的線程共享進(jìn)程所擁有的全部 資源。一個(gè)線程可以創(chuàng)建和撤銷另一個(gè)線程,同一個(gè)進(jìn)程中的多個(gè)線程之間可以并發(fā)執(zhí)行。進(jìn)程與應(yīng)用程序的區(qū)別在于應(yīng)用程序作為一個(gè)靜態(tài)文件存儲(chǔ)在計(jì)算機(jī)系統(tǒng) 的硬盤等存儲(chǔ)空間中,而進(jìn)程則是

2、處于動(dòng)態(tài)條件下由操作系統(tǒng)維護(hù)的系統(tǒng)資源管 理實(shí)體。2、Windows下的內(nèi)存是如何管理的?Windows提供了 3種方法來(lái)進(jìn)行內(nèi)存管理:虛擬內(nèi)存,最適合用來(lái)管理大 型對(duì)象或者結(jié)構(gòu)數(shù)組;內(nèi)存映射文件,最適合用來(lái)管理大型數(shù)據(jù)流(通常來(lái)自文 件)以及在單個(gè)計(jì)算機(jī)上運(yùn)行多個(gè)進(jìn)程之間共享數(shù)據(jù);內(nèi)存堆棧,最適合用來(lái)管理大量的小對(duì)象。Windows操縱內(nèi)存可以分兩個(gè)層面:物理內(nèi)存和虛擬內(nèi)存。其中物理內(nèi)存由系統(tǒng)管理,不允許應(yīng)用程序直接訪問(wèn),應(yīng)用程序可見的只有 一個(gè)2G地址空間,而內(nèi)存分配是通過(guò)堆進(jìn)行的。對(duì)于每個(gè)進(jìn)程都有自己的默認(rèn) 堆,當(dāng)一個(gè)堆創(chuàng)建后,就通過(guò)虛擬內(nèi)存操作保留了相應(yīng)大小的地址塊(不占有實(shí)際的內(nèi)存,

3、系統(tǒng)消耗很?。.?dāng)在堆上分配一塊內(nèi)存時(shí),系統(tǒng)在堆的地址表里找到一個(gè)空閑塊(如果找不到,且堆創(chuàng)建屬性是可擴(kuò)充的,則擴(kuò)充堆大小),為這個(gè)空閑塊所包含的所有內(nèi)存頁(yè)提交物理對(duì)象(在物理內(nèi)存上或硬盤的交換文件 上),這時(shí)就可以訪問(wèn)這部分地址。提交時(shí),系統(tǒng)將對(duì)所有進(jìn)程的內(nèi)存統(tǒng)一調(diào)配, 如果物理內(nèi)存不夠,系統(tǒng)試圖把一部分進(jìn)程暫時(shí)不訪問(wèn)的頁(yè)放入交換文件,以騰出部分物理內(nèi)存。釋放內(nèi)存時(shí),只在堆中將所在的頁(yè)解除提交(相應(yīng)的物理對(duì)象 被解除),繼續(xù)保留地址空間。如果要知道某個(gè)地址是否被占用/可不可以訪問(wèn),只要查詢此地址的虛擬內(nèi)存狀態(tài)即可。如果是提交,則可以訪問(wèn)。如果僅僅保留,或沒保留,則產(chǎn)生一個(gè) 軟件異常。此外,有

4、些內(nèi)存頁(yè)可以設(shè)置各種屬性。如果是只讀,向內(nèi)存寫也會(huì)產(chǎn) 生軟件異常。3、Windows消息調(diào)度機(jī)制是?A)指令隊(duì)列;B)指令堆棧;C)消息隊(duì)列;D )消息堆棧答案:C處理消息隊(duì)列的順序。首先Windows絕對(duì)不是按隊(duì)列先進(jìn)先出的次序來(lái)處 理的,而是有一定優(yōu)先級(jí)的。優(yōu)先級(jí)通過(guò)消息隊(duì)列的狀態(tài)標(biāo)志來(lái)實(shí)現(xiàn)的。首先, 最高優(yōu)先級(jí)的是別的線程發(fā)過(guò)來(lái)的消息(通過(guò)sendmessage );其次,處理登記消息隊(duì)列消息;再次處理QS_QUIT標(biāo)志,處理虛擬輸入隊(duì)列,處理wm_paint ; 最后是wm_timer。4、描述實(shí)時(shí)系統(tǒng)的基本特性在特定時(shí)間內(nèi)完成特定的任務(wù),實(shí)時(shí)性與可靠性。所謂“實(shí)時(shí)操作系統(tǒng)”,實(shí)際上是

5、指操作系統(tǒng) 工作時(shí),其各種資源可以根據(jù) 需要隨時(shí)進(jìn)行動(dòng)態(tài)分配。由于各種資源可以進(jìn)行動(dòng)態(tài)分配,因此,其處理事務(wù)的 能力較強(qiáng)、速度較快。5、中斷和輪詢的特點(diǎn)對(duì)I/O設(shè)備的程序輪詢的方式,是早期的計(jì)算機(jī)系統(tǒng)對(duì)I/O設(shè)備的一種管理 方式。它定時(shí)對(duì)各種設(shè)備輪流詢問(wèn)一遍有無(wú)處理要求。輪流詢問(wèn)之后,有要求的,則加以處理。在處理I/O設(shè)備的要求之后,處理機(jī)返回繼續(xù)工作。盡管輪詢需要 時(shí)間,但輪詢要比I/O設(shè)備的速度要快得多,所以一般不會(huì)發(fā)生不能及時(shí)處理的 問(wèn)題。當(dāng)然,再快的處理機(jī),能處理的輸入輸出設(shè)備的數(shù)量也是有一定限度的。 而且,程序輪詢畢竟占據(jù)了 CPU相當(dāng)一部分處理時(shí)間,因此,程序輪詢是一種 效率較低的

6、方式,在現(xiàn)代計(jì)算機(jī)系統(tǒng)中已很少應(yīng)用。程序中斷通常簡(jiǎn)稱中斷,是指 CPU在正常運(yùn)行程序的過(guò)程中,由于預(yù)先安 排或發(fā)生了各種隨機(jī)的內(nèi)部或外部事件,使 CPU中斷正在運(yùn)行的程序,而轉(zhuǎn)到 為響應(yīng)的服務(wù)程序去處理。輪詢一一效率低,等待時(shí)間很長(zhǎng),CPU利用率不高。中斷 容易遺漏一些冋題,CPU利用率咼。6、什么是臨界區(qū)?如何解決沖突?每個(gè)進(jìn)程中訪問(wèn)臨界資源的那段程序稱為臨界區(qū), 每次只準(zhǔn)許一個(gè)進(jìn)程進(jìn)入 臨界區(qū),進(jìn)入后不允許其他進(jìn)程進(jìn)入。(1)如果有若干進(jìn)程要求進(jìn)入空閑的臨界區(qū),一次僅允許一個(gè)進(jìn)程進(jìn)入;(2 )任何時(shí)候,處于臨界區(qū)內(nèi)的進(jìn)程不可多于一個(gè)。如已有進(jìn)程進(jìn)入自己 的臨界區(qū),貝U其它所有試圖進(jìn)入臨界區(qū)

7、的進(jìn)程必須等待;(3) 進(jìn)入臨界區(qū)的進(jìn)程要在有限時(shí)間內(nèi)退出,以便其它進(jìn)程能及時(shí)進(jìn)入自 己的臨界區(qū);(4) 如果進(jìn)程不能進(jìn)入自己的臨界區(qū),貝U應(yīng)讓出 CPU,避免進(jìn)程出現(xiàn)“忙 等”現(xiàn)象。7、說(shuō)說(shuō)分段和分頁(yè)頁(yè)是信息的物理單位,分頁(yè)是為實(shí)現(xiàn)離散分配方式,以消減內(nèi)存的外零頭, 提高內(nèi)存的利用率;或者說(shuō),分頁(yè)僅僅是由于系統(tǒng)管理的需要, 而不是用戶的需 要。段是信息的邏輯單位,它含有一組其意義相對(duì)完整的信息。 分段的目的是為 了能更好的滿足用戶的需要。頁(yè)的大小固定且由系統(tǒng)確定,把邏輯地址劃分為頁(yè)號(hào)和頁(yè)內(nèi)地址兩部分, 是 由機(jī)器硬件實(shí)現(xiàn)的,因而一個(gè)系統(tǒng)只能有一種大小的頁(yè)面。段的長(zhǎng)度卻不固定, 決定于用戶所編

8、寫的程序,通常由編輯程序在對(duì)源程序進(jìn)行編輯時(shí), 根據(jù)信息的 性質(zhì)來(lái)劃分。分頁(yè)的作業(yè)地址空間是一維的,即單一的線性空間,程序員只須利用一個(gè)記 憶符,即可表示一地址。分段的作業(yè)地址空間是二維的, 程序員在標(biāo)識(shí)一個(gè)地址 時(shí),既需給出段名,又需給出段內(nèi)地址。8、說(shuō)出你所知道的保持進(jìn)程同步的方法?進(jìn)程間同步的主要方法有原子操作、信號(hào)量機(jī)制、自旋鎖、管程、會(huì)合、分 布式系統(tǒng)等。9、Linux中常用到的命令顯示文件目錄命令I(lǐng)s改變當(dāng)前目錄命令cd建立子目錄mkdir刪除子目錄命令rmdir刪除文件命令rm文件復(fù)制命令cp獲取幫助信息命令man 顯示文件的內(nèi)容less 重定向與管道type內(nèi)容追加到文dire

9、ct中如Is如 cd /home如 mkdir xiong如 rmdir /mnt/cdrom如 rm /ucdos.bat如 cp /ucdos /fox如 man ls如 less mwm.lx如 type readmedirect,將文件readme 的10、Linux文件屬性有哪些?(共十位)-rw-r-r-那個(gè)是權(quán)限符號(hào),總共是這幾個(gè)位。第一個(gè)短橫處是文件類型識(shí)別符:-表示普通文件;c表示字符設(shè)備(character) ; b表示塊設(shè)備(block) ; d表示目錄(directory ) ; l表示鏈接文件(link );后面第一個(gè)三個(gè)連續(xù)的短橫是用戶權(quán)限位(User),第二個(gè)三

10、個(gè)連續(xù)短橫是組權(quán)限位(Group),第三個(gè)三個(gè)連續(xù)短橫是其他權(quán)限位(Other)。每個(gè)權(quán)限位有三個(gè)權(quán)限,r (讀權(quán)限),w (寫權(quán)限),x (執(zhí)行權(quán)限)。如果每個(gè)權(quán)限位都有權(quán)限存在,那么滿權(quán)限的情況就是:-rwxrwxrwx ;權(quán)限為空的情況就是 0權(quán)限的設(shè)定可以用chmod 命令,其格式位:chmod ugoa+/-/=rwx 。例如:一個(gè)文件aaa具有完全空的權(quán)限 。chmod u+rw aaa(給用戶權(quán)限位設(shè)置讀寫權(quán)限,其權(quán)限表示為:-rw-)chmod g+r aaa (給組設(shè)置權(quán)限為可讀,其權(quán)限表示為: r ) chmod ugo+rw aaa (給用戶,組,其它用戶或組設(shè)置權(quán)限為讀

11、寫,權(quán)限表示為:-rw- rw- rw- )女口果 aaa 具有滿權(quán)限-rwx rwx rwx 。chmod u-x aaa(去掉用戶可執(zhí)行權(quán)限,權(quán)限表示為:-rw- rwx rwx )如果要給aaa賦予制定權(quán)限-rwx r-x r-x ,命令為:chmod u=rwx ,go=rx aaa11、makefile 文件的作用是什么?一個(gè)工程中的源文件不計(jì)其數(shù),其按類型、功能、模塊分別放在若干個(gè)目錄中。makefile定義了一系列的規(guī)則來(lái)指定哪些文件需要先編譯,哪些文件需要 后編譯,哪些文件需要重新編譯,甚至于進(jìn)行更復(fù)雜的功能操作。因?yàn)閙akefile 就像一個(gè)Shell腳本一樣,其中也可以執(zhí)行

12、操作系統(tǒng)的命令。makefile帶來(lái)的好處就是一一“自動(dòng)化編譯”。一旦寫好,只需要一個(gè)make命令,整個(gè)工程完全自動(dòng)編譯,極大地提高了軟件開發(fā)的效率。make是一個(gè)命令工具,是一個(gè)解釋makefile中指令的命令工具。一般來(lái)說(shuō),大多數(shù)的IDE都有這個(gè)命令,比如:Delphi 的 make , Visual C+ 的 nmake 丄inux 下 GNU 的 make。可見,makefile 都成為了一種在工程方面的編譯方法。12、簡(jiǎn)術(shù)OSI的物理層Layer1,鏈路層Layer2,網(wǎng)絡(luò)層Layer3的任務(wù)。網(wǎng)絡(luò)層:通過(guò)路由選擇算法,為報(bào)文或分組通過(guò)通信子網(wǎng)選擇最適當(dāng)?shù)穆窂健f溌穼樱和ㄟ^(guò)各種控制協(xié)

13、議,將有差錯(cuò)的物理信道變?yōu)闊o(wú)差錯(cuò)的、 能可靠傳 輸數(shù)據(jù)幀的數(shù)據(jù)鏈路。物理層:利用傳輸介質(zhì)為數(shù)據(jù)鏈路層提供物理連接,實(shí)現(xiàn)比特流的透明傳輸。13、什么是中斷?中斷時(shí) CPU做什么工作?中斷是指在計(jì)算機(jī)執(zhí)行期間,系統(tǒng)內(nèi)發(fā)生任何非尋常的或非預(yù)期的急需處理事件,使得CPU暫時(shí)中斷當(dāng)前正在執(zhí)行的程序而轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理程序。 待處理完畢后又返回原來(lái)被中斷處繼續(xù)執(zhí)行或調(diào)度新的進(jìn)程執(zhí)行的過(guò)程。14、你知道操作系統(tǒng)的內(nèi)容分為幾塊嗎?什么叫做虛擬內(nèi)存?他和主存的關(guān)系如何??jī)?nèi)存管理屬于操作系統(tǒng)的內(nèi)容嗎?操作系統(tǒng)的主要組成部分:進(jìn)程和線程的管理,存儲(chǔ)管理,設(shè)備管理,文件管理。虛擬內(nèi)存是一些系統(tǒng)頁(yè)文件,存放在磁盤上

14、,每個(gè)系統(tǒng)頁(yè)文件大小為4K,物理內(nèi)存也被分頁(yè),每個(gè)頁(yè)大小也為 4K,這樣虛擬頁(yè)文件和物理內(nèi)存頁(yè)就可以 對(duì)應(yīng),實(shí)際上虛擬內(nèi)存就是用于物理內(nèi)存的臨時(shí)存放的磁盤空間。 頁(yè)文件就是內(nèi) 存頁(yè),物理內(nèi)存中每頁(yè)叫物理頁(yè),磁盤上的頁(yè)文件叫虛擬頁(yè),物理頁(yè) +虛擬頁(yè)就 是系統(tǒng)所有使用的頁(yè)文件的總和。15、線程是否具有相同的堆棧? dll是否有獨(dú)立的堆棧?每個(gè)線程有自己的堆棧。dll是否有獨(dú)立的堆棧?這個(gè)問(wèn)題不好回答,或者說(shuō)這個(gè)問(wèn)題本身是否有問(wèn) 題。因?yàn)閐ll中的代碼是被某些線程所執(zhí)行,只有線程擁有堆棧。如果dll中的代碼是exe中的線程所調(diào)用,那么這個(gè)時(shí)候是不是說(shuō)這個(gè)dll沒有獨(dú)立的堆棧? 如果dll中的代碼是由

15、dll自己創(chuàng)建的線程所執(zhí)行,那么是不是說(shuō)dll有獨(dú)立的堆 棧?以上講的是堆棧,如果對(duì)于堆來(lái)說(shuō),每個(gè)dll有自己的堆,所以如果是從dll 中動(dòng)態(tài)分配的內(nèi)存,最好是從dll中刪除;如果你從dll中分配內(nèi)存,然后在exe 中,或者另外一個(gè)dll中刪除,很有可能導(dǎo)致程序崩潰。16、什么是緩沖區(qū)溢出?有什么危害?其原因是什么?緩沖區(qū)溢出是指當(dāng)計(jì)算機(jī)向緩沖區(qū)內(nèi)填充數(shù)據(jù)時(shí)超過(guò)了緩沖區(qū)本身的容量, 溢出的數(shù)據(jù)覆蓋在合法數(shù)據(jù)上。危害:在當(dāng)前網(wǎng)絡(luò)與分布式系統(tǒng)安全中,被廣泛利用的50%以上都是緩沖區(qū)溢出,其中最著名的例子是1988年利用fingerd漏洞的蠕蟲。而緩沖區(qū)溢出 中,最為危險(xiǎn)的是堆棧溢出,因?yàn)槿肭终呖梢?/p>

16、利用堆棧溢出,在函數(shù)返回時(shí)改變返回程序的地址,讓其跳轉(zhuǎn)到任意地址,帶來(lái)的危害一種是程序崩潰導(dǎo)致拒絕服 務(wù),另外一種就是跳轉(zhuǎn)并且執(zhí)行一段惡意代碼,比如得到shell,然后為所欲為。通過(guò)往程序的緩沖區(qū)寫超出其長(zhǎng)度的內(nèi)容, 造成緩沖區(qū)的溢出,從而破壞程序的 堆棧,使程序轉(zhuǎn)而執(zhí)行其它指令,以達(dá)到攻擊的目的。造成緩沖區(qū)溢出的主原因是程序中沒有仔細(xì)檢查用戶輸入的參數(shù)。17、什么是死鎖?其條件是什么?怎樣避免死鎖?死鎖的概念:在兩個(gè)或多個(gè)并發(fā)進(jìn)程中,如果每個(gè)進(jìn)程持有某種資源而又都 等待別的進(jìn)程釋放它或它們現(xiàn)在保持著的資源, 在未改變這種狀態(tài)之前都不能向 前推進(jìn),稱這一組進(jìn)程產(chǎn)生了死鎖。通俗地講,就是兩個(gè)或多

17、個(gè)進(jìn)程被無(wú)限期地 阻塞、相互等待的一種狀態(tài)。死鎖產(chǎn)生的原因主要是:?系統(tǒng)資源不足;?進(jìn)程推進(jìn)順序非法。產(chǎn)生死鎖的必要條件:(1) 互斥(mutualexclusion ),個(gè)資源每次只能被一個(gè)進(jìn)程使用;(2) 不可搶占(nopreemption ),進(jìn)程已獲得的資源,在未使用完之前, 不能強(qiáng)行剝奪;(3) 占有并等待(hold andwait ),一個(gè)進(jìn)程因請(qǐng)求資源而阻塞時(shí),對(duì)已 獲得的資源保持不放;(4) 環(huán)形等待(circularwait ),若干進(jìn)程之間形成一種首尾相接的循環(huán)等 待資源關(guān)系。這四個(gè)條件是死鎖的必要條件,只要系統(tǒng)發(fā)生死鎖,這些條件必然成立,而 只要上述條件之一不滿足,就不會(huì)

18、發(fā)生死鎖死鎖的解除與預(yù)防:理解了死鎖的原因,尤其是產(chǎn)生死鎖的四個(gè)必要條件, 就可以最大可能地避免、預(yù)防和解除死鎖。所以,在系統(tǒng)設(shè)計(jì)、進(jìn)程調(diào)度等方面 注意如何不讓這四個(gè)必要條件成立, 如何確定資源的合理分配算法,避免進(jìn)程永 久占據(jù)系統(tǒng)資源。此外,也要防止進(jìn)程在處于等待狀態(tài)的情況下占用資源。 因此, 對(duì)資源的分配要給予合理的規(guī)劃。死鎖的處理策略:鴕鳥策略、預(yù)防策略、避免策略、檢測(cè)與恢復(fù)策略。1、程序和進(jìn)程進(jìn)程由兩個(gè)部分組成:1)操作系統(tǒng)用來(lái)管理進(jìn)程的內(nèi)核對(duì)象。內(nèi)核對(duì)象也 是系統(tǒng)用來(lái)存放關(guān)于進(jìn)程的統(tǒng)計(jì)信息的地方。2)地址空間。它包含所有可執(zhí)行模塊或DLL模塊的代碼和數(shù)據(jù)。它還包含動(dòng)態(tài)內(nèi)存分配的空間。

19、如線程堆棧和 堆分配空間。定義使用系統(tǒng)運(yùn)行資源情況程計(jì)算機(jī)指令的集合,它以文件的形式存儲(chǔ)在磁盤上。不使用【程序不能申請(qǐng)系統(tǒng)資源,不序程序是靜態(tài)實(shí)體(passive En tity),在多道程序系統(tǒng)能被系統(tǒng)調(diào)度,也不能作為獨(dú)立運(yùn)行中,它是不能獨(dú)立運(yùn)行的, 更不能與其他程序并發(fā)執(zhí)的單位,因此,它不占用系統(tǒng)的運(yùn)行|行。資源】。進(jìn) 程通常被定義為一個(gè)正在運(yùn)行的程序的實(shí)例,是一個(gè)程序在其自身的地址空間中的一次執(zhí)行活動(dòng)。定義:進(jìn)程是進(jìn)程實(shí)體(包括:程序段、相關(guān)的數(shù)據(jù) 段、進(jìn)程控制塊 PCB)的運(yùn)行過(guò)程,是系統(tǒng)進(jìn)行資 源分配和調(diào)度的一個(gè)獨(dú)立單位。使用【進(jìn)程是資源申請(qǐng)、調(diào)度和獨(dú)立運(yùn)行的單位,因此,它使用系統(tǒng)中

20、的運(yùn)行資源?!?、進(jìn)程與線程如果說(shuō)操作系統(tǒng)引入進(jìn)程的目的是為了提高程序并發(fā)執(zhí)行, 以提高資源利用 率和系統(tǒng)吞吐量。那么操作系統(tǒng)中引入線程的目的,則是為了減少進(jìn)程并發(fā)執(zhí)行 過(guò)程中所付出的時(shí)空開銷,使操作系統(tǒng)能很好的并發(fā)執(zhí)行。進(jìn)程process定義了一個(gè)執(zhí)行環(huán)境,包括它自己私有的地址空間、一個(gè)句 柄表,以及一個(gè)安全環(huán)境;線程則是一個(gè)控制流,有他自己的調(diào)用棧call stack, 記錄了它的執(zhí)行歷史。線程由兩個(gè)部分組成:1 )線程的內(nèi)核對(duì)象,操作系統(tǒng)用它來(lái)對(duì)線程實(shí)施管理。內(nèi)核對(duì)象也是系統(tǒng)用來(lái)存放線程統(tǒng)計(jì)信息的地方。2 )線程堆棧,它用于維護(hù)線程在執(zhí)行代碼時(shí)需要的所有參數(shù)和局部變量。當(dāng)創(chuàng)建線程時(shí),系統(tǒng)

21、創(chuàng)建一個(gè) 線程內(nèi)核對(duì)象。該線程內(nèi)核對(duì)象不是線程本身,而是操作系統(tǒng)用來(lái)管理線程的較 小的數(shù)據(jù)結(jié)構(gòu)。可以將線程內(nèi)核對(duì)象視為由關(guān)于線程的統(tǒng)計(jì)信息組成的一個(gè)小型 數(shù)據(jù)結(jié)構(gòu)。進(jìn)程與線程的比較如下:比較進(jìn)程線程活潑不活潑(只是線程的容器)活潑性地址系統(tǒng)賦予的獨(dú)立的虛擬地址空間在進(jìn)程的地址空間執(zhí)行代碼。線程只有一個(gè)內(nèi)核對(duì)象和一空間(對(duì)于32位進(jìn)程來(lái)說(shuō),這個(gè)地址空個(gè)堆棧,保留的記錄很少,因此所需要的內(nèi)存也很少。因間是4GB)為線程需要的開銷比進(jìn)程少調(diào)度僅是資源分配的基本單位獨(dú)立調(diào)度、分派的基本單位并發(fā)性僅進(jìn)程間并發(fā)(傳統(tǒng) OS)進(jìn)程間、線程間并發(fā)擁有資源擁有的基本單位基本上不擁有資源資源系統(tǒng)創(chuàng)建、撤銷、切換開

22、銷大僅保存少量寄存器內(nèi)容,開銷小。幵銷3、進(jìn)程同步進(jìn)程同步的主要任務(wù):是對(duì)多個(gè)相關(guān)進(jìn)程在執(zhí)行次序上進(jìn)行協(xié)調(diào), 以使并發(fā) 執(zhí)行的諸進(jìn)程之間能有效地共享資源和相互合作,從而使程序的執(zhí)行具有可再現(xiàn) 性。同步機(jī)制遵循的原則:(1)空閑讓進(jìn);(2 )忙則等待(保證對(duì)臨界區(qū)的互斥訪問(wèn));(3 )有限等待(有限代表有限的時(shí)間,避免死等);(4 )讓權(quán)等待,(當(dāng)進(jìn)程不能進(jìn)入自己的臨界區(qū)時(shí),應(yīng)該釋放處理機(jī),以 免陷入忙等狀態(tài))。4、進(jìn)程間的通信是如何實(shí)現(xiàn)的?進(jìn)程通信,是指進(jìn)程之間的信息交換(信息量少則一個(gè)狀態(tài)或數(shù)值,多者則 是成千上萬(wàn)個(gè)字節(jié))。因此,對(duì)于用信號(hào)量進(jìn)行的進(jìn)程間的互斥和同步,由于其 所交換的信息量少

23、而被歸結(jié)為低級(jí)通信所謂高級(jí)進(jìn)程通信指:用戶可以利用操作系統(tǒng)所提供的一組通信命令傳送大 量數(shù)據(jù)的一種通信方式。操作系統(tǒng)隱藏了進(jìn)程通信的實(shí)現(xiàn)細(xì)節(jié)?;蛘哒f(shuō),通信過(guò) 程對(duì)用戶是透明的。高級(jí)通信機(jī)制可歸結(jié)為三大類:(1 )共享存儲(chǔ)器系統(tǒng)(存儲(chǔ)器中劃分的共享存儲(chǔ)區(qū));實(shí)際操作中對(duì)應(yīng)的 是“剪貼板”(剪貼板實(shí)際上是系統(tǒng)維護(hù)管理的一塊內(nèi)存區(qū)域)的通信方式,比 如舉例如下:word進(jìn)程按下ctrl+c,在ppt進(jìn)程按下ctrl+v,即完成了 word 進(jìn)程和ppt進(jìn)程之間的通信,復(fù)制時(shí)將數(shù)據(jù)放入到剪貼板,粘貼時(shí)從剪貼板中 取出數(shù)據(jù),然后顯示在ppt窗口上。(2)消息傳遞系統(tǒng)(進(jìn)程間的數(shù)據(jù)交換以消息(messag

24、e )為單位,當(dāng)今 最流行的微內(nèi)核操作系統(tǒng)中,微內(nèi)核與服務(wù)器之間的通信,無(wú)一例外地都采用了 消息傳遞機(jī)制。應(yīng)用舉例:郵槽(MailSlot )是基于廣播通信體系設(shè)計(jì)出來(lái)的, 它采用無(wú)連接的不可靠的數(shù)據(jù)傳輸。 郵槽是一種單向通信機(jī)制,創(chuàng)建郵槽的服務(wù) 器進(jìn)程讀取數(shù)據(jù),打開郵槽的客戶機(jī)進(jìn)程寫入數(shù)據(jù)。(3)管道通信系統(tǒng)(管道即:連接讀寫進(jìn)程以實(shí)現(xiàn)他們之間通信的共享文 件(pipe文件,類似先進(jìn)先出的隊(duì)列,由一個(gè)進(jìn)程寫,另一進(jìn)程讀)。實(shí)際操作中,管道分為:匿名管道、命名管道。匿名管道是一個(gè)未命名的、單向管道, 通過(guò)父進(jìn)程和一個(gè)子進(jìn)程之間傳輸數(shù)據(jù)。 匿名管道只能實(shí)現(xiàn)本地機(jī)器上兩個(gè)進(jìn)程 之間的通信,而不能實(shí)

25、現(xiàn)跨網(wǎng)絡(luò)的通信。命名管道不僅可以在本機(jī)上實(shí)現(xiàn)兩個(gè)進(jìn) 程間的通信,還可以跨網(wǎng)絡(luò)實(shí)現(xiàn)兩個(gè)進(jìn)程間的通信同一機(jī)器兩個(gè)進(jìn)程間通信跨網(wǎng)絡(luò)通信剪貼板Clipboard可以不可以匿名管道Pipe可以不可以命名管道(點(diǎn)對(duì)點(diǎn)單一通信,數(shù)據(jù)量可較大)Namedpipe可以可以郵槽(一對(duì)多,數(shù)據(jù)量較小,424字節(jié)以下)Mailslot可以可以5、線程同步根據(jù)用戶模式及內(nèi)核模式下的同步方式的不同,分類及對(duì)比如下:內(nèi)核對(duì)象/非內(nèi)核對(duì)象含義缺點(diǎn)適用關(guān)鍵代碼段(臨界非內(nèi)核對(duì)象,從程序代碼1因?yàn)樵诘却M(jìn)入關(guān)鍵代單個(gè)進(jìn)程中區(qū))CriticalSection工作在用戶方的角度來(lái)控碼段時(shí)無(wú)法設(shè)定超時(shí)值,線程間的同式下,為用戶制線程的

26、并所以其很容易進(jìn)入死鎖狀步(同步速模式對(duì)象發(fā)性態(tài)。2不能跨進(jìn)程使用。度快)事件對(duì)象Event內(nèi)核對(duì)象所有內(nèi)核對(duì)速度較慢(相比用戶模式多個(gè)進(jìn)程間象中最基本實(shí)現(xiàn)線程同步)的各個(gè)線程的。間實(shí)現(xiàn)同步互斥對(duì)象Mutex內(nèi)核對(duì)象代表對(duì)一個(gè)資源的獨(dú)占式訪問(wèn)信號(hào)量Semaphore內(nèi)核對(duì)象使用計(jì)數(shù)器來(lái)控制程序?qū)σ粋€(gè)共享資源的訪問(wèn)由于進(jìn)程同步產(chǎn)生了一系列經(jīng)典的同步問(wèn)題“生產(chǎn)者-消費(fèi)者”問(wèn)題,“哲 學(xué)家進(jìn)餐”問(wèn)題,“讀者-寫者”問(wèn)題。常見的操作系統(tǒng)使用的文件系統(tǒng)整理文件系統(tǒng)是操作系統(tǒng)用于明確磁盤或分區(qū)上的文件的方法和數(shù)據(jù)結(jié)構(gòu);即在磁盤 上組織文件的方法。也指用于存儲(chǔ)文件的磁盤或分區(qū), 或文件系統(tǒng)種類。操作系 統(tǒng)中

27、負(fù)責(zé)管理和存儲(chǔ)文件信息的軟件機(jī)構(gòu)稱為文件管理系統(tǒng),簡(jiǎn)稱文件系統(tǒng)。文件系統(tǒng)由三部分組成:與文件管理有關(guān)軟件、被管理文件以及實(shí)施文件管理所需 數(shù)據(jù)結(jié)構(gòu)。從系統(tǒng)角度來(lái)看,文件系統(tǒng)是對(duì)文件存儲(chǔ)器空間進(jìn)行組織和分配,負(fù)責(zé)文件存儲(chǔ)并對(duì)存入的文件進(jìn)行保護(hù)和檢索的系統(tǒng)。具體地說(shuō),它負(fù)責(zé)為用戶建立文件,存入、讀出、修改、轉(zhuǎn)儲(chǔ)文件,控制文件的存取,當(dāng)用戶不再使用時(shí)撤 銷文件等?!綟AT】:FAT16 文常PC機(jī)使用的文件系統(tǒng)是FAT16。像基于MS-DOS,Win 95等系統(tǒng)都采 用了 FAT16文件系統(tǒng)。在 Win 9X下,F(xiàn)AT16支持的分區(qū)最大為2GB。我們知 道計(jì)算機(jī)將信息保存在硬盤上稱為“簇”的區(qū)域內(nèi)。

28、使用的簇越小,保存信息的 效率就越高。在FAT16的情況下,分區(qū)越大簇就相應(yīng)的要大,存儲(chǔ)效率就越低, 勢(shì)必造成存儲(chǔ)空間的浪費(fèi)。并且隨著計(jì)算機(jī)硬件和應(yīng)用的不斷提高,件系統(tǒng)已不能很好地適應(yīng)系統(tǒng)的要求。在這種情況下,推出了增強(qiáng)的文件系統(tǒng)FAT32。同F(xiàn)AT16相比,F(xiàn)AT32主要具有以下特點(diǎn):1、 同F(xiàn)AT16相比FAT32最大的優(yōu)點(diǎn)是可以支持的磁盤大小達(dá)到32G,但 是不能支持小于512MB的分區(qū)。*基于FAT32的Win 2000 可以支持分區(qū)最大為 32GB ;而基于FAT16的Win 2000 支持的分區(qū)最大為 4GB。2、由于采用了更小的簇,F(xiàn)AT32文件系統(tǒng)可以更有效率地保存信息。如兩

29、個(gè)分區(qū)大小都為2GB,一個(gè)分區(qū)采用了 FAT16文件系統(tǒng),另一個(gè)分區(qū)采用了 FAT32文件系統(tǒng)。采用FAT16的分區(qū)的簇大小為32KB,而FAT32分區(qū)的簇只 有4KB的大小。這樣FAT32就比FAT16的存儲(chǔ)效率要高很多,通常情況下可 以提高15%。3、FAT32文件系統(tǒng)可以重新定位根目錄和使用 FAT的備份副本。另外 FAT32分區(qū)的啟動(dòng)記錄被包含在一個(gè)含有關(guān)鍵數(shù)據(jù)的結(jié)構(gòu)中,減少了計(jì)算機(jī)系 統(tǒng)崩潰的可能性。【NTFS:NTFS文件系統(tǒng)是一個(gè)基于安全性的文件系統(tǒng),是 Windows NT所采用的 獨(dú)特的文件系統(tǒng)結(jié)構(gòu),它是建立在保護(hù)文件和目錄數(shù)據(jù)基礎(chǔ)上, 同時(shí)照顧節(jié)省存 儲(chǔ)資源、減少磁盤占用量

30、的一種先進(jìn)的文件系統(tǒng)。使用非常廣泛的Windows NT 4.0采用的就是NTFS 4.0文件系統(tǒng),相信它所帶來(lái)的強(qiáng)大的系統(tǒng)安全性一定給廣大用戶留下了深刻的印象。 Win 2000采用了更新版本的NTFS文件系統(tǒng)? NTFS 5.0,它的推出使得用戶不但可以像 Win 9X那樣方便快捷地操作和管理 計(jì)算機(jī),同時(shí)也可享受到NTFS所帶來(lái)的系統(tǒng)安全性。NTFS 5.0的特點(diǎn)主要體現(xiàn)在以下幾個(gè)方面:1 NTFS可以支持的分區(qū)(如果采用動(dòng)態(tài)磁盤則稱為卷)大小可以達(dá)到2TB。 而 Win 2000 中的FAT32支持分區(qū)的大小最大為 32GB。2、NTFS是一個(gè)可恢復(fù)的文件系統(tǒng)。在 NTFS分區(qū)上用戶很

31、少需要運(yùn)行磁 盤修復(fù)程序。NTFS通過(guò)使用標(biāo)準(zhǔn)的事物處理 日志和恢復(fù)技術(shù)來(lái)保證分區(qū)的一致 性。發(fā)生系統(tǒng)失敗事件時(shí),NTFS使用日志文件和檢查點(diǎn)信息自動(dòng)恢復(fù)文件系統(tǒng) 的一致性。3、 NTFS支持對(duì)分區(qū)、文件夾和文件的壓縮。任何基于 Windows的應(yīng)用 程序?qū)TFS分區(qū)上的壓縮文件進(jìn)行讀寫時(shí)不需要事先由其他程序進(jìn)行解壓縮,當(dāng)對(duì)文件進(jìn)行讀取時(shí),文件將自動(dòng)進(jìn)行解壓縮;文件關(guān)閉或保存時(shí)會(huì)自動(dòng)對(duì)文件 進(jìn)行壓縮。4、 NTFS采用了更小的簇,可以更有效率地管理磁盤空間。在Win 2000的FAT32文件系統(tǒng)的情況下,分區(qū)大小在2GB8GB時(shí)簇的大小為4KB;分區(qū) 大小在8GB16GB時(shí)簇的大小為8KB

32、;分區(qū)大小在16GB32GB時(shí),簇的大 小則達(dá)到了 16KB。而Win 2000的NTFS文件系統(tǒng),當(dāng)分區(qū)的大小在 2GB以 下時(shí),簇的大小都比相應(yīng)的FAT32簇?。划?dāng)分區(qū)的大小在2GB以上時(shí)(2GB 2TB),簇的大小都為4KB。相比之下,NTFS可以比FAT32更有效地管理磁 盤空間,最大限度地避免了磁盤空間的浪費(fèi)。5、在NTFS分區(qū)上,可以為共享資源、文件夾以及文件設(shè)置訪問(wèn)許可權(quán)限。許可的設(shè)置包括兩方面的內(nèi)容:一是允許哪些組或用戶對(duì)文件夾、 文件和共享資 源進(jìn)行訪問(wèn);二是獲得訪問(wèn)許可的組或用戶可以進(jìn)行什么級(jí)別的訪問(wèn)。訪問(wèn)許可權(quán)限的設(shè)置不但適用于本地計(jì)算機(jī)的用戶, 同樣也應(yīng)用于通過(guò)網(wǎng)絡(luò)的共

33、享文件夾 對(duì)文件進(jìn)行訪問(wèn)的網(wǎng)絡(luò)用戶。與 FAT32文件系統(tǒng)下對(duì)文件夾或文件進(jìn)行訪問(wèn)相 比,安全性要高得多。另外,在采用 NTFS格式的Win 2000中,應(yīng)用審核策略 可以對(duì)文件夾、文件以及活動(dòng)目錄對(duì)象進(jìn)行審核,審核結(jié)果記錄在安全日志中,通過(guò)安全日志就可以查看哪些組或用戶對(duì)文件夾、文件或活動(dòng)目錄對(duì)象進(jìn)行了什么級(jí)別的操作,從而發(fā)現(xiàn)系統(tǒng)可能面臨的非法訪問(wèn), 通過(guò)采取相應(yīng)的措施,將這 種安全隱患減到最低。這些在 FAT32文件系統(tǒng)下,是不能實(shí)現(xiàn)的。6、在Win 2000的NTFS文件系統(tǒng)下可以進(jìn)行磁盤配額管理。磁盤配額就是管理員可以為用戶所能使用的磁盤空間進(jìn)行配額限制,每一用戶只能使用最大 配額范圍

34、內(nèi)的磁盤空間。設(shè)置磁盤配額后,可以對(duì)每一個(gè)用戶的磁盤使用情況進(jìn) 行跟蹤和控制,通過(guò)監(jiān)測(cè)可以標(biāo)識(shí)出超過(guò)配額報(bào)警閾值和配額限制的用戶,從而采取相應(yīng)的措施。磁盤配額管理功能的提供,使得管理員可以方便合理地為用戶 分配存儲(chǔ)資源,避免由于磁盤空間使用的失控可能造成的系統(tǒng)崩潰,提高了系統(tǒng)的安全性。7、NTFS使用一個(gè)“變更”日志來(lái)跟蹤記錄文件所發(fā)生的變更?!綞xt2】:Ext2是GNU/Linux 系統(tǒng)中標(biāo)準(zhǔn)的文件系統(tǒng),其特點(diǎn)為存取文件的性能極 好,對(duì)于中小型的文件更顯示出優(yōu)勢(shì),這主要得利于其簇快取層的優(yōu)良設(shè)計(jì)。其單一文件大小與文件系統(tǒng)本身的容量上限與文件系統(tǒng)本身的簇大小有關(guān), 在一般常見的x86電腦系統(tǒng)

35、中,簇最大為 4KB,則單一文件大小上限為 2048GB,而文件系統(tǒng)的容量上限為16384GB。但由于目前核心2.4所能使用的單一分割區(qū)最大只有 2048GB,實(shí)際上能 使用的文件系統(tǒng)容量最多也只有 2048GB。至于Ext3文件系統(tǒng),它屬于一種日志文件系統(tǒng),是對(duì)ext2系統(tǒng)的擴(kuò)展。它 兼容ext2,并且從ext2轉(zhuǎn)換成ext3并不復(fù)雜?!綞xt3】:Ext3是一種日志式文件系統(tǒng),是對(duì)ext2系統(tǒng)的擴(kuò)展,它兼容ext2。日志式 文件系統(tǒng)的優(yōu)越性在于:由于文件系統(tǒng)都有快取層參與運(yùn)作,如不使用時(shí)必須將 文件系統(tǒng)卸下,以便將快取層的資料寫回磁盤中。 因此每當(dāng)系統(tǒng)要關(guān)機(jī)時(shí),必須 將其所有的文件系統(tǒng)全部

36、shutdow n后才能進(jìn)行關(guān)機(jī)。如果在文件系統(tǒng)尚未shutdown前就關(guān)機(jī)(如停電) 時(shí),下次重開機(jī)后 會(huì)造成文件系統(tǒng)的資料不一致,故這時(shí)必須做文件系統(tǒng)的重整工作, 將不一致與 錯(cuò)誤的地方修復(fù)。然而,此一重整的工作是相當(dāng)耗時(shí)的, 特別是容量大的文件系 統(tǒng),而且也不能百分之百保證所有的資料都不會(huì)流失。為了克服此問(wèn)題,使用所謂日志式文件系統(tǒng)(Journal )。此類文件系統(tǒng)最大的特色是,它會(huì)將整個(gè)磁盤的寫入動(dòng)作完整記錄在磁盤的某個(gè)區(qū)域上, 以便有需要時(shí)可以回溯追蹤。由于資料的寫入動(dòng)作包含許多的細(xì)節(jié),像是改變文件標(biāo)頭資料、搜尋磁盤可 寫入空間、一個(gè)個(gè)寫入資料區(qū)段等等,每一個(gè)細(xì)節(jié)進(jìn)行到一半若被中斷,

37、 就會(huì)造 成文件系統(tǒng)的不一致,因而需要重整。然而,在日志式文件系統(tǒng)中,由于詳細(xì)紀(jì)錄了每個(gè)細(xì)節(jié),故當(dāng)在某個(gè)過(guò)程中 被中斷時(shí),系統(tǒng)可以根據(jù)這些記錄直接回溯并重整被中斷的部分, 而不必花時(shí)間 去檢查其他的部分,故重整的工作速度相當(dāng)快,幾乎不需要花時(shí)間。【Ext4】:Linux kernel自2628開始正式支持新的文件系統(tǒng)Ext4。Ext4是Ext3的改進(jìn)版,修改了 Ext3中部分重要的數(shù)據(jù)結(jié)構(gòu),而不僅僅像Ext3對(duì)Ext2那 樣,只是增加了一個(gè)日志功能而已。Ext4可以提供更佳的性能和可靠性,還有 更為豐富的功能:1、 與Ext3兼容。執(zhí)行若干條命令,就能從 Ext3在線遷移到Ext4,而 無(wú)須重

38、新格式化磁盤或重新安裝系統(tǒng)。原有 Ext3數(shù)據(jù)結(jié)構(gòu)照樣保留,Ext4作 用于新數(shù)據(jù),當(dāng)然,整個(gè)文件系統(tǒng)因此也就獲得了 Ext4所支持的更大容量。2、更大的文件系統(tǒng)和更大的文件。較之Ext3目前所支持的最大16TB文 件系統(tǒng)和最大 2TB文件,Ext4分別支持1EB( 1 ,048,576TB,1EB=1024PB, 1PB=1024TB )的文件系統(tǒng),以及 16TB的文件。3、無(wú)限數(shù)量的子目錄。Ext3目前只支持 32,000個(gè)子目錄,而 Ext4支持無(wú)限數(shù)量的子目錄4、Extents。Ext3采用間接塊映射,當(dāng)操作大文件時(shí),效率極其低下。比如一個(gè)100MB大小的文件,在 Ext3中要建立25

39、, 600個(gè)數(shù)據(jù)塊(每個(gè)數(shù) 據(jù)塊大小為4KB)的映射表。而 Ext4引入了現(xiàn)代文件系統(tǒng)中流行的 extents 概念,每個(gè)extent為一組連續(xù)的數(shù)據(jù)塊,上述文件則表示為“該文件數(shù)據(jù)保存 在接下來(lái)的25,600個(gè)數(shù)據(jù)塊中”,提高了不少效率。5、多塊分配。當(dāng)寫入數(shù)據(jù)到 Ext3文件系統(tǒng)中時(shí),Ext3的數(shù)據(jù)塊分配器 每次只能分配一個(gè)4KB的塊,寫一個(gè)100MB文件就要調(diào)用25,600次數(shù) 據(jù)塊分配器,而 Ext4的多塊分配器“ multiblock allocator ”( mballoc ) 支 持一次調(diào)用分配多個(gè)數(shù)據(jù)塊。6、 延遲分配。Ext3的數(shù)據(jù)塊分配策略是盡快分配,而 Ext4和其它現(xiàn)代

40、 文件操作系統(tǒng)的策略是盡可能地延遲分配,直到文件在cache中寫完才開始分 配數(shù)據(jù)塊并寫入磁盤,這樣就能優(yōu)化整個(gè)文件的數(shù)據(jù)塊分配, 與前兩種特性搭配 起來(lái)可以顯著提升性能。7、快速fsck。以前執(zhí)行fsck第一步就會(huì)很慢,因?yàn)樗獧z查所有的in ode,現(xiàn)在Ext4給每個(gè)組的in ode表中都添加了一份未使用in ode的列 表,今后fsck Ext4文件系統(tǒng)就可以跳過(guò)它們而只去檢查那些在用的inode了。8、日志校驗(yàn)。日志是最常用的部分,也極易導(dǎo)致磁盤硬件故障,而從損壞的日志中恢復(fù)數(shù)據(jù)會(huì)導(dǎo)致更多的數(shù)據(jù)損壞。Ext4的日志校驗(yàn)功能可以很方便地判斷日志數(shù)據(jù)是否損壞,而且它將Ext3的兩階段日志機(jī)

41、制合并成一個(gè)階段,在 增加安全性的同時(shí)提高了性能 9、“無(wú)日志” (No Journaling )模式。日志總歸有一些開銷,Ext4允許關(guān)閉 日志,以便某些有特殊需求的用戶可以借此提升性能。10、 在線碎片整理。盡管延遲分配、多塊分配和exte nts能有效減少文件系統(tǒng)碎片,但碎片還是不可避免會(huì)產(chǎn)生。Ext4支持在線碎片整理,并將提供e4defrag 工具進(jìn)行個(gè)別文件或整個(gè)文件系統(tǒng)的碎片整理。11、i node 相關(guān)特性。Ext4支持更大的in ode,較之 Ext3 默認(rèn)的inode 大小128字節(jié),Ext4為了在in ode中容納更多的擴(kuò)展屬性(如納秒時(shí)間戳或 inode版本),默認(rèn)in

42、ode大小為256字節(jié)。Ext4還支持快速擴(kuò)展屬性(fast extended attributes )和 inode 保留 (inodes reservation )。12、 持久預(yù)分配(Persistent preallocation )。P2P軟件為了保證下載文 件有足夠的空間存放,常常會(huì)預(yù)先創(chuàng)建一個(gè)與所下載文件大小相同的空文件,以免未來(lái)的數(shù)小時(shí)或數(shù)天之內(nèi)磁盤空間不足導(dǎo)致下載失敗。Ext4在文件系統(tǒng)層面實(shí)現(xiàn)了持久預(yù)分配并提供相應(yīng)的 API (libc中的posix_fallocate (),比應(yīng) 用軟件自己實(shí)現(xiàn)更有效率。13、默認(rèn)啟用barrier。磁盤上配有內(nèi)部緩存,以便重新調(diào)整批量數(shù)

43、據(jù)的寫操作順序,優(yōu)化寫入性能,因此文件系統(tǒng)必須在日志數(shù)據(jù)寫入磁盤之后才能寫 commit記錄,若commit記錄寫入在先,而日志有可能損壞,那么就會(huì)影響 數(shù)據(jù)完整性。Ext4默認(rèn)啟用barrier,只有當(dāng)barrier之前的數(shù)據(jù)全部寫入磁 盤,才能寫barrier之后的數(shù)據(jù)。(可通過(guò)“mount -o barrier=0 ” 命令禁用該特性。)【ZFS】:ZFS源自于Sun Microsystems 為Solaris操作系統(tǒng)開發(fā)的文件系統(tǒng)。ZFS 是一個(gè)具有高存儲(chǔ)容量、文件系統(tǒng)與卷管理概念整合、嶄新的磁盤邏輯結(jié)構(gòu)的輕 量級(jí)文件系統(tǒng),同時(shí)也是一個(gè)便捷的存儲(chǔ)池管理系統(tǒng)。ZFS是一個(gè)使用CDDL協(xié)議

44、條款授權(quán)的開源項(xiàng)目?!綡FS】:1、HFS文件系統(tǒng)概念分層文件系統(tǒng)(Hierarchical ,HFS)是一種由蘋果電腦開發(fā),并使用在 Mac OS上的文件系統(tǒng)。最初被設(shè)計(jì)用于軟盤和硬盤,同時(shí)也可以在在只讀媒體 如CD-ROM上見到。2、HFS文件系統(tǒng)開發(fā)過(guò)程HFS首次出現(xiàn)在1985年9月17日,作為Macintosh 電腦上新的文件系 統(tǒng)。它取代只用于早期 Mac型號(hào)所使用的平面文件系統(tǒng) Macintosh (MFS )。 因?yàn)镸ac in tosh電腦所產(chǎn)生的數(shù)據(jù),比其它通常的文件系統(tǒng),女口DOS使用的FAT或原始Unix文件系統(tǒng)所允許存儲(chǔ)的數(shù)據(jù)更多。蘋果電腦開發(fā)了一種新式更 適用的文件系

45、統(tǒng),而不是采用現(xiàn)有的規(guī)格。例如,HFS允許文件名最多有31個(gè)字符的長(zhǎng)度,支持metadata和雙分支(每個(gè)文件的數(shù)據(jù)和資源支分開存儲(chǔ)) 文 件。盡管HFS象其它大多數(shù)文件系統(tǒng)一樣被視為專有的格式,因?yàn)橹挥兴鼮榇?多數(shù)最新的操作系統(tǒng)提供了很好的通用解決方法以存取HFS格式磁盤。在1998年,蘋果電腦發(fā)布了 HFS Plus,其改善了 HFS對(duì)磁盤空間的地址定位效率低下,并加入了其它的改進(jìn)。當(dāng)前版本的Mac OS仍舊支持HFS,但從Mac OS X開始HFS卷不能作為啟動(dòng)用。3、構(gòu)成方式分層文件系統(tǒng)把一個(gè)卷分為許多 512字節(jié)的“邏輯塊”。這些邏輯塊被編 組為“分配塊”,這些分配塊可以根據(jù)卷的尺寸包含一個(gè)或多個(gè)邏輯塊。HFS對(duì)地址分配塊使用16位數(shù)值,分配塊的最高限制數(shù)量是 65536。組成一個(gè)HFS卷需要下面的五個(gè)結(jié)構(gòu):1)卷的邏輯塊0和1是啟動(dòng)塊,它包含了系統(tǒng)啟動(dòng)信息。例如,啟動(dòng)時(shí)載 入的系統(tǒng)名稱和殼(通常是 Finder )文件。2)邏輯塊2包含主目錄塊(Master Directory Block ,簡(jiǎn)稱MDB )。3)邏輯塊3是卷位圖(Volume Bitmap )的啟動(dòng)塊,它追蹤分配塊使用狀 態(tài)04)總目錄文件(Catalog File )是一個(gè)包含所有文件的記

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論