操作系統概論自考復習資料_第1頁
操作系統概論自考復習資料_第2頁
操作系統概論自考復習資料_第3頁
操作系統概論自考復習資料_第4頁
操作系統概論自考復習資料_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、操作系統operatingsystem,OS是計算機系統中必不可少的系統軟件。它是計算機系統中各種資源的管理者和各種活動的組織者、指揮者。它使整個計算機系統協調一致且有效地工作。通過本課程的學習,我們將知道操作系統要做什么、怎么做和為什么要這樣做。學習操作系統,首先我們應該知道操作系統的概念。本章主|要講述了以下幾個問題。一、什么是操作系統二、操作系統的形成三、操作系統的類型四、操作系統的功能一、什么是操作系統在答復這個問題之前,我們先來了解一下什么是計算機系統。計算機系統是按用戶的要求接收和存儲信息、自動進展數據處理并輸出結果信息的系統。計算機系統由硬件系統和軟件系統組成。軟硬件系統的組成局

2、部就是計算機系統的資源,當不同的用戶使用計算機時都要占用系統資源并且有不同的控制需求。操作系統就是計算機系統的一種系統軟件,由它統一管理計算機系統的資源和控制程序的執行。操作系統的設計目標一是使計算機系統使用方便。二是使得計算機系統能高效地工作。二、操作系統的形成早期沒有操作系統一原始匯編系統一管理程序一操作系統可以看到,操作系統是隨著計算機硬件的開展和應用需求的推動而形成的。三、操作系統的類型按照操作系統提供的效勞,大致可以把操作系統分為以下幾類:批處理操作系統、分時操作系統、實時操作系統、網絡操作系統和分布式操作系統。其中批處理操作系統、分時操作系統、實時操作系統是根本的操作系統加亮1、批

3、處理操作系統按照用戶預先規定好的步驟控制作業的執行,實現計算機操作的自動化。又可分為批處理單道系統和批處理多道系統。單道系統每次只有一個作業裝入計算機系統的主存儲器運行,多個作業可自動、順序地被裝入運行。批處理多道系統那么允許多個作業同時裝入主存儲器,中央處理器輪流地執行各個作業,各個作業可以同時使用各自所需的外圍設備,這樣可以充分利用計算機系統的資源,縮短作業也,提高系統的吞吐率。2、分時操作系統,這種系統中,一個計算機系統與許多終端設備連接,分時系統支持多個終端用戶,同時以交互方式使用計算機系統,為用戶在測試、修改和控制程序執行方面提供了靈活性。分時系統的主要特點是同時性、獨立性、及時性和

4、交互性。3、實時操作系統能使計算機系統接收到外部信號后及時進展處理,并在嚴格的規定日包完成處理,且給出反應信號。它是較少有人為干預的監視和控制系統。實時系統對可靠性和平安性要求極高,不強求系統資源的利用率。4、網絡操作系統可以把假設干計算機聯合起來,實現各臺計算機之間的通信及網絡中各種資源的共享,像我們現在使用的Windows,UNIX和Linux等操作系統都是網絡操作系統。5、分布式操作系統的網絡中各臺計算機沒有主次之分,在任意兩臺計算機間的可進展信息交換和資源共享。這一點上分布式操作系統和網絡操作系統差異不大,他們的本質區別在于:分布式操作系統能使系統中假設干計算機相互協作完成一個共同的任

5、務。這使得各臺計算機組成一個完整的,功能強大的計算機系統。四、操作系統的功能從資源管理的觀點出發,操作系統功能可分為五大局部:處理器管理、存儲管理、文件管理、設備管理和作業管理。計算機系統是由硬件系統和軟件系統兩局部組成,操作系統是軟件系統的一個組成局部,它是直接在硬件系統的根底上工作的,所以在研究操作系統之前,先必須對計算機系統的構造有一個根本的了解,本章就是講述計算機系統構造的根本知識。本章的考核知識點是:1.計算機系統的層次構造2.硬件環境3.操作系統構造學習本章要求:了解計算機系統的構造,有關硬件的I/O中斷和存儲構造,硬件的保護措施;有關操作系統的構造,操作系統提供的使用接口。重點是

6、:硬件環境和操作系統的構造一、計算機系統的層次構造識記現代的通用計算機系統是由硬件和軟件組成的一種層次式構造,最層是硬件系統,最外層是使用計算機系統的人,人與硬件系統之間是軟件系統本章考核知識點:1多道程序設計2.進程3.進程狀態4.進程控制塊5.進程隊列6.可再入程序7.中斷及中斷響應8.中斷優先級9.進程調度自學要求:通過本章學習應該掌握多道程序設計是如何提高計算機系統效率的;進程與程序有什么區別;進程的根本狀態以及狀態變化;進程隊列及進程調度策略;中斷的作用。重點是:多道程序設計;進程的定義和屬性;進程調度策略。一、多道程序設計領會1、什么是多道程序設計。讓多個計算問題同時裝入一個計算機

