2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、計算機操作系統(tǒng)中的幾個泛系關(guān)系,蘭州大學(xué) 劉永兵 李永禮,引言——操作系統(tǒng)的復(fù)雜性,操作系統(tǒng)的復(fù)雜性對大家來說不言而明的,就拿源碼開放的Linux操作系統(tǒng)內(nèi)核來說,其源代碼包含在大約4500個C語言和匯編語言文件中,這些文件存放在大約270個子目錄中。源代碼大約由200萬行組成,占58M以上的空間。要弄清楚這個操作系統(tǒng),一行一行的閱讀這200萬行代碼似乎是行的同,但實際上卻是行不同的一個方法,如何在短時間內(nèi)抓住其中不同層次的主要

2、關(guān)系,就顯的非常必要,我嘗試用泛系思想方法來快速理解和掌握其中的關(guān)系,以下的報告是我用泛系思想研究Linux一些探索。,主要內(nèi)容,1.操作系統(tǒng)的泛系關(guān)系2.內(nèi)核數(shù)據(jù)的動靜思想3.Linux文件系統(tǒng)的形影關(guān)系,1.操作系統(tǒng)自身的泛系關(guān)系,1.1原始社會供求關(guān)系模型,1.2現(xiàn)代供求關(guān)系模型,1.3操作系統(tǒng)的供求關(guān)系,1.4技術(shù)實現(xiàn),在操作系統(tǒng)供求關(guān)系的技術(shù)實現(xiàn)上主要作兩個抽象:即任務(wù)抽象和資源抽象。通過資源抽象能把計算機中的軟硬件資源表

3、示出來;通過任務(wù)抽象能把系統(tǒng)中計算任務(wù)表示出來。,1.4.1任務(wù)抽象,任務(wù)抽象就是我們通常所說的計算任務(wù)的抽象,抽象后的任務(wù)在一般教科書書中稱之為進程。在系統(tǒng)中用進程控制塊(PCB)來描述。在Linux內(nèi)核中每一個進程用task_struct數(shù)據(jù)結(jié)構(gòu)表示 。,1.4.2資源抽象,為了讓操作系統(tǒng)本身知道系統(tǒng)中的軟硬件資源,就需要把計算機中的各種軟件資源在操作系統(tǒng)中表示出來,這就是資源抽象。例如,就拿Linux內(nèi)存管理來說,Linux在管理

4、內(nèi)存時,把系統(tǒng)中的內(nèi)存分了大小相等的塊,我們稱之為頁,一般來說這些頁的大小為4K,為了表示其中的頁,Linux使用了page數(shù)據(jù)結(jié)構(gòu) 。,1.4.3資源抽象和任務(wù)抽象之間的泛系關(guān)系,資源抽象和任務(wù)抽象的泛系關(guān)系就是供求關(guān)系,也就是說操作系統(tǒng)的本質(zhì)便是要在資源抽象和任務(wù)抽象之間建立供求關(guān)系。通過操作系統(tǒng)的內(nèi)核溝通資源和任務(wù),在這兩者之間充當(dāng)中間商。具體來說就是由操作系統(tǒng)內(nèi)核決定分配當(dāng)前的哪些資源給哪些任務(wù)。,2.操作系統(tǒng)內(nèi)核數(shù)據(jù)管理控制策

5、略的泛系思想方法,——以少控多,以靜制動,2.1操作系統(tǒng)內(nèi)核數(shù)據(jù)管理控制上的兩難問題,操作系統(tǒng)是一個典型的龐大復(fù)雜巨系統(tǒng),就其內(nèi)核而言,單數(shù)據(jù)的數(shù)量之龐大就不言而諭的。再加上其自身是一個系統(tǒng),在系統(tǒng)運行的時候數(shù)據(jù)的數(shù)量和值還會隨著系統(tǒng)處于不同的狀態(tài)而不同,可以說是時時在變,這就給管理控制這些數(shù)據(jù)帶來了很多困難。,,如果給這些數(shù)據(jù)分配固定的空間,當(dāng)然在管理控制方面沒有什么太多的問題,既然是事先分配的空間,就能直接的訪問。這些數(shù)據(jù)在內(nèi)核空間

