分散式作業系統的定義

  作業系統中的相信很多人都搞不清楚吧。下面由小編為大家整理了的相關知識,希望對大家有幫助!

  1、分散式作業系統定義

  分散式作業系統首先是一個作業系統,作業系統承擔2個角色:管理者和魔術師,就是管理硬體CPU 、mem、磁碟、網路、I/O 等,讓使用者程式可以最簡單的利用計算機的硬體,但不用care 具體的細節,直接呼叫API 進行使用即可;作業系統還管理著計算機的資源,對程序、執行緒進行分配資源。

  分散式作業系統然後是一個分散式 :通過多臺計算機的硬體實現資料分佈到多臺機器的磁碟【程式執行時載入到記憶體】、通過多臺計算機的CPU 完成分散式計算【計算就保護記憶體計算、網路通訊】;最後通過網路通訊把計算的結果有組織、有順序的收集並merger 成最終的結果。

  分散式作業系統的基本理解:

  多臺物理機器的結合【意味著:每臺機器都有CPU、mem、disk、trafic等硬體資源】

  分散式作業系統***讓多臺物理機器的裝置***計算資源、儲存資源、網路資源******有效結合起來,共同完成一個大的task的軟體作業系統

  資料共享、裝置共享、網路通訊、靈活性

  分散式作業系統的意義:

  簡單的pc 伺服器比大型計算機的成本低,用多臺PC 伺服器來完成大型計算機的功能;但成本比大型計算機低很多;而且叢集規模越大,相對成功就越低

  現實中很多應用場景都是分散式的,所以分散式作業系統來實現解決方案時更加友好

  分散式是多臺機器的協同作戰,團隊作戰的效率比大型機器在很多場景下要高

  但分散式作業系統也是一個整合數以萬臺的叢集的巨無霸型軟體系統,複雜性也跟作業系統一樣大大的複雜!

  2. 分散式作業系統的理解

  分散式作業系統從2個方面來理解:一個是分散式,一個是作業系統

  分散式:就是計算、儲存不在同一臺處理機上,而是分散式多臺處理機上

  作業系統:就是我們平常在單臺物理機器上的作業系統,是一個功能強大、穩定的巨大軟體系統

  所以分散式作業系統可大可小,比如一個處理mysql 分庫分表的中介軟體、一個自帶分庫分表的資料庫mongodb,一個搜尋引擎***倒排、正派索引太大存放在多臺機器***都一個是分散式作業系統;再到幾千上萬臺的大資料計算平臺hadoop 叢集;或者是提供計算、儲存、運維、監控等一整套解決方案都是分散式作業系統。