【系統架構師修煉之道】(12):操做系統基礎知識——操做系統的原理,類型和結構

定義

操做系統(Operating System,簡稱OS)是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在「裸機」上的最基本的系統軟件,任何其餘軟件都必須在操做系統的支持下才能運行,操做系統能有效組織和管理系統中的各類軟,硬件資源,合理組織計算機系統的工做流程,又控制程序的執行,爲用戶提供一個良好的操做環境。數據庫

做用

  • 經過資源管理,提升計算機系統的效率。服務器

  • 改善人機界面,向用戶提供友好的工做環境。微信

CPU

(Central Processing Unit)是一塊超大規模的集成電路,主要解釋計算機指令以及處理計算機軟件中的數據,包括網絡

  • 運算器(算術邏輯運算單元,ALU,Arithmetic Logic Unit)併發

  • 高速緩衝存儲器(Cache)異步

  • 數據(Data)分佈式

  • 總線(Bus)工具

存儲器

存儲程序和各類數據,它採用具備兩種穩定狀態的物理器件來存儲信息,平常使用的十進制數必須轉換成等值的二進制數才能存入存儲器中。計算機中處理的各類字符,例如英文字母、運算符號等,也要轉換成二進制代碼才能存儲和操做。spa

輸入輸出設備

向計算機輸入和輸出數據和信息的設備,可以接收各類各樣的數據,既能夠是數值型的數據,也能夠是各類非數值型的數據。操作系統

系統軟件和應用軟件

  • 系統軟件是指控制和協調計算機以及外部設備,支持應用軟件開發和運行的系統,是無需用戶干預的各類程序的集合,主要功能是調度,監控和維護計算機系統。例如:操做系統和一系列基本工具(好比:編譯器,數據庫管理,存儲器格式化,用戶身份驗證,網絡鏈接)

  • 應用軟件是和系統軟件相對的,是用戶能夠使用的各類程序設計語言,以及用各類程序設計語言編制的應用程序的集合,分爲應用軟件包和用戶程序。例如:辦公室軟件,互聯網軟件,多媒體軟件,分析軟件,協做軟件。

關係

分類

  1. 單用戶操做系統
    早期的微型計算機上運行的操做系統每次只容許一個用戶使用計算機,被稱爲單用戶微機操做系統,如CP/M,MS-DOS等。

  2. 批處理操做系統
    採用批量處理做業技術的操做系統稱爲批處理操做系統。其中批處理做業是指用戶將一批做業提交給操做系統後就再也不干預,由操做系統控制它們自動運行。而且分爲單道批處理系統和多道批處理系統,不具備交互性。

    • 多道:同時多個做業在外存中排好隊列,系統按必定的調度原則從後備做業隊列中選出一個或者多個做業進入內存。

    • 單道:內存中僅有一道程序運行。

  3. 分時操做系統
    一臺計算機採用時間片輪轉的方式同時爲幾個、幾十個甚至幾百個用戶服務的一種操做系統。

  4. 實時操做系統
    當外界事件或數據產生時,可以接受並以足夠快的速度予以處理,其處理的結果又能在規定的時間以內來控制生產過程或對處理系統作出快速響應,調度一切可利用的資源完成實時任務,並控制全部實時任務協調一致運行的操做系統。

    • 硬實時
      若是不能在容許時間內完成使物體可達的計算,操做系統將因錯誤結束

    • 軟實時
      生產線仍然能繼續工做,但產品的輸出會因產品不能在容許時間內到達而減慢,這使機器人有短暫的不生產現象

特色

    • 異步的事件響應

    • 切換時間和中斷延遲時間肯定

    • 優先級中斷和調度

    • 搶佔式調度

    1. 網絡操做系統
      除了實現單機操做系統所有功能外,還具有管理網絡中的共享資源,實現用戶通訊的操做系統
      常見的

      • UNIX 美國貝爾實驗室開發的一種多用戶、多任務的操做系統

      • NetWare Novell公司開發的網絡操做系統

      • Linux 芬蘭赫爾辛基大學的一名學生開發

      • Windows NT4.0 Windows NT4.0共有兩個版本:Windows NT Workstation(工做站版)和Windows NTServer(服務器版)

    6.分佈式軟件系統
    支持分佈式處理的軟件系統,它和集中式操做系統的區別在於資源管理、進程通訊和系統結構等方面。

    7.嵌入式操做系統
    用於嵌入式系統的操做系統,例如:Arm-Linux,pSOS,Android,Symbian

    特色

    • 系統內核小

    • 專用性強

    • 系統精簡

    • 高實時性

    • 多任務的操做系統

    特徵

    • 併發性
      兩個或多個事件在同一時間間隔內發生(並行性是指兩個或多個事件在同一時刻發生)

    • 共享性
      資源共享

    • 虛擬性
      一個物理上的實體,變爲若干個邏輯上的對應物

    • 異步性
      多個程序間的執行順序以及完成每道程序所需的時間都是不肯定的,於是也是不可預知的

    功能

    • 處理器管理
      處理中斷事件

    • 文件管理
      操做系統對信息資源的管理

    • 存儲管理
      內存儲器的管理,分配內存空間,保證各做業佔用的存儲空間不發生矛盾,並使各做業在本身所屬存儲區中不互相干擾

    • 設備管理
      管理各種外圍設備

    • 做業管理
      完成每一個用戶請求的獨立操做,包括做業的輸入和輸出,做業的調度與控制。


    感謝您的耐心閱讀,若是您發現文章中有一些沒表述清楚的,或者是不對的地方,請給我留言,你的鼓勵是做者寫做最大的動力,
    若是您認爲本文質量不錯,讀後以爲收穫很大,不妨小額贊助我一下,讓我更有動力繼續寫出高質量的文章。

    • 支付寶

    • 微信

    做 者 : @mousycoder

    原文出處 : http://mousycoder.com/2015/10/14/the-pragmatic-sa-12/

    創做時間:2015-9-1

    更新時間:2015-10-16

    相關文章
    相關標籤/搜索