6、中也不會互相干擾,數(shù)據(jù)不會出現(xiàn)混亂的情況,但一個嚴重的后果是系統(tǒng)缺乏了伸縮和靈活性,事先分配的空間總是有限的,當(dāng)然內(nèi)核數(shù)據(jù)的量超過這個要求的時候,系統(tǒng)就沒辦法正常運行,再說在內(nèi)核數(shù)據(jù)量比較小的時候,會有很多事先分配的空間在這個時候沒有使用上,也是一種資源的浪費。,,如果采用讓所有的數(shù)據(jù)都動起來,即動態(tài)的分配和使用,那么在這個時候以上說的問題就迎刃而解,但這個時候出現(xiàn)了另外一個嚴重的問題,即給這些數(shù)據(jù)的管理控制帶來了麻煩,要訪問的數(shù)據(jù)在某

7、個時刻究竟在什么位置,怎樣保證在需要的時候能快速的找到想要訪問的數(shù)據(jù),這些問題就顯得很棘手。,2.2內(nèi)核數(shù)據(jù)的管理控制策略,顯然,事先為所有的數(shù)據(jù)分配靜態(tài)的空間的策略是不可取的,那么我們只能使用按需要動態(tài)分配空間的策略,接下來的問題是我們?nèi)绻麃砉芾砜刂七@些數(shù)據(jù),能隨時很方便的訪問到想要訪問的數(shù)據(jù).為了能找到解決問題的辦法,我們自然而然的一的泛系思想是尋找泛對稱,也就是要從這千變?nèi)f化的數(shù)據(jù)中尋找中不變的東西.,,首先,內(nèi)核數(shù)據(jù)是可以分類的

8、,例如系統(tǒng)中所有的進程控制塊(PCB),可以認為是同屬于一個類;其次,每在一類數(shù)據(jù)中尋找不變的數(shù)據(jù),把這些數(shù)據(jù)做成靜態(tài)結(jié)構(gòu),在系統(tǒng)初始化的過程中分配固定空間,此后,在系統(tǒng)運行的過程中其位置不再發(fā)生變化,而其它數(shù)據(jù)則在系統(tǒng)運行過程中,需要的時候分配,用完就退回系統(tǒng),這些隨機的數(shù)據(jù)可以和這個類中靜態(tài)分配的數(shù)據(jù)關(guān)聯(lián)起來,在系統(tǒng)需要訪問的時候可以通過這個類中靜態(tài)的數(shù)據(jù)和它們的關(guān)聯(lián)關(guān)系很容易的找到.,2.3泛對稱的顯生過程(以樹結(jié)構(gòu)為例),,以上

9、樹中的所有節(jié)點組成了一類數(shù)據(jù),在樹的變化過程中,有的節(jié)點消失,又有新的節(jié)點生成。而在這個千邊萬化的過程中,樹的根節(jié)點始終沒有變化,這里就存在一個泛對稱,根節(jié)點便是個泛極端。,,極端的情況是一類中的所有數(shù)據(jù)都是動態(tài)變化的,在這個時候我們可以仍然可以用同樣的方法分析。但這個時候引進泛系規(guī)的思想。,,可以把根節(jié)點不變的所有數(shù)據(jù)看成一類,而這個根節(jié)點就是這個類的泛極端,在對所有的泛極端求共影,例如可以把它們共影到某個固定(靜態(tài))的指針變量P。,

10、2.4Linux操作系統(tǒng)內(nèi)核數(shù)據(jù)以少控多,以靜制多策略實例,,init_task是系統(tǒng)中的0號進程,也就是第一個進程,這個進程永遠不會被撤消,它的描述符被靜態(tài)的分配到內(nèi)核數(shù)據(jù)段中,也就是說init_task的進程描述符是預(yù)先由編譯器分配的,在運行的過程中保持不變,而其它描述符是在運行的過程中,由系統(tǒng)根據(jù)當(dāng)前的內(nèi)存狀況隨機分配的,撤消的時再在歸還給系統(tǒng)。,2.5由該種策略下的內(nèi)存分配圖,,(1)   

