操作系統(tǒng)教程課件-12第十三章unix_第1頁
操作系統(tǒng)教程課件-12第十三章unix_第2頁
操作系統(tǒng)教程課件-12第十三章unix_第3頁
操作系統(tǒng)教程課件-12第十三章unix_第4頁
操作系統(tǒng)教程課件-12第十三章unix_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第十三章UNIX操作系歷史回顧(Historical系統(tǒng)結構(System進程管理(Process管理(Memory文件系統(tǒng)(File設備管理(Device系統(tǒng)調用(System外殼語言 13.1歷史回1969年 的兩名程序K.Thompson和D.M.Ritchie設計最初該系統(tǒng)是采用匯編語言編incorporatedfeaturesofotheroperatingsystems,especiallyMULTICS.后來二人專門為UI設計了C語言,并用它重新改寫了UI中的大部分源代碼,形成第三版.歷史回在70年代初期,UNIX在Bell及許多大學中獲得了廣泛的應用,這也促進了UNIX系統(tǒng)的進一步發(fā)展.1973年推出第五1976年推出第六1978年第七版正式由于UNIX結構良好,并被迅速地移植到Interdata8/32及VAX等機器發(fā)展與版本第9第8第7

Bell第第1版第第3版第第6版

第10 IBMIBMSun系統(tǒng)結UNIX系統(tǒng)組

終 終系統(tǒng)進程(#1),s,…,s,其它用戶進核外系統(tǒng)進程(#0,#2),系統(tǒng)調用(虛擬系字符緩硬內核由兩類模塊構–的,即普通模–主動的,即進程模普通模進程控文件管管理設備管原語管中斷處處理機管系統(tǒng)初內核部進程模process0交換進程process#1初始進程Process2虛擬頁面調度進系統(tǒng)進程,運行操作系統(tǒng) 程序,完成操哪些模塊作為系統(tǒng)進程無限循環(huán)程序,沒有調用也要外殼部外殼部分運行命令解釋程序,讀入、解釋縮減操作系統(tǒng)內核的規(guī)不同用戶可以使用不同的外 可以編進程管進程組進程控制進程狀態(tài)與狀態(tài)轉進程調進程互進程同進程通進程組Text結Proc結系統(tǒng)User常駐內存部 內外存交換部進程控制Proc結存時都是需要的.User結–所保存的信息僅當進程在內存時才是需要的因而可以與進程的程序一起被移到外struct{charp_stat;charp_flag;charp_pri;char //signalchar //userchar //residenttimeforchar //cpucharp_nice; //niceforschedulingcharp_ttyp; //controllingttyintp_pid; //uniqueproceint //parentint //addressofswappableint //sizeofswappableimageint //eventprocessisint //pointertotext{usergrouprealrealgrouppointertoprocbaseaddressforbytesremainingforoffsetinfileforpointertoinodeofcurrentinodeofparent //prototypesegmentation //prototypesegmentationpointerstofileargumentstosystemtextsizedatasizestacksizethisprocessuserthisprocesssystemchildprocessuserchildprocesssystem}struct{//diskaddressof//coreaddressif//inodeof//reference//numberofloadedswapinswapout進程狀態(tài)及其012345656Subsetof:{p_state}{p_flag}{system

置置

進程調調度策DynamicPrioritybased(LownumberhighAging(no調度算pp_priUSERp_cpup_p_cpu:運行進程,每20ms加1;其它進程,每1200ms減p_nice:系統(tǒng)調用nice(n).用戶進程:0~20,系統(tǒng)進程:-進程調度實中進程P(用戶態(tài) 進程P(態(tài)(psw,pc)→系統(tǒng)進程Q(用戶態(tài)

返系統(tǒng)棧psw,pc→寄存

進程Q(態(tài)進程互經典UNIX系機關中斷互特簡沒有忙等,開銷只在單CPU影響并發(fā)關中斷后代碼很進程同事件同步–當一個進程因某種原因不能繼續(xù)運行時,它便等在某一個事件上即將等待事件記在p_wchan變量上,當對應事件發(fā)生時,系統(tǒng)喚醒等待于該事件上的所有進程競爭條–事件發(fā)生可能先于等待,錯過等待條件–事件將被丟失忙式等被喚醒進程可能再次等進程通FromprocesstoFromeventto管道UnnamedNamedsocket通EndpointSuitablefor

FewUNIXsystemspermittedsharedmemorybecausethePDP-11hardwaredidnotencourageit特簡單信號(類似軟中斷,共20異步通信號來異步事keyboardinterrupt,error,timer,進程,系統(tǒng)調用(如fromprocesstoprocess,orfromterminal使信號處理程序的定信號的發(fā)送與接信號的處信號信號處理程序的定系統(tǒng)調用signal(sig,func)預置其中i為019的信號值,func為處理程序的地址.該系統(tǒng)調用的作用是當func為0時接收信號進程終止自己當func為奇數時忽略信號func為偶數時為處理程 進程初創(chuàng)時自動信號信號的發(fā)送與接進程實際接收到的信號被記載在p_sig中信號信號的處棧PC→目態(tài)棧PSW,u_signal[p_sig]→寄存(u_signal[p_sig]==奇數對多數信號的信號很象允許用戶程序在目態(tài)處理的中斷管道特經典UNIX最有特色的通訊機制單方向,流式通訊建立在文件基礎上,與文件界面統(tǒng)一;實現(xiàn)極為練速度問題:為防止兩次I/O傳限制pipe文件大小(4塊緩沖技延遲使用方法:先創(chuàng)建管道,再創(chuàng)建進程—繼int……p1=fork();p1: 套接字端-端通訊機類StreamSequencedpacketDatagramReliablydeliveredmessageRaw套接字地址使用中的socket與一地址相聯(lián)地址的形式由通訊域)確定同一域中的進程使用相同addressUNIXtheInternettheXEROXNetworkService(NS) 管經典 管一個進程兩個對Text(共享Data內外存不同尺寸,同一管理程序(FF算法Core:swap:交換技13.4.1管理方采用界地址管理方一個進程由兩個對界組成即占有兩個連續(xù)一個區(qū)域用于保存共享代另個區(qū)域用于保存私用數據及用戶堆分配的基本單位是64個字節(jié),而不是單13.4.2分配算內存空間及外存交換區(qū)的分配均是動態(tài)描述內存空間及外存空間分配狀況各需內存的分配與外存的分配共用同一個程進程空間擴堆棧分基本長度,避免堆棧溢動態(tài)擴申請一個新的數據區(qū)(原區(qū)域大?。黾哟笮♂尫旁袇^(qū)內存不交換到外存(同時擴展空間釋放所占內再次由sched交換技術 交換目標:緩解內存緊交換進程交換算移入外存中SRUN狀態(tài)進如內存不夠,選擇移內存中處于SWAIT或SSTOP狀態(tài)進如還不夠,選擇移內存中處于SSLEEP或SRUN狀態(tài)進程,條待移入進程在外時間>=3待移出進程在內時間>=2虛擬頁式4.3BSDUNIX:demand-paging+主要依賴(first其次是交換(secondaryswap偷頁進程(Pagestealer動態(tài)并調整進程頁架基于工作集模型(workingsetIftheschedulerdecidesthatthepagingsystemisoverloaded,processeswillbeswappedoutwholeuntiltheoverloadis頁面置pagedaemonUsesamodifiedsecond-chancereplacementalgorithm.Secondchance:avariantofSetpage3,4referencebitto0, replacepage頁面置pagedaemonUsesamodifiedsecond-chancereplacementalgorithm.Secondchance:avariantofSetpage3,4referencebitto0, replacepage0頁面置pagedaemonUsesamodifiedsecond-chancereplacementalgorithm.Secondchance:avariantofSetpage3,4referencebitto0, replacepage01UNIX文件系文件類文件體文件結文文件卷安磁盤空間管Inode區(qū)管快速文件系NFS文件系文件類普通文內容可以是程序、數據、圖象等,保存在磁盤塊文(文件名,文件號)特殊文設設備作為文件管理的好界面統(tǒng)一,使用文件與使用設備命令相同,申請設備oen,釋放clse讀read,寫write利用文件保護功能可以保護設文件體基本結構:樹系 ,系統(tǒng)文用 ,用戶文連接不是真正的樹,而呈格結連接方便文件共文件結邏輯結流式文件,字節(jié)讀寫命令中包含字節(jié)其中count為傳輸字節(jié)模擬記錄式文物理結直接與間0級,1級,2級,3級間接尋文 與連項相當FCB次形式為(相當于FCB主每個inode有一個多個文件名對應同一個i_number(連接共享連接實 13.5.5

數據…

…………相關表u_ofile(每進程一個struct{…int…}#defineNOFILE

file(系統(tǒng)一個struct{char charintchar#defineNFILE相關表structinode{

表間聯(lián)系u_ofile file 13.5.6文件卷的安 UNIX文件012…k…n- 導 inode區(qū)引 每塊16個塊從0起依

文件區(qū)(普通文件 文件塊1#(super (1記載文件卷上k+1塊到n-1塊中所有空閑(2inode區(qū)中100個空閑inode緩沖文件安裝(mount)后超級塊讀入超級塊結構(安裝后讀入內存,卸下時回寫磁盤Structfilesysints_isize;//sizeinblocksofiints_fsize;//sizeinblocksofentirevolumeints_nfree;//numberofincorefreeblocksints_free[100];//incorefreeblocksints_ninode;//numberofincoreIlistints_inode[100];//incorefreeInodeschars_flock;//freelistlockingchar //ilistchars_fmod; //superblockmodifiedflagchars_ronly; //mountedreadonlyflagchars_time[2]; //currentdateoflastupdateintpad[50];}13.5.7磁盤空間管理100個空閑塊為一組,組之間相互Super特點:速度快,空間省13.5.8空閑inode管理s_inode最多可以記載100個空閑 申請時s_ninode>0取s_inode[-- s_ninode=0,由磁盤inode區(qū)順取100個空閑I節(jié)點(i_nlink=0) 釋放時s_ninode<100,s_inode[s_ninode++]=i_number釋放的s_ninode=100,丟棄13.5.9快速文件系經典UNIX文件系Inode區(qū)與內容區(qū)相分查找速度慢(引臂在inode區(qū)與塊區(qū)之間往復移動,其長路徑名文件長度大于5120字節(jié):間接尋文件名長度14字節(jié)以FastFile1984UC被許多現(xiàn)代UNIX采用,包括效率提高一個數13.5.9快速文件系快速文件系I/O效率(達8KB)FFS支持符號連接(symboliclink),這種連接符號連接(symbolic硬連接(hardlink)局限性只能連接普通文不能跨文件軟連接(soft可以連 文可以跨文件卷,或主符號連

Li(cd,當 d1/d2/d4/f1是一已存在文建立一個硬連ln–sd1/d2/d4建立一個軟連接,s的內容為 d5/s/f1為i_number=15的文以后執(zhí)行

s自動失 13.5.9快速文件系UNIX4.3BSD柱面數據SuperCylinder數據13.5.10NFS網絡文件系NFS體系結每個站點相對獨立文 不同站 樹之間可以安協(xié) 安裝協(xié)議(不透明 存取協(xié)議(透明NFS實UNIX界uabcd

NFS安裝協(xié)建立client與server之間

溫馨提示

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

評論

0/150

提交評論