碳氧比能譜測井

[拼音]:caozuo xitong

[英文]:operating system

為了合理方便地利用計算機系統而對其資源進行管理的軟體。計算機系統的資源有四類:儲存、處理器、外圍裝置和資訊。一個程式只有通過作業系統獲得了所需的資源後才能執行。例如,程式在執行前必須獲得儲存資源才能裝入,其執行要靠處理器,還需要外圍裝置來輸入和輸出資料,在執行中還可能呼叫存於計算機系統程式庫中的程式。計算機系統的資源是由作業系統來管理和排程的,所以作業系統也可看作對程式執行進行控制的軟體。作業系統還向使用者提供控制計算機的各種命令,使用者輸入的命令由作業系統去執行,所以作業系統又可以看作計算機和使用者之間的軟體,使用者通過作業系統使用計算機。計算機配置作業系統後不僅可以提高效率而且使用更為方便。作業系統是計算機系統中不可缺少的一種軟體。

50年代的計算機還沒有配置作業系統。60年代初期出現的管理程式是初級階段的作業系統。它只具有控制輸入-輸出裝置、執行操作員命令等簡單的功能。60年代中期出現的多道程式設計作業系統和分時作業系統,是作業系統發展的第二階段。作業系統的重要性在這一階段已充分顯示出來。作業系統的功能已經比較強,規模也比較大。為了設計出效率高、正確性好的作業系統,從60年代中期起開始進行作業系統結構和理論的研究。60年代末至70年代初,作業系統發展到成熟的第三階段。作業系統的功能已比較完善,可靠性也比較高。特別是已開始使用高階程式設計語言來編寫作業系統。70年代中期以來,作業系統有了進一步的發展,出現了網路作業系統和分散式作業系統等。此外,作業系統部分固化,即部分功能由硬體直接實現。

分類

作業系統可以分為 6種類型。

(1)單使用者作業系統:在這種作業系統的控制下,計算機系統序列地執行使用者程式,即執行完一個使用者程式後才接受另一個使用者程式。一些微型計算機所配置的作業系統就屬這種型別。

(2)批處理作業系統:在這種作業系統的控制下,計算機系統可以同時接受多個使用者程式,一批批地處理。批處理作業系統一般都提供多道程式設計功能(見併發程式設計),允許多個使用者程式同時裝入記憶體執行。

(3)分時作業系統:或稱多使用者作業系統,在這種作業系統的控制下,多個使用者可以通過各自的終端同時使用一臺計算機。

(4)實時作業系統:為實時系統配置的作業系統。在這種作業系統的控制下,計算機系統能及時處理資料,給出響應。設計實時作業系統時,首先要考慮系統的實時性和可靠性,其次才是效率。

(5)網路作業系統:為計算機網路所配置的作業系統。網路中的各臺計算機配置有各自的作業系統。網路作業系統把它們有機地聯合起來。網路作業系統的主要功能,是提供各臺計算機間的通訊和實現網路資源的共享。

(6)分散式作業系統:為分佈計算機系統所配置的作業系統。這種作業系統在資源管理、程序同步和通訊等方面都同其他型別的作業系統有較大的區別。

功能

作業系統主要提供儲存管理、處理器管理、裝置管理、資訊管理和作業管理等功能。

儲存管理

分配和回收儲存單元。一道程式在啟動執行前必須裝入儲存器內。作業系統根據程式的大小分配它需要的儲存單元,然後才將它裝入。程式在執行中可能還要申請儲存單元:程式執行完畢後,要將所佔用的全部儲存單元歸還給系統。儲存單元的分配和回收工作,都由作業系統進行。對於具有多道程式設計功能的作業系統,必須採取有效的策略,分配各使用者程式所需的儲存資源以提高系統效率。在採用負式儲存或虛擬儲存的系統中,作業系統還要配合硬體做頁面排程工作,即將所需的頁面調入儲存器,將暫時不用的頁面調出以騰出空間。頁面排程工作完成的好壞,對系統效率有很大的影響。

處理器管理

對處理器的使用進行排程。在具有多道程式設計功能的作業系統中,處理器在作業系統控制下交替地為各道程式所佔用。作業系統根據一定的排程演算法分配處理器。常用的處理器排程(又稱低階排程)演算法有優先數法和時間片法等。採用優先數法時,每一道程式給定一個優先數。每次分配處理器時,優先數大者優先分配。只有在優先數較大的那些程式因為等待外圍裝置傳輸或其他原因暫時不能佔用處理器執行時,優先數較小的程式才有可能佔用處理器。批處理作業系統常採用這種排程演算法。採用時間片法時,每道程式分得一個時間片,例如10納秒。當一道程式連續佔用處理器的時間超過一個時間片時,就強行把處理器分配給另一道程式。分時作業系統常採用這種排程演算法,以保證各終端的使用者有均等的佔用處理器執行的機會。