11、0;   在0—4K之間存放加電自測期間檢查到的硬件配置。(2)       640K—1M之間被留作BIOS程序使用,并且映射ISA顯示卡上的存儲器(在早期的MS—DOS系統(tǒng)上有很有名的640K地址限制的說法)。Linux操作系統(tǒng)被安裝在1M以后的內(nèi)存空間上,在系統(tǒng)初始化的時候,操作系統(tǒng)被裝了上去,同時這部分建立了固定的映射,這里我們把它看作靜的,因為

12、一但初始化結(jié)束時,這部分的映射在系統(tǒng)運行時不再發(fā)生變化,這部分映射有:(1)        _text—_etext之間存放內(nèi)核代碼。(2)        _etext—_edata之間存放已初始化的內(nèi)核數(shù)據(jù)。(3)      

13、60; _edata—_end之間存放未初始化的內(nèi)核數(shù)據(jù)。在這里,_text是緊挨著1M后的內(nèi)存單元,_text,_etext,_edata,_end這些參數(shù)的值是在編譯內(nèi)核時產(chǎn)生的。,2.6內(nèi)核數(shù)據(jù)控制策略的再次泛系哲理思考,動靜關(guān)系是泛系思想中的一個重要基本關(guān)系,在這里,我們用少量的靜態(tài)數(shù)據(jù)控制了大量的動態(tài)數(shù)據(jù),實現(xiàn)了我們高效利用存儲空間的目的。這就是以少控多,以靜制動。,3.Linux文件系統(tǒng)的形影關(guān)系,,3.1形影關(guān)系的思想淵

14、源,x 1 2 3 4…在人們認識和掌握代數(shù)學(xué)之前,人們做的運算都是基于個體的具體的數(shù)字,但代數(shù)學(xué)使人們理解和掌握操作一類事物。,,,,,,3.2泛系的形影關(guān)系,集論意義的形影關(guān)系包括函數(shù),投影,影射,反函數(shù),賦形(投影之逆),直集,商化(轉(zhuǎn)化為商集——子集的某些集合),積化(商化之逆),有時也包括縮影及其逆——擴形以及泛積,并把形影關(guān)系的復(fù)合也看成形影關(guān)系。,3.3Linux

15、所支持的文件系統(tǒng),有Unix家族系統(tǒng)(Unix System V及BSD)的文件系統(tǒng);有微軟公司的文件系統(tǒng),如MS-DOS,VFAT(Windows 98)及NTFS(Windows NT);有ISO9660 CD-ROM文件系統(tǒng)(以前的High Sierra文件系統(tǒng));還有其它有專利權(quán)的文件系統(tǒng),如HPFS(IBM公司的OS/2),HFS(蘋果公司的Macintosh),FFS(Amiga公司的快速文件系統(tǒng))以及ADFS(Acorn公

16、司的系列機)。,3.4.1Linux文件系統(tǒng)的形影關(guān)系,在Linux文件系統(tǒng)為了要兼容各種操作系統(tǒng)下的文件系統(tǒng),提出了“虛擬文件系統(tǒng)”VFS(Virtual Filesystem Switch)的概念。為了能做到兼容各種文件系統(tǒng),Linux對各種文件系統(tǒng)作了極其美妙的抽象,在各個操作系統(tǒng)的文件系統(tǒng)上面又做了一層,這一層就是虛擬文件系統(tǒng)層。,,“虛擬文件系統(tǒng)”VFS 相當(dāng)于所有Linux所支持的具體的文件系統(tǒng)(EXT2文件系統(tǒng),MS-DO

溫馨提示

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

評論

0/150

提交評論