計算機軟件體系

1、計算機軟件的定義、作用、發展和分類

1)程序:由一系列控制計算機各部件協調工作的指令組成的。

2)軟件:計算機系統中的程序、數據及使用和維護程序所需要的所有文檔的集合。軟件=程序+數據+說明文檔。

3)軟件的作用

(1)控制和管理計算機的硬件資源,提高計算機資源的使用效率,協調計算機各組成部分的工作。

(2)在硬件提供的基本功能的基礎上,擴大計算機的功能,提高計算機實現和運行各類應用任務的能力。

(3)向用戶提供儘可能方便、靈活的計算機操作使用界面。

(4)為專業人員提供計算機軟件的開發工具和環境,提供對計算機本身進行調試、維護和診斷等需要的工具。

(5)完成特定應用的信息處理任務。

4)軟件分類

(1)系統軟件:為整個計算機系統所支配的,不依賴於特定應用的通用軟件。任務:控制和維護計算機的正常運行,管理計算機的各種資源,以滿足其他軟件的需要。(操作系統、設備驅動程序、語言處理程序)。

(2)應用軟件:用於解決不同具體應用問題的專門軟件,應用軟件必須在系統軟件的支持下才能正常運行(辦公軟件、圖形處理軟件、多媒體軟件)。

(3)工具軟件:有特定功能的軟件,為整個計算機系統(硬件和操作系統)所使用,對系統進行維護或功能擴展的軟件(文件管理軟件、計算機系統安全類軟件)

5)計算機軟件的層次結構

上層 工具軟件、編程軟件、數據庫軟件、應用軟件
底層 操作系統

2、操作系統

1)定義:計算機硬件的直接外層,它對硬件的功能進行首次擴充,是用來控制和管理計算機系統的軟、硬件資源,提高計算機系統資源的使用效率,方便用戶使用的一組程序的集合。

2)地位:操作系統是其他軟件運行的基礎,為用戶提供友善的服務界面,是計算機的思想和靈魂。

3)作用:

(1)資源管理功能:對計算機系統硬件和軟件資源的管理、控制與調度,以提高計算機的效率和各種硬件的利用率。

                從資源管理的角度看,操作系統的功能:

                        作業管理:包括任務管理、界面管理、人機交互、圖形界面、語音控制、虛擬現實。

                        文件管理:對軟件資源的管理,即對存放在計算機中的信息進行邏輯組織和物理組織、維護文件目錄結構以及實現對文件的各種操作。

                        存儲管理:對存儲空間的管理,主要指對內存的管理。

                                虛擬內存—地址轉換;存儲器分配—信息保護。

                        設備管理:對硬件設備的管理,包括對輸入和輸出設備的分配、啟動、完成和回收。

                        進程管理(處理機管理):對處理機執行時間的管理,將CPU合理的分配給每個任務。

                        程序管理:有效地、合理地分配CPU的時間。

(2)人機交互功能:作為用戶與硬件的接口和人機交互的界面,要為用戶提供最佳的工作環境和最友好的服務,為其他軟件的開發提供必要的服務和相應的接口,主要靠可以進行輸入輸出的外部設備和相應的設備驅動程序來完成。

4)分類:

(1)按其管理用戶的數量:單用戶操作系統、多用戶操作系統。

(2)按其對任務的響應方式不同:實時操作系統、分時操作系統。

(3)按用戶界面:命令行界面操作系統、圖形用戶界面操作系統。

(4)按其同時管理作業數量的多少:單道作業系統、多道作業批處理系統。

(5)按使用環境:個人操作系統、網絡操作系統、分佈式操作系統。

5)批處理操作系統

(1)單道批處理操作系統:每次只調一個用戶程序進入內存,只允許一個作業執行。

(2)多道批處理操作系統:允許多個作業同時裝入主機存儲器,使一個中央處理器輪流執行各個任務,各個作業可以同時使用各自所需的外圍設備。

(3)多道:內存中駐留多個程序或一個程序的多個程序段。

(4)多道技術原理:將運行過程細化成小的步驟,在內存中同時存放並運行幾道相互獨立的程序,多道程序輪流地或分時地佔用處理機交替執行,從而實現宏觀上的並行,但從微觀看,仍是串行。

(5)多道技術的優點:提高CPU、內存、I/O設備的利用率,增加系統的吞吐量。

(6)多道技術的缺點:平均周轉時間長,沒有交互能力。

6)分時操作系統

(1)採用了分時技術,把CPU的時間分成很短的時間片段,稱為時間片,操作系統以時間片為單位,採用時間片輪換方式處理請求並通過交互方式在終端上向用戶顯示結果,每次服務一個時間片。

(2)優點:響應快、界面友好、便於資源共享。

7)實時操作系統

(1)實時:指計算機對於外部事件能夠以足夠快的速度進行處理,並在被控對象允許的時間範圍內做出快速反應。

(2)主要任務:對時間進行實時處理。

(3)特點:具有系統的可確定性,即能對運行情況的最好和最壞等情況做出精確的估計。

(4)主要用途:過程控制系統、信息查詢系統、事務處理系統。

8)網絡操作系統

(1)使網絡上的計算機能夠方便而有效地共享網絡資源,為網絡用戶提供各種服務的軟件和有關協議的集合。