7、系統的主存儲器并行執行,這種設計技術稱多道程序設計”,這種計算機系統稱“多道程序設計系統或簡稱“多道系統。存儲保護:在多道程序設計的系統中,主存儲器中同時存放了多個作業的程序。為防止相互干擾,必須提供必要的手段使得在主存儲器中的各道程序只能訪問自己的區域。這樣,每道程序執行時,都不會破壞其他各道的程序和數據。特別是當某道程序發生錯誤的時,也不至于影響其它的程序。程序浮動:在多道程序設計系統中,對程序有一些特殊要求,也就是說,程序可以隨機地從主存的一個區域移動到另一個區域,程序被移動后仍絲毫不影響它的執行,這種技術稱為“程序浮動。在多道程序設計的系統中,有三點根本要求:用“存儲保護的方法保證各道

8、程序互不侵犯;用“程序浮動技術讓程序能靈活地改變存放區域且能正確執行;必須對資源按一定的策略分配和調度。2、多道程序設計利用了系統與外圍設備的并行工作能力,從而提高工作效率。具體表現為:提高了處理器的利用率;充分利用外圍設備資源:計算機系統配置多種外圍設備,采用多道程序設計并行工作時,可以將使用不同設備的程序搭配在一起同時裝入主存儲器,使得系統中各外圍設備經常處于忙碌狀態,系統資源被充分利用;發揮了處理器與外圍設備以及外圍設備之間的并行工作能力;從總體上說,采用多道程序設計技術后,可以有效地提高系統中資源的利用率,增加單位時間的算題量,從而提高了吞吐率。3、多道程序設計對算題量和算題型且的影響

9、。采用多道程序設計能改變系統資源的使用情況,提高系統效率。但是應注意以下兩個問題:可能延長程序的執行時間;并行工作道數與系統效率不成正比。從外表上看,增加并行工作道數就可提高系統效率,但實際上并行工作道數與系統效率是不成正比,因為并行的道數要根據系統配置的資源和用戶對資源的要求而定:1主存儲器的大小限制了可同時裝入的程序數量;2外圍設備的數量也是一個制約條件;3多個程序同時要求使用同一資源的情況也會經常發生。總之,多道程序設計能提高系統資源的使用效率,增加單位時間的算題量;但是對每個計算問題來說,從算題開場到全部完成所需要的時間可能延長,另外在確定并行工作道數時應綜合系統的資源配置和用戶對資源

10、的要求。二、進程領會1、進程的定義:把一個程序在一個數據集上的一次執行稱為一個“進程。2、進程是由程序、數據集和進程控制塊三局部組成。我們舉一個例子,比方在有一個用戶程序notepad.exe記事本,當它存放在磁盤上時,就是一個程序,在windows操作系統下運行它時,就會在存中建立一個記事本程序的進程,而我們在記事本中編輯的當前文字就是這個進程的數據集,操作系統會為當前的進程設置一個進程控制塊。如果我們再翻開一個記事本程序的窗口,就會建立另一個進程,此時運行的是同一個程序,但存在兩個進程,第二個窗口中的編輯容就是第二個進程的數據集。3、進程與程序的區別及關系。程序是靜止的,進程是動態的。進程

11、包括程序和程序處理的對象數據集,進程能得到程序處理的結果。進程和程序并非一一對應的,一個程序運行在不同的數據集上就構成了不同的進程。通常把進程分為“系統進程和“用戶進程兩大類,把完成操作系統功能的進程稱為等待態:等待某個事件的完成;三、進程狀態領會系統進程,而完成用戶功能的進程那么稱為用戶進程。1、進程的三種根本狀態.通常,根據進程執行過程中不同時刻的狀態,可歸納為三種根本狀態:就緒態:等待系統分配處理器以便運行;運行態:占有處理器正在運行。2、進程的狀態變化進程在執行中狀態會不斷地改變,每個進程在任何時刻總是處于上述三種根本狀態的某一種根本狀態,進程狀態之間轉換關系如下列圖所示:運行態一等待

12、態往往是由于等待外設,等待主存等資源分配或等待人工干預而引起的。等待態一就緒態那么是等待的條件已滿足,只需分配到處理器后就能運行。運行態一就緒態不是由于自身原因,而是由外界原因使運行狀態的進程讓出處理器,這時候就變成就緒態。例如時間片用完,或有更高優先級的進程來搶占處理器等。就緒態一運行態系統按某種策略選中就緒隊列中的一個進程占用處理器,此時就變成了運行態。進程有四個根本屬性:。多態性從誕生、運行,直至消滅。多個不同的進程可以包括一樣的程序。三種根本狀態它們之間可進展轉換。并發性并發執行的進程輪流占用處理器四、進程控制塊領會1、進程控制塊的根本容。通常進程控制塊包含四類信息:。標志信息含唯一的

