計算機的夢工廠 學習作業系統

2021-04-17 12:04:00 字數 1241 閱讀 1570

話說計算機在上世紀90年代開始逐漸走入尋常百姓家(主要指中國)。微軟在這個個人pc蓬勃發展的時代發家致富,windows功不可沒。正是windows作為一種作業系統,搭起了機器和人之間互動的橋梁。

我們所用的計算機無論哪家那姓,貴族的還是野種的,其硬體資源主要包括處理器、儲存器、輸入輸出裝置、匯流排等等。作業系統在計算裝置與人互動的過程中,扮演了了兩個角色。第一,作為計算機系統的管理者出現,排程各種硬體資源的使用協調各個硬體部分的工作。這裡面關鍵的在於,確保各部分的功能有序執行,每個硬體資源按合理的順序輪轉,避免任務因為得不到硬體資源而不能執行。第二,作為計算機延伸職能的行駛者,溝通計算機計算資源和外界的輸入輸出的互動。這兩個角色就是我們認識作業系統的出發點。基於這兩個出發點,我們可以樹立一種指導思想,以乙個工廠的觀點來認識作業系統。

既然把作業系統看成是乙個巨大的工廠,工廠裡面會有很多不同的生產任務。每乙個生產任務都是乙個程序。每乙個生產任務的進行都有自己固定的場地,也就是每個程序的位址空間。這塊場地裡面還儲存著三項記錄,每個生產任務所需要的原料——程序資料;還有每項任務的執行流程——程序的**;每項任務執行的情況——程序的堆疊。這個生產任務的執行,需要用到工廠的裝置,這些裝置主要指cpu等等,在工廠裡面都是稀缺資源,不能同時滿足每個生產任務的需要。非常重要的一點是,任何單cpu系統乙個時刻只能執行一條指令,就是只能讓乙個生產任務進行。所以在生產任務沒有獲得使用cpu的許可的時候,它就只是乙個靜態的概念。

當然生產任務所需要的工廠裝置可能不止cpu一項,可能還會有其它的資源裝置。當這個資源不能滿足所有需要的時候,它就是臨界的,工廠需要一套有效率的機制來分配它們的使用。而這個時候,比如說有兩個任務a,b;需要同時占用資源a,b才能執行。如果a占有b,b占有了a,形成a等a,b等b的局面,就誰都動不了。這就是傳說中的死鎖,作業系統這個工廠應該避免這種情況的發生。

再回到場地這個概念,場地在作業系統的工廠裡面就相當於儲存空間。場地按照地理位置和裝修的不同分為很多等級,這也就是計算機裡面儲存裝置分為暫存器,快取記憶體,主存,磁碟,磁帶等等區域。明確一點,生產任務在執行的時候和待命的時候,所處的場地是不同的。

工廠與外界的互動對應於作業系統的輸入/輸出功能。每個進出工廠的出入口,都會有自己的辦公室和倉庫,任何物資的出入都不會直接在牆外和廠區的核心區往返。計算機的輸入輸出的緩衝機制是先放到各個出入口的倉庫。然後由出入口辦公室(輸入輸出裝置的控制器)和相關生產任務通訊,決定物資的下一步的去向。

還有就是作業系統的檔案系統,其實相當於工廠的總倉庫。檔案以目錄結構儲存,在此基礎上支援,刪除,新建,查詢等操作。這個就沒有必要聯想成倉庫的操作再講一遍了。     

計算機作業系統

為什麼要有作業系統 計算機系統是乙個複雜的系統,如果每位程式設計師在程式設計時都必須掌握計算機系統的所有細節,就會嚴重影響程式設計師的開發效率 作業系統可以對計算機硬體加以管理和優化使用,為使用者程式提供更好的執行環境。作業系統以及其位置 作業系統組成 作業系統功能 應用程式直接與作業系統及其抽象打...

計算機作業系統

實驗一 熟悉linux作業系統 程序觀測 實驗目的 1 了解在linux作業系統中程序的特點和表現形式 2 掌握linux檢視程序的方式與方法 3 在乙個程序中建立另乙個程序的方法 4 掌握父程序和子程序的關係和fork的用法 實驗內容 1 編寫乙個簡單的程式,使用ps或top工具觀察該程序的的id...

計算機作業系統

1 單選題 作業系統的主要功能是管理計算機系統中的 選項 a 程式和資料 b 資源 c 作業 d 程序 答案 資源 2 單選題 關於多道批處理作業系統,以下說法錯誤的是 選項 a 可提高系統資源的利用率 b 可提高計算機系統的工作效率 c 可提高系統吞吐量 d 在作業執行時使用者可以直接干預作業的執...