裝置管理

控制外圍裝置操作,分配和回收外圍裝置資源。當一道程式在執行中要使用外圍裝置時,它向作業系統提出使用要求。作業系統根據要求,啟動外圍裝置並控制其操作。

從分配的角度看,外圍裝置有兩類:共享裝置和獨佔裝置。例如,磁碟等裝置可以為多個程式所共享;而行式印表機等裝置一次只能分配給一道程式。對於共享裝置的分配,必須有一定的策略來決定誰可佔用,佔用多少。對於獨佔裝置,可以按一定的策略分配,也可以設定虛擬裝置而不分配。例如,將行式印表機設定成虛擬裝置後,列印輸出操作就由作業系統轉換成寫入磁碟操作,即將要列印的資訊存入盤內,到程式執行完畢或適當的時候,才由作業系統控制而從行式印表機上輸出。這就是所謂的假離線輸入輸出或斯普林方法。採用這種方法可以增大系統的吞吐率,提高系統的效率。

資訊管理

提供存取資訊的各種服務。主要是從一個指定文卷讀出資訊,修改指定文卷,建立和廢除一個文卷等。作業系統提供文卷服務的這一部分稱為文卷管理系統。使用者通過文卷系統使用文卷時,毋需考慮資訊存放的物理位置和資訊如何儲存在物理介質上,使用者只需知道文卷的名字和資訊的邏輯結構。此外,使用者還可以規定文卷的使用許可權,如規定哪些使用者擁有閱讀某文卷的權利,誰擁有修改的權利,誰擁有廢除的權利等。因此,在文卷管理系統管理下,各種文卷不僅使用方便,而且安全可靠。

作業管理

排程和控制作業的執行。作業是使用者要求計算機系統處理的任務。例如,要求計算機系統執行一個或多個程式就是一個作業。使用者在輸入作業前,可用系統提供的作業控制語言(JCL)編寫作業說明書,然後將它輸入計算機。作業說明書指明系統如何控制作業的執行。例如,作業說明書可指出,將指定的源程式用某種編譯程式編譯並隨後執行。使用者也可以從終端打入各種命令,告訴作業系統如何控制作業的執行。作業系統也把執行中的情況通過終端向用戶報告。所以,作業系統是按使用者給出的作業說明書或使用者打入的命令來控制作業的執行。由於計算機系統常常同時接受多個作業,作業系統必須根據一定的策略來排程作業的執行。

研究課題

關於作業系統的研究,主要有以下幾個方面。

(1)作業系統結構:研究構造作業系統的各種方法,如模組結構、層次結構等。

(2)同步機制:研究程序同步的各種機制,如PV操作、管程、路徑表示式和事件計數等。由於分散式系統的同步機制與單機作業系統的同步機制有較大區別,在分散式系統出現後又進行了分散式同步演算法的研究,提出了時間籤等同步演算法。

(3)通訊機制:研究程序間通訊的機制,如傳送、接收原語,輸入、輸出命令和遠端過程呼叫等。

(4)死鎖的預防和檢測:研究防止死鎖發生或及早發現死鎖的各種方法。

(5)效能測試和分析:研究測試和分析作業系統效能的各種方法。

(6)系統的安全性:研究對各種資訊所採取的保護措施,使得任何使用者不會有意或無意地干擾和破壞其他使用者或系統的資訊。

(7)系統的容錯性:研究各種容錯措施,使得發生故障時系統仍可繼續工作。

(8)排程演算法:研究分配資源的各種策略和排程演算法,如處理器排程演算法和作業排程演算法等。

(9)功能固化:研究用韌體實現作業系統的各種功能,如同步機制固化等。

(10)人-機通訊:研究人-機通訊方式,作業系統提供的命令等,使使用者使用計算機更加方便。

參考書目

S.E.Madnick, J. J. Donovan, OperatingSystems,McGraw-Hill,New York,1974.

參考文章

什麼是分散式多機作業系統?它有什麼優缺點?自動化什麼是獨立式多機作業系統?它有什麼優缺點?自動化什麼是主從式多機作業系統?它有什麼優缺點?自動化電腦有那些主要的作業系統軟體?常識拋物線轉向作業系統股票基金逆勢作業系統之CDP指標股票基金CDP逆勢操作指標/逆勢作業系統股票基金什麼是雲作業系統?雲技術