處于執行中的程式被稱作程序。
程序需要一定的資源(包括cpu時間、記憶體、檔案、I/O裝置)來完成任務。這些資源可以在程序建立時配置設定給程序,也可以在執行時配置設定給程序。除了在建立時得到各種實體和邏輯資源外,程序還可以接受傳輸過來的各種初始化資料。
程式本身并不是程序,程式是被動的實體。而程序是活動的實體。程序是系統工作的單元。
單線程程序具有一個程式計數器來明确下一個執行的指令,直到程序終止。
在任何時候,最多隻有一個指令代表程序被執行。是以,盡管兩個程序可能和同一個程式相關聯,然而這兩個程序都有各自的執行順序。
多線程程序具有多個程式計數器,每一個指向下一個給定線程要執行的指令。
程序是系統工作的單元。系統由多個程序組成,其中一些是作業系統程序(執行系統代碼),其餘的是使用者程序(執行使用者代碼)。所有這些程序可以潛在地并發執行,如通過在單cpu上采用cpu複用來實作。
作業系統負責多種與程序管理相關的活動:
建立和删除使用者程序和系統程序
挂起和重新開機程序
提供程序同步機制
提供程序通信機制
提供死鎖處理機制
記憶體通常是cpu所能直接尋址和通路的唯一大容量存儲器。
如果cpu需要處理磁盤内的資料,那麼這些資料必須首先通過CPU生成的I/O調用傳送到記憶體中。
同樣,如果cpu需要執行指令,那麼這些指令必須在記憶體中。
如果一個程式要執行,必須先變換成絕對位址并裝入記憶體。随着程式的執行,程序可以通過産生絕對位址來通路記憶體中的程式指令和資料,最後,程式終止,其記憶體空間得以釋放,并且下一個程式得以執行。
為改善cpu的使用率和計算機對使用者的響應素度,通用計算機必須在記憶體中保留多個程式。進而是以産生記憶體管理的需要。記憶體管理由多種不同的方案。
作業系統負責多種與記憶體管理相關的活動:
記錄記憶體的哪部分正在被使用及被誰使用
當有記憶體空間時,決定哪些程序可以裝入記憶體
根據需要配置設定和釋放記憶體空間
每種 存儲媒體通過一個裝置來控制,如磁盤驅動器和錄音帶驅動器。
大部分計算機采用硬碟作二級存儲器(secondary storage)。但有時也使用三級存儲如錄音帶CD光牒等存放很少使用的資料、長期檔案。
資訊通常儲存在一個存儲系統中,當使用它時,他會被臨時複制到更快的存儲系統——高速存儲。絕大多數系統在其存儲層次上都有一個或多個高速緩存。
作業系統負責多種與檔案管理相關的活動:
建立和删除檔案
建立和删除目錄來組織檔案
提供操作檔案和目錄的原語
将檔案映射到二級存儲上
在穩定存儲媒體上備份檔案
以及有關硬碟管理的活動:
空閑空間管理
存儲空間配置設定
硬碟排程
保護是一種控制程序或使用者對計算機系統資源課通路的機制。
安全的主要工作是防止系統不受外部或内部攻擊。
保護和安全需要系統能區分他的所有使用者。