13、進程名。說明信息有進程狀態、等待原因、進程程序存放位置和進程數據存放位置。現場信息包括通用、控制和程序狀態字存放器的容。管理信息存放程序優先數和隊列指針2、進程控制塊的作用進程控制塊ProcessControlBlock,簡稱PCB,是操作系統為進程分配的用于標志進程,記錄各進程執行情況的。進程控制塊是進程存在的標志,它記錄了進程從創立到消亡動態變化的狀況,進程隊列實際也是進程控制塊的。操作系統利用進程控制塊對進程進展控制和管理。進程控制塊的作用有:1記錄進程的有關信息,以便操作系統的進程調度程序對進程進展調度。這些信息包括標志信息、說明信息、現場信息和管理信息等;2標志進程的存在,進程控制塊

14、是進程存在的唯一標志五、進程隊列領會進程隊列的。在多道程序設計的系統中往往會同時創立多個進程.在單處理器的情況下,每次只能讓一個進程運行,其他的進程處于就緒狀態或等待狀態。為了便于管理,經常把處于一樣狀態的進程在一起,稱“進程隊列,由于進程控制塊能標志進程的存在和動態刻畫進程的特性,因此,進程隊列可以用進程控制塊的連接來形成。的方式有兩種:單向和雙向。進程根本隊列就緒隊列:由假設干就緒進程按一定次序起來的隊列。等待隊列:把等待資源或等待某些事件的進程排列的隊列3、進程的入隊和出隊。出隊和入隊:當發生的某個事件使一個進程的狀態發生變化時,這個進程就要退出所在的某個隊列而排入到另一個隊列中去。出隊

15、:一個進程從所在的隊列退出的操作稱為出隊入隊:一個進程排入到一個指定的隊列的操作稱為入隊。系統中負責進程入隊和出隊的工作稱為隊列管理。無論單向還是雙向,解決入,出隊問題,都是首先找到該隊列的隊首指針,沿鏈找出要入隊的進程以及它要插入的位置,或找出要出隊的進程,然后修改本進程指針入隊情況和相鄰進程的有關指針值即可。六、可再入程序識記1什么是可再入程序工作區,以保證程序以同樣方式為各用戶效勞。個能被多個用戶同時調用的程序稱做“可再入的程序。2可再入程序的性質。可再入程序必須是純代碼,在執行時自身不改變;一個可再入程序要求調用者提供編譯程序和操作系統程序通常都是“可再入程序,能同時被不同用戶調用而構

16、成不同的進程。七、中斷及中斷響應領會1、中斷的定義。一個進程占有處理器運行時,由于自身或者外界的原因出現了事件使運行被打斷,讓操作系統處理所出現的事件,到適當的時候再讓被打斷的進程繼續運行,這個過程稱為“中斷。2、中斷的類型。從中斷事件的性質出發,中斷可以分為兩大類:。強迫性中斷事件包括硬件故障中斷,程序性中斷,外部中斷和輸入輸出中斷等。自愿性中斷事件是由正在運行的進程執行一條訪管指令用以請求系統調用而引起的中斷,這種中斷也稱為“訪管中斷。自愿中斷的斷點是確定的,而強迫性中斷的斷點可能發生在任何位置。3、中斷的響應和處理。中斷響應硬件即中斷裝置操作處理器每執行一條指令后,硬件的中斷位置立即檢查

17、有無中斷事件發生,假設有中斷事件發生,那么暫停現行進程的執行,而讓操作系統的中斷處理程序占用處理器,這一過程稱為“中斷響應。中斷響應過程中,中斷裝置要做以下三項工作:是否有中斷事件發生判別自愿性中斷,只要檢查操作碼是否為訪管指令。判別強迫性中斷,那么要檢查中斷存放器容。假設為0,那么無中斷;假設非0,那么表示有中斷事件發生。假設有中斷發生,保護斷點信息每個程序都有一個程序狀態字PSW來反映本狀態的執行狀態,如根本狀態、中斷碼和中斷屏蔽位等容。處理器設有一個“程序狀態字存放器用來存放當前運行程序的PSW程序狀態字可分為當前PSW、舊PSW和新PSW.當出現中斷事件后,把被中斷進程的PSW保存為舊

18、PSW,即完成斷點信息保護。啟動操作系統的中斷處理程序工作中斷裝置通過“交換PSW過程完成此項任務,即把出現的中斷事件存放到當前PSW中斷碼位置,然后把該當前PSW保存為舊PSW,再把操作系統中斷處理程序的新PSW送到程序狀態字存放器中,成為當前的PSW.中斷處理軟件即操作系統操作操作系統的中斷處理程序對中斷事件進展處理時,大致要做三方面的工作:保護被中斷進程的現場信息把中斷時的通用存放器,控制存放器容及舊PSW保存到被中斷進程的進程控制塊中。分析中斷原因根據舊PSW的中斷碼可知發生該中斷的具體原因。處理發生的中斷事件一般只做一些簡單處理,在多數情況下把具體的處理交給其他程序模塊去做。八、中斷

