1.3.3 計算機軟件
軟件是指計算機系統中使用的各種程序及其文檔。程序是對計算任務的處理對象和規則的描述,文檔是為了便于了解程序所需要的闡述性資料。
1.軟件的作用
計算機的工作是由存儲在其內部的程序指揮的,這是馮·諾依曼計算機的重要特征。因此程序或軟件質量的好壞極大地影響計算機性能的發揮,特別是并行處理技術及RISC計算機的出現更顯得軟件之重要。軟件的具體作用有三方面:
① 軟件在計算機系統中起著指揮和管理的作用。計算機系統中有各種各樣的軟、硬件資源,必須由相應的軟件(特別是操作系統)來統一管理和指揮。
② 軟件是計算機用戶和硬件的接口界面。用戶要使用計算機,必須編制程序,那就必須用軟件,用戶主要通過軟件與計算機進行交流。
③ 軟件是計算機體系結構設計的主要依據。為了方便用戶,使計算機系統具有較高的總體效率,在設計計算機時必須考慮軟件和硬件的結合,以及用戶對軟件的要求。
2.軟件的發展過程
軟件的發展受計算機硬件發展和應用的推動及制約,其發展過程大致分三個階段。
從第一臺計算機上的第一個程序出現到實用的高級語言出現為第一階段(1946—1956年)。這時計算機的應用以科學計算為主,計算量較大,但輸入/輸出量不大。機器“以CPU為中心”,存儲器較小,編制程序的工具為機器語言,突出問題是程序設計與編制工作復雜、繁瑣、易出錯。因此重點考慮程序本身,使它占用內存小,運行時間短,從而提高效率。這時尚未出現軟件一詞。
從實用的高級程序設計語言出現到軟件工程出現以前為第二階段(1956—1968年)。這時除了科學計算外,出現了大量數據處理問題,計算量不大,但輸入/輸出量較大。機器結構轉向“以存儲器為中心”,出現了大容量存儲器,輸入/輸出設備增加。為了充分利用這些資源,出現了操作系統;為了提高程序人員的工作效率,出現了高級語言;為了適應大量的數據處理,出現了數據庫及其管理系統。這時人們也開始認識到了文檔的重要性,出現了“軟件”一詞。隨著軟件復雜性的不斷提高,甚至出現了人們難以控制的局面,即所謂軟件危機。為了克服危機,人們采取了多種方法,特別是“軟件工程”方法的出現。
軟件工程出現以后迄今一直為第三階段(1965年至今)。對于一些復雜的大型軟件,采用個體或者合作的方式進行開發不僅效率低、可靠性差,且很難完成,必須采用工程方法才能適用。為此,從20世紀60年代末開始,軟件工程得到了迅速的發展,還出現了“計算機輔助軟件”、“軟件自動化”系統等。目前,人們除了研究改進軟件傳統技術外,還在著重研究以智能化、自動化、集成化、并行化及自然化為標志的軟件工程新技術。
3.軟件的分類
按功能分,軟件大致可以分為三類:系統軟件、支撐軟件和應用軟件。
(1)系統軟件。包括操作系統和各類語言的編譯程序。它位于計算機系統中最接近硬件的層,其他軟件只有通過系統軟件支持才能發揮作用。它與具體應用無關。
① 操作系統。管理整個計算機系統的軟、硬件資源,包括對它們進行調度、管理、監視、服務等,以改善人機界面,并提供對應用軟件的支持。按功能分,操作系統可以分成多種類型,包括單用戶操作系統和批處理操作系統,分時操作系統和實時操作系統,網絡操作系統、分布式操作系統和并行操作系統等。
② 編譯程序。把由程序人員編寫的各類由高級語言書寫的程序翻譯成能與之等價的、可執行的機器語言代碼。
(2)支撐軟件。它是支撐其他軟件開發與維護的軟件。數據庫管理系統、各類子程序庫及網絡軟件等均為支撐軟件。20世紀70年代中后期發展起來的軟件開發環境則是支撐軟件的代表,它主要包括環境數據庫、各類接口軟件和工具組。
(3)應用軟件。各類用戶為滿足各自的需要開發的各種應用程序。如為進行數據處理、科學計算、事務管理、工程設計及過程控制所編寫的各類應用程序。
軟件是人類開發的各種程序和書寫的文檔,它是智力產品。隨著硬件技術的不斷發展和應用要求的日益提高,軟件產品越來越復雜、龐大,如何來保證軟件的準確性、友善性、高效率及智能化,是軟件工作者始終努力的目標。
- 我與國防一起成長:大學生國防教育與軍訓教材(第三版)
- 河北大學外國語學院617俄語語言技能綜合歷年考研真題及詳解
- 經濟法(第二版)
- 東華大學外語學院211翻譯碩士英語[專業碩士]歷年考研真題及詳解
- 審計學(第二版)
- 2020年福建省選聘大學生村官考試《行政職業能力測驗》題庫【真題精選+章節題庫+模擬試題】
- 2020年河南省選聘大學生村官考試《行政職業能力測驗》考點精講及典型題(含歷年真題)詳解
- 大學語文
- 大學生必知的重要歷史人物
- 單片機的C語言程序設計與應用
- 微電網建模與控制基礎
- 大學生心理健康教程
- 《新版中日交流標準日本語中級(上)》學習指南【課文重點+詞匯剖析+語法精解+拓展知識+全文翻譯】
- 有機化學(第二版)
- Altium Designer 18印制電路板設計實用教程