1. 程式人生 > >【2017上半年自考總結】——書要看三遍之《作業系統概論》

【2017上半年自考總結】——書要看三遍之《作業系統概論》

前言

   這次自考,小編報考了《作業系統概論》和《運籌學》。這次自考給小編的感觸是學習一定要走心,一定要書看三遍,一定要講究方法。 

計算機系統概論

    在學習作業系統之前,一定要先了解計算機系統的層次。計算機系統的最內層是硬體,最外層的人通過計算機軟體來管理和使用計算機硬體資源。我們要學習的就是管理硬體資源的作業系統和作業系統是怎麼管理硬體資源的。

  如圖:

                      .

作業系統的發展

在開始學習操作之前,是一定要對作業系統的發展歷史做一定的瞭解,不然學起來就有些模稜兩可,甚至是很多東西不知所以然。在20世紀五十年代裡General Motors研究室裡實現了第一個作業系統——單道批處理系統,六十年代設計了多道批處理系統。在六十年代裡也設計了分時作業系統和實時作業系統。在七十年代裡在批處理系統的基礎上設計出了微機作業系統,在分時作業系統的基礎上設計了網路作業系統。到80年代,依然是根據分時作業系統而設計了分散式作業系統,與此同個年代,根據實時作業系統設計了嵌入式作業系統。當今時代流行的Windows、UNIX和Linux作業系統是在網路作業系統和分佈是作業系統的基礎上設計出來的。

              

處理器管理

   前面小編已經提到作業系統就是對計算機硬體資源的管理,大致是處理器管理,儲存管理,檔案管理,裝置管理。從而起到了管理計算機資源、控制程式執行、改善人機介面和為應用軟體提供支撐的作用。

   在計算機硬體資源中,中央處理器(CPU)處於核心作用,它控制著儲存器、檔案和裝置。它分為系統工作區和使用者程式工作區,這個時候它就會根據兩種指令操作:特權指令和非特權指令。在控制呼叫這些資源的時候,它有這自己的工作狀態:管態和目態。在目態下只允許執行非特權指令,在管態下可執行包括特權指令在內的一切指令。

   為了提高計算機資源的使用效率,說明程式的執行狀態,這個時候需要引入程序的概念。CPU中有兩級排程,作業排程:在輸入井的後備作業中調入主儲存器。程序排程:在主儲存器中將程序呼叫CPU執行。這兩個作業需要在有且尚未分配的資源能滿足作業執行要求才能進入主儲存器和CPU。

   在CPU處理程序中,會由於一些硬體、外部、輸入輸出和訪管中斷事件出現中斷,這個時候也由CPU來進行中斷處理。

   為了提高處理器和外圍裝置的使用效率,設計了多道程式設計,從而導致多道程式並行執行,多道程序併發執行。在程序的併發執行過程中,會出現互斥與同步問題。PV操作、通訊和解決死鎖可以解決同步和互斥問題。

    

儲存管理

   這裡的儲存管理指的是主儲存器的管理,而不是磁碟儲存。在儲存管理中很重要的一個概念是重定位。在作業執行的過程中,都是先從使用者編制的程式和資料資訊排程主儲存器中,與使用者程式對於的地址為邏輯地址,主儲存器中的地址為絕對地址,這個時候就會有把邏輯地址轉換成絕對地址的過程,而這個過程也叫重定位。重定位分為靜態重定位和動態重定位。靜態重定位是指在裝入作業時,就一次性把作業的邏輯地址轉換成絕對地址,在作業執行時不用再次轉換。靜態重定位不需要藉助硬體來轉換,軟體就能獨立完成。動態重定位則是先裝入作業,然後藉助硬體的基址暫存器來實現邏輯地址和絕對地址的轉換。

   儲存管理中有單使用者連續儲存管理、固定分割槽儲存管理、可變分割槽儲存管理和頁式虛擬儲存管理。單使用者連續儲存管理和固定分割槽儲存管理用的是靜態重定位實現地址的轉換。節省了硬體成本的付出,但是使得系統資源利用率不高。可變分割槽和頁式虛擬儲存管理用的是動態重定位。可變分割槽通過移動技術來達到集中分散的空閒區和便於作業動態擴充主存的目的。但移動是有條件的,並且增加了系統的開銷。虛擬頁式儲存管理運用了虛擬儲存技術來實現在較小的主存空間裡執行較大的作業。在頁式儲存管理裡,為了避免顛簸,採用了先進先出排程演算法(FIFO)、最近最久未使用排程演算法(LRU)和最近最不經常使用演算法(LFU)。

               

檔案管理

    對於資訊的管理,作業系統設計了檔案管理(檔案系統)。檔案系統實現的功能是從邏輯檔案到物理檔案之間的轉換,有效地分配儲存空間,建立檔案目錄、提供合適的存取方式以適應各種不同的應用,確保檔案的安全性,並提供一組檔案操作。

                

裝置管理

    當檔案系統要把邏輯檔案轉換成物理檔案時,作業系統就要啟動和控制外圍裝置。外圍裝置分為獨佔裝置和可共享裝置,當程序呼叫這些裝置的時候,裝置管理就需要實現對外圍裝置的分配和回收、外圍裝置的啟動、實現對磁碟的排程以及通過通道處理外圍裝置的中斷事件。由於CPU的處理速度快於外圍裝置的傳輸速度,導致處理器於外圍裝置之間的工作速度不匹配,這個時候就要用到緩衝技術來解決這個矛盾。緩衝技術有:單緩衝技術、雙緩衝技術和緩衝池技術。獨佔裝置的使用不利於提高裝置的利用率,為了解決這個問題,需要通過斯普林技術實現虛擬裝置。

                 

總結

    通過這次自考,對作業系統有了進一步的認識,能設計作業系統的人真的很厲害,把作業系統設計得那麼人性化,不僅把問題想得全面,而且還全面地解決了問題。所以好好學習吧!