19、優先級和中斷屏蔽識記1、中斷優先級是硬件設計時確定的。中斷裝置按預定的順序來響應同時出現的中斷事件,這個預定的順序稱為“中斷優先級。中斷優先級是按中斷事件的重要性和緊迫程度來確定的,是由硬件設計時固定下來的。一般情況下,優先級的上下順序依次為:硬件故障中斷、自愿中斷、程序性中斷,外部中斷和輸入輸出中斷2、中斷的嵌套處理3、中斷屏蔽的作用。中斷優先級只是規定了中斷裝置響應同時出現的中斷的次序,當中斷裝置響應了某個中斷后中斷處理程序在進展處理時,中斷裝置也可能去響應另一個中斷事件。因此會出現優先級低的中斷事件的處理打斷優先級高的中斷事件的處理,使得中斷事件的處理順序與響應順序不一致,而且會形成多重

20、嵌套處理,使多現場保護、程序返回等工作變的復雜。中應。自愿中斷是不能屏蔽的。斷屏蔽技術就是為了解決上述問題而提出的在一個中斷處理沒有完畢之前不響應其他中斷事件,或者只響應比當前級別高的中斷事件。于是,當中斷裝置檢查到有中斷事件后,便去查看PSW中中斷屏蔽標志,如果沒有屏蔽就響應該中斷;否那么,暫時不響應該中斷,待屏蔽標志消除后再響九、進程調度領會1、進程調度的職責。按選定的進程調度算法從就緒隊列中選擇一個進程,讓它占用處理器。2、選擇進程調度算法的幾個準那么:。提高處理器利用率。增大吞吐量。減少等待時間。縮短響應時間3、進程調度的常用算法:先來先效勞、優先數法、輪轉法、分級調度.先來先效勞調度

21、算法該算法按進程進入就緒隊列的先后次序選擇可以占用處理器的進程。優先數調度算法對每個進程確定一個優先數,該算法總是讓優先數最高的進程先使用處理器。對具有一樣優先數的進程,再采用先來先效勞的次序分配處理器。系統常以任務的緊迫性和系統效率等因素確定進程的優先數。進程的優先數可以固定的,也可隨進程執行過程動態變化。一個高優先數的進程占用處理器后,系統處理該進程時有兩種方法,一是“非搶占式,另一種是“可搶占式。前者是此進程占用處理器后一直運行到完畢,除非本身主動讓出處理器,后者那么是嚴格保證任何時刻總是讓優先數最高的進程在處理器上運行。時間片輪轉調度法把規定進程一次使用處理器的最長時間稱為“時間片。時

22、間片輪轉調度算法讓就緒進程按就緒的先后次序排成隊列,每次總選擇該隊列中第一個進程占用處理器,但規定只能使用一個叫小片,如該進程尚未完成,那么排入隊尾,等待下一個供它使用的土片。各個進程就這樣輪轉運行。時間片輪轉算法經常用于分時操作系統中。分級調度算法由系統設置多個就緒隊列,每個就緒隊列中的進程按時間片輪轉法占用處理器,這就是分級調度算法。4、進程的切換進程調度將從就緒隊列中另選一個進程占用處理器,使一個進程讓出處理器,由另一個進程占用處理器的過程稱“進程切換。假設有一個進程從運行態變成等待態,或完成工作后就撤消,那么必定會發生進程切換。假設一個進程從運行態或等待態變成就緒態,那么不一定發生進程

23、切換。本章考核知識點:1、重定位2、固定分區存儲管理3、可變分區存儲管理4、頁式存儲管理5、段式存儲管理6、虛擬存儲器自學要求:明確存儲管理的職能是對主存儲器中的用戶區域進展管理;理解在不同的管理方式下如何實現存儲保護、地址轉換、以及主存空間的分配和回收;比擬各種管理方式的特點;掌握虛擬存儲器的實現原理和方法。重點是:各種管理方式的特點;可變分區方式的主存分配算法以及移動技術;分頁式虛擬存儲管理的實現以及頁面調度算法;分段式虛擬存儲管理的實現。操作系統的存儲管理如同一個主,管著一個大莊園,當有農戶需要租用田地時,地主就給分配一塊地讓他種用戶區分配。等到地里長出了果實結果出來后,地主還得來收回這

24、塊地去配。為了管好這片田地,地主還要管好莊園的門,但凡要進去種地的,都得由地主根據他的需要讓他到位置確定實際的田地上去干活。把邏輯地址轉換成物理地址莊園里還有一些大家共同可以使用的地方,比方地主的花園,工具房等,大家可以進去,也可以使用,但是不許改變任何現有的東東,還有,每個農戶只能在自己的地里刨食吃,如果有人膽敢到別人地里或地主的花園里摘花偷食,可要留神他們養的狼狗跳出來哦。共享和保護當然,再大的地也是不夠多的,地主為了多賺些錢,當所有的地都租出去的時候,他想方法把有些種田人暫時不種的那塊地里的東東連地皮一起挖出來放到倉庫里先堆著。把地騰出來租給別人種這一招可夠絕的,不過地主說啦,這就是“虛

25、擬存儲。你說這個地主是好是壞?概述:本章討論的是主存儲器空間的管理。主存儲空間分成系統區和用戶區兩局部。存儲管理的功能包括:主存空間的分配和去配、實現地址轉換、主存空間的區享和保護和主存空間擴大。一、重定位領會1、區分邏輯地址與絕對地址。絕對地址:主存儲器以字節為編址單位,容量為n的主存儲器中,每個單元有唯一的編號,從0到n-1,這個唯一的編號就是主存儲器的物理地址.比方我們現在用的128MB存條中就有128X1024X1024=134217728字節,所以它的存絕對地址就是從0到134217727.注意啦,莊園的主就是這么給自己的地做上標記的。邏輯地址:在多道程序設計的系統中,操作系統為了方

26、便用戶,就允許每個用戶都認為自己的作業的程序和數據存放在地址是0開場的連續空間中。這樣用戶程序中使用的地址就是邏輯地址.種田人不管地主莊園有多少塊地,標了什么號,只要記住自己需要多少地,給自己種的地打上標記就是了。地主想,只要你們能干活,不需要知道了我的內幕了吧家財不可外揚哦。2、重定位地址轉換的方式為了保證作業的正確執行,必須根據分配給作業的主存區域對作業中指令和數據的存放進展重定位,這種把邏輯地址轉換成絕對地址的工作稱為“重定位或“地址轉換。重定位的方式有“靜態重定位和“動態重定位兩種。莊園主道:靜態重定位比擬簡單,想當初三來這兒,說要租一百塊地,青菜種在第1塊地,蘿卜種2塊地里,土豆得重

27、在第3塊地里然后得在第28塊地里養鴨,完了要把28塊地里的鴨糞拉到第49塊地的魚塘里喂魚我就說,行啦行啦,你進去,莊園的左邊101到200號那100塊地就分給你吧,以后你要找哪塊地養鴨養魚的,就得按我給你編的號來找。每個地址都已經加上100了,不會找錯吧。別說我沒講清楚哦。至于動態重定位,莊主笑道:這個我也能做到,這么實現的:四來租地時,我也不問他,直接把他帶到空閑的一片地方。派人記著這那片地的第一個地址。比方說是100號吧。四這個笨小子干著干著會叫起來說:“老板,現在我要到32號地里抓魚!旁邊人一聽,馬上告訴他“哎呀,你現在已經分了地啦,起始地塊是100號,那你就得到132號地去才對!就這樣

28、,四每一次要找地方時,都叫別人給他重新算一下。這樣他才不會找錯位置。這樣也有一個好處,就是如果有人出價更好,我可以讓他搬到別處去干活,反正都是叫別人給他重新算位置,所以他就不用記住搬地方后的物理地址啦。1靜態重定位在裝入一個作業時,把作業中的指令地址和數據地址全部轉換成絕對地址。這種轉換工作是在作業開場前集中完成的,在作業執行過程中無需再進展地址轉換。所以稱為“靜態重定位。2動態重定位在裝入一個作業時,不進展地址轉換,而是直接把作業裝到分配的主區域中。在作業執行過程中,每當執行一條指令時都由硬件的地址轉換機構轉換成絕對地址。這種方式的地址轉換是在作業執行時動態完成的,所以稱為動態重定位。動態重

29、定位由軟件操作系統和硬件地址轉換機構相互配合來實現。動態重定位的系統支持“程序浮動,而靜態重定位那么不能。二、固定分區存儲管理領會分區存儲管理是把存儲器中的用戶區作為一個連續區或分成假設干連續區進展管理。早先使用一個分區的存儲管理,后開展成多分區的存儲管理。多個分區的管理可采用固定分區方式和可變分區方式。1、固定分區存儲管理的原理固定分區的意思就是指主存空間劃分成假設干連續區后,這些分區的大小和個數就固定不變。固定分區管理利用一“主存分配表說明各分區的情況。裝入和完畢作業均通過這個分區表來記錄分區使用的變化情況。2、如何實現存儲保護固定分區管理可采用靜態重定位的方式裝入作業。裝入程序把作業中的

30、邏輯地址轉換為絕對地址。并檢查絕對地址是否在指定裝入的分區,如果是,就裝入這個作業。否那么就不能裝入。如果裝入主存分區的作業占用處理器時注意,是運行時,進程調度程序不是裝入程序了必須把作業所在分區的上下限地址存入“下限存放器和“上限存放器中,這樣可以在指令執行中判斷其所用到的絕對地址是否越界,到達存儲保護的目的。3、怎樣提高主存空間的利用率這里有幾種方法:1分區按大小順序排列,這樣可以使作業總是先使用滿足要求的最小分區。2根據經常出現的作業大小和頻率劃分分區。3按作業的對主存空間的需求量排成多個隊列,規定隊列與分區的對應關系。也就是說多大的作業只能放在多大的分區里,就算有更大的分區空著,也不許

31、他進入。三、可變分區的管理領會可變就是指分區的大小和位置不是固定的,而是根據作業要求的主存量來分配分區的大小。1、主存的分配和去配回收在系統初始化時,主存除了操作系統所占局部外,整個用戶區是一個大的空閑區,可以按作業需要的空間大小順序分配空閑區直到不夠時為止。當作業完畢時,它的占用分區被收回。這個空閑區又可以根據新作業的大小重新用于分配,所以主存中的已占分區和空閑區的數目和大小都是在變化的。可以用兩表“已分配區表和“空閑區表來記錄和管理。2、常用的分配算法最先適應分配算法:簡單地說,就是在分區表中順序查找,找到夠大的空閑區就分配。但是這樣的分配算法可能形成許多不連續的空閑區,造成許多“碎片,使

32、主存空間利用率降低。最優適應分配算法:這種算法總是挑選一個能滿足作業要求的最小空閑區。但是這種算法可能形成一些極小的空閑區,以致無法使用,這也會影響主存利用率。最壞適應分配算法:這種算法和上面的正好相反,它總是挑一個最大的空閑區分給作業使用,使剩下的空間不至于太小。3、地址轉換與存儲保護采用可變分區方式管理時,一般均采用動態重定位方式裝入作業。也就是每讀一條指令,都要變換一次地址。變換要靠硬件支持,主要是兩個存放器:基址存放器和限長存放器,限長存放器存放作業所占分區的長度,基址存放器那么存放作業所占分區的起始地址,這兩個值確定了一個分區的位置和大小。轉換時根據邏輯地址與限長值比擬,如果不有超過

33、這個值,表示訪問地址合法,再加上基址存放器中的值就得到了絕對地址了,否那么形成“地址越界中斷。到達存儲保護的目的。對于共享程序,那么硬件提供兩組限長存放器和基址存放器。訪問時對訪問區享區和作業區的地址分別進展轉換。4、移動技術的應用移動技術要“移動的東東就是主存空間中的作業。把某個作業移到另一處主存空間去在磁盤整理中我們應用的也是類似的移動技術,這樣的最大好處就是可以合并一些空閑區。但是移動技術的應用也要注意以下問題。移動會增加系統開銷。所以要盡量減少移動。移動是有條件的,如果作業在執行過程中正等待與外圍設備傳輸信息,就不能移動。因此在移動時首先要判定該作業是否與外設交換信息。四、頁式存儲管理

34、領會1、如何分頁和分塊頁式存儲管理中有兩個名詞:頁和“塊,其中的塊是針對硬件來說的,就是把存儲器分成假設干相等大小的區,每個區就稱為一個塊。對應的,在程序中,邏輯地址進展“分頁,其大小和每個塊相一致。事實上,頁面的大小是由塊的大小自然決定的。對于程序來說,其邏輯地址還是和原來一樣采用連續的地址。只是按照塊的位數取其前面數位做為頁號.分配空間時,根據作業長度可以確定它的頁面數,根據這個頁面數在主存中分配相應的塊數,只要是空閑塊就可以放入,即使不是相鄰的。并把分配情況記在“頁表中,根據頁表可以找到相對應的頁號與塊號,就得出絕對地址了。2、采用頁式管理,使主存空間充分利用,頁不必為了得到連續空間而進

35、展移動。可以提高系統效率。3、頁表的構造與作用每個被裝入主存的作業都有一頁表,指出該作業邏輯地址中的頁號與所占用的主存塊號之間的對應關系。頁表的長度由作頁擁有的頁面數決定,行號對應為頁號,行中記錄的是主存中的塊號。頁表是硬件進展地址轉換的依據,每執行一條指令時按邏輯地址中的頁號查找頁表并轉換成絕對地址。在多道程序設計系統中,進入主存的每個作業都有一頁表,由一個硬件“頁表控制存放器來記錄每個作業的頁表所在位置和長度以便作業轉換時同時轉換頁表。4、快表的構造與作用快表就是頁表的一局部克隆,每行中有頁號及其對應的塊號,整個快表存放在一個小容量的高速緩存中,訪問時快表和存同時進展查找,因為快表速度很快

36、,而常用的頁都登記在快表中,因此可以大大加快執行速度。5、采用頁式管理的地址轉換過程為什么不直接用塊分配表來記錄而要用位示圖呢,因為主存塊很多,這樣可以節省空間,提高效率。位示圖就是用一個位0或1來表示一個塊的使用狀態,一個字32位,可以表示32塊。按順序排列,只需一小段存就可以記錄主存量的塊狀態6、利用位示圖實現頁式存儲空間的分配和回收頁式存儲管理把主存空間分成大小固定的許多塊,在裝業作業時,如何知道主存中哪些塊已使用,哪些還未用,可以用位示圖來表示。塊號=字號X字長+位號字號=i/字長即塊號i除以字長取整位號=imod字長即塊號i除以字長取余。五、段式存儲管理領會1、段式存儲中段的劃分段式

37、管理是根據人們對程序中需要分段編制的要求出發而提供的。它提供應用戶編程時使用的邏輯地址由“段號和“段地址兩局部組成,其形式和頁式管理一樣。但是實際上是不同的:頁式存儲管理提供連續邏輯地址由系統自動分頁,段式存儲管理中的作業分段是由用戶決定的,每段獨立編程,因此段間的邏輯地址是不連續的。2、段式存儲空間的分配這種分配方法和可變分區管理方式的分配方法一樣,所不同的是:可變分區管理方式中是為每個作業分一個區,而段式管理是為一個作業中的每個段分一個連續的空間。段式管理更細。3、段表的構造與作用段表由段號、本段限長和起始地址三局部組成,由于每一行記錄的行號可以對應程序的段號,因此段號實際上被省略,不占存

38、儲空間。與其他管理方式一樣,段表記錄的信息用于地址轉換和存儲保護。段表的表目起到了基址/限長存放器的作用。4、段式存儲管理的地址轉換這個轉換過程如同可變分區方式的地址轉換,但是由段表的表目替代了基址/限長存放器。絕對地址=根據段號找到段表中的起始地址+段地址如果段地址超過限長那么產生“地址越界程序性中斷事件到達存儲保護多道程序設計系統中,每個進入主存的作業都建立了段表,因此還有一個硬件“段表控制存放器來記錄每個作業的段表在主存中的位置和長度。六、虛擬存儲器領會1、什么是虛擬存儲器虛擬存儲器是為“擴大主存容量而采用的一種設計技巧,它利用作業在只裝入局部信息時就可以執行的特性和程序執行中表現出來的

39、局部性特性,借助于大容量的輔助存儲器實現小主存空間容納大邏輯地址空間的作業。虛擬存儲器的容量由計算機的地址構造總線位數決定。2、虛擬存儲器的實現原理它的工作原理如下:首先把作業信息保存在磁盤上,當作業請求裝入時,只將其中一局部先裝入主存,作業執行中假設要訪問的信息不在主存中,那么再設法將這些信息裝入主存。3、分頁式虛擬存儲器的實現頁式虛擬存儲管理是在頁式存儲管理的根底上實現的。首先把作業信息作為副本存放在磁盤上,作業執行時,把作業信息的局部頁面裝入主存儲器,作業執行時假設所訪問的頁面已經在主存中,那么進展地址轉換,得到絕對地址,否那么產生“缺頁中斷由操作系統把當前所需的頁面裝入主存。4、常用的

40、頁面調度算法:FIFO、LRU、LFU當主頁中無空閑塊時,為了裝入一個頁面,就必須按某種算法將主存中某個頁調出,調入所需裝入的頁面。這就是頁面調度。常用的算法有:先進先出調度算法FIFO、最近最少使用調度算法LRU和最近最不常用調度算法LFU。特別要注意掌握的就是LRU的算法,如何進展調度。5、缺頁中斷率如果作頁執行中訪問頁面的總次數為A,其中有F次訪問的頁面尚未裝入主存,那么有F次缺頁中斷,f=F/A,這里的f就稱為缺頁中斷率。影響缺頁中斷的因素有:分配給作業的主存塊數一一塊數nTfJ頁面的大小頁面大小TfJ程序編制方法一一局部化程度TfJ頁面調度算法6、段式虛擬存儲器的實現段式虛擬存儲管理

41、以段式存儲管理為根底,在磁盤上保存作業的各個分段信息,作業執行時把需要執行的一段或幾段裝入主存。在實際使用中,也要進展查表和地址轉換以及“缺段中斷和調度包括調出、裝入、移動等工作。本章的考核知識點:1、文件和文件名;2、文件的存儲介質;3、文件的存取方法;4、文件目錄;5、文件的邏輯構造;6、文件的物理構造;7、記錄的組成與分解;8、存儲空間的分配與回收;9、文件操作;10、文件的保護與。本章自學要求:文件管理必須對用戶按名存取功能,要求考生理解為實現按名存取文件管理應該做哪些工作;文件管理怎樣管理用戶信息的存儲和檢索、怎樣實現文件的保護和;文件操作的作用以及用戶如何使用文件操作。重點是:邏輯

42、文件與物理文件間的轉換;文件目錄操作的作用及使用。一、文件和文件名識記文件和文件名:在計算機系統中,把邏輯上具有完整意義的信息集合稱為“文件,每個文件都要用一個名字作標識,稱為“文件名。文件可以按各種方法進展分類:按用途系統文件、庫文件、用戶文件按保護級別可執行文件、只讀文件、讀寫文件1按信息流向輸入文件、輸出文件、輸入輸出文件1按存放時限臨時文件、永久文件、檔案文件1按設備類型磁盤文件、磁帶文件、卡片文件、打印文件一|1文件組織構造邏輯文件、物理文件順序文件、文件、索引文件二、文件存儲介質領會1、存儲介質不等于存儲設備,它是指用來記錄信息的磁帶、硬磁盤組、軟磁盤片、卡片等。使用它們要通過相應

43、的存儲設備。2、存儲介質的物理單位定義為“卷。文件與卷的關系存在卷中可以是一對一也可以是一對多或多對一。3、存儲介質上連續信息所組成的一個區域稱為“塊物理記錄塊是存儲設備與主存之間進展信息交換的物理單位。4、磁盤的構造:磁盤格式化時盤面存儲空間劃分扇區,每個扇區中各磁道都有一樣長度的連續信息區,每個區就是磁盤上的塊.三、文件的存取方式領會文件的存取方式有順序存取和隨機存取兩種。磁帶上的文件只能順序存取,磁盤上的文件既可采用順序方式也可用隨機方式存取。四、文件目錄簡單應用1、文件目錄的主要容和作用:文件目錄由假設干目錄項組成,每個目錄項記錄一個文件的有關信息。包括:有關文件存取控制信息.例如用戶

44、名、文件名、文件類型、文件屬性可讀寫、只讀、只執行等有關文件構造的信息.例如文件的邏輯構造、物理構造、記錄個數和在存儲介質上的位置等。有關文件管理的信息.例如文件建立的日期、修改日期、保存期限等。文件目錄的作用是用于檢索文件。2、目錄構造:包括一級目錄構造、二級目錄構造和樹形多級目錄構造。一級目錄構造要求所有的文件名均不一樣,一般只適用于微機的單用戶系統。二級目錄構造那么增加一級主文件目錄,此目錄是為用戶建立的獨立文件目錄,用戶訪問文件時先要找到用戶自己的目錄再查找該目錄下的指定文件。實際上,二級目錄構造中,文件系統把用戶名和文件名合起來作為文件標識。樹形目錄允許用戶在自己的文件中再建立子目錄

45、.從根目錄到文件之間所有各級子目錄名和該文件名的順序組合稱為文件的“路徑名絕對路徑:是從根目錄到指定文件的路徑。如MSDOS下從C盤到某一文件的路徑:C:/first/file.exp相對路徑:是從當前目錄到指定文件的路徑。如上例,當前目錄為22時,訪問file.exp的相對路徑是:33/file.exp,訪問根目錄下的文件路徑是:/mand.樹形目錄的優點:們解決了重名問題。2有利于文件分類3提高檢索文件的速度4能進展存取權限的控制。關于本節的容可以在MSDOS或UNIX操作系統中進展練習,以理解目錄構造。可用的命令有:dir、tree、md、cd、rd、del等。五、文件的邏輯構造領會前面

46、講的是目錄,現在講的是文件。文件的構造是指文件的構造方式。什么是文件的邏輯構造:由用戶構造的文件稱為文件的邏輯構造。如一篇文檔、一個數據庫記錄文件等,在用戶看來是一些文字和數字或多媒體信息的有機組合。邏輯文件有兩種形式:流式文件和記錄式文件流式文件是指用戶對文件信息不再劃分的可獨立的單位,如我們的word文件,圖片文件等。整個文件是以順序的一串信息組成。記錄式文件:是指用戶對文件信息按邏輯上獨立的含義再劃分信息單位,每個單位為一個邏輯記錄。每個記錄可以獨立存取。這個在數據庫中我們學得比擬多,容易理解。六、文件的物理構造領會1、什么是文件的物理構造:由文件系統在存儲介質上的文件構造方式稱為文件的

47、物理構造.不管用戶看來是什么文件,在存儲介質上存儲時,按何種構造方式記錄呢,因為介質上的存儲單位是物理塊,那么這些物理快是順序存放,還是鏈式構造,或者索引構造,都要由文件系統構造來實現。邏輯文件在磁盤上的組織方式:1順序構造:顧名思義,順序構造就是指,把邏輯文件的記錄容按其本身的順序邏輯記錄的順序在磁盤上也按序存放在連續的塊中。讀取時也從第一個記錄開場按順序進展。在文件目錄中指出文件名,存放的起始塊號和占用塊數。順序文件的最大優點是存取速度快可以連續訪問。而問題主要是存儲空間利用率不高、輸出文件時難以估計需要多少磁盤塊、影響文件擴展。2構造:如果邏輯文件中的各個邏輯記錄任意存放到一些磁盤塊中,再用指針把各個塊按邏輯記錄的順序起來,在文件目錄中只記錄第一塊的地址和最后一塊的地址,那么這種文件組織方式就是構造。構造解決了順序構造中的所有問題,所有空閑塊都可以被利用,在順序讀取時效率較高但需要隨機存取時效率低下因為要從第一個記錄開場讀取查找。此外,對于構造,也有一些問題要注意:由于塊中要存放指針信息,因此一局部空間被占用;讀出信息時要把指針信息別離出來;還要防止指針喪失或破壞造成的混亂,所以又要增加一些管理的信息。總之鏈式構造會使用于存放文件信息的空間減少。3索引構造:索引構造是實現非連續存儲的另一種方法,索引構造為

溫馨提示

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

評論

0/150

提交評論