1. 程式人生 > >python基礎——作業系統簡介

python基礎——作業系統簡介

不同應用領域的主流作業系統

l  桌面作業系統

l  伺服器作業系統

l  嵌入式作業系統

l  移動裝置作業系統

 

桌面作業系統

Windows系列

使用者群體很大

MacOS

適合於開發人員

Linux

應用軟體比較少

 

伺服器作業系統

所謂的伺服器就是一臺電腦。

Linux

安全、穩定、免費

佔有率高

 

windows Server

付費

佔有率低

 

嵌入式作業系統EOS

 

嵌入式實時作業系統µC/OS-II、嵌入式Linux、Windows Embedded、VxWorks等。以及應用在智慧手機和平板電腦的Android、iOS等。

系統核心小

專用性強

高實時性

系統精簡

 

移動裝置作業系統

IOS、Android(基於Linux)

 

 

作業系統(Operation System,OS)?

作業系統作為介面的示意圖:

 

 

沒有安裝作業系統的計算機,叫做裸機。

 

如果想要在計算機上裸機上執行自己所編寫的程式,就必須使用機器語言書寫程式。

如果計算機上已經安裝了作業系統,就可以再作業系統上安裝支援的高階語言環境,用高階語言開發程式。

 

作業系統發展史

 

Unix

1965年之前的時候波,電腦並不是像現在普遍,不是常人能夠用得起的。只有軍用或者是學院的研究機構才有。而且大型機的主機至多能夠提供0太終端連線一臺電腦。

 

為了解決輸了不夠用的問題

1965年後由貝爾實驗室加入了麻省理工學院以及通用電氣合作的計劃————該計劃要建立一套多食用者(Multi-user)、多工(multi-processor)、多層次(multi-level)的MULTICS作業系統,想讓大型主機支援300臺終端。

1969年前後專案進度緩慢,資金短缺,貝爾實驗室退出了研究。

 

1969從這個專案中退出的Ken Thompson當時再實驗室無聊時,為了讓一臺空閒的電腦上執行星際旅行遊行,在8月份左右趁著妻子探親期間,用了一個月的時間,使用匯編語言寫出了Unix作業系統的原型。

 

1970年,美國貝爾實驗室的Ken Thompson,一BCPL語言為基礎,設計出了簡單而且很接近硬體的B語言(取BCPL的首字母),並且使用B語言寫了第一個Unix作業系統。

 

1971年,同樣酷愛星際旅行的Dennis M·Ritchie為了能夠早點玩上游戲,加入了Thompson的開發專案中,合作開發UNIX,由於B語言的跨平臺性較差,主要工作就是改造B語言。

 

1972年,Dennis M·Retchie在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為語言名字,就是所謂的C語言。

 

1973年初,C語言的主體完成,Thompson和Ritchie迫不及待地開始用它完全重寫了UNIX作業系統。

 

C語言

在把Unix移植到其他型別的計算機上使用時,C語言強大的移植性(Portability)由此得到顯現。

機器語言和組合語言都不具有移植性,為x86開發的程式,不可能在Alpha、SPARC和ARM等機器上執行。

 

而C語言程式時可以使用在任意架構的處理器上,只要那種架構的處理器具有對應的C語言編譯器和庫,然後將C原始碼、連線成目標二進位制檔案之後即可執行。

 

Unix家譜

 

 

1.MInix

因為AT&T(通用電氣)的政策改變,在version 7 Unix推出之後,釋出的使用條款,將UNIX原始碼私有化,在大學中不再使用UNIX原始碼。

Andrew S·Tanenbaum(塔能鮑姆)教授為了能在課堂上教授學生作業系統執行的細節,決定在不使用任何AT&T的原始碼的前提下,自行開發了與UNIX相容的作業系統,以避免版權上的爭議。

以小型UNIX(mini-UNIX),將它稱為MINIX。

 

2.Linux

1991年林納斯(Linus)就讀於赫爾辛基大學期間,對UNIX產生濃厚的興趣,嘗試著在Minix上做一些工作。

 

因為在Minix只是教學使用,因此功能並不強,Linus經常要他的終端模擬器(Terminal Emulator)取訪問大學上的新聞組和郵件,為了方便讀寫和下載檔案,他自己編寫了磁碟驅動程式和檔案系統,這些候來成為了Linux第一個核心的雛形,當時,年僅21歲。

 

Linus利用了GNU的bash當作開發環境,gcc當作編譯工具,編寫了Linux核心,一開始Linux並不能相容Unix。

         即Unix上執行的應用程式並不能在Linux上執行,即應用程式與核心之間的介面不一致。

         一開始Linux只適用於386,候來經過世界開發者的幫助,最終能夠相容多種硬體。

 

 

 

Linux核心及發行版

 

Linux核心版本

核心(kernel)是系統的心臟,是執行程式和管理像磁碟和印表機等裝置的核心程式,它提供了一個在裸裝置與應用程式間的抽象層。

 

linux核心版本又分為穩定版和開發版,兩種版本是相互關聯,相互迴圈。

         穩定版:具有工業級強度,可以廣泛地應用和部署,新的穩定版相對於較舊地只是修正一些bug或者加入了一些新的驅動程式。

         開發版:由於要適應各種解決方案,所以變化很快。

 

Linux發行版

Linux發行版(也被叫做GNU/Linux發行版),通常包含了桌面環境、辦公套件、媒體播放器、資料庫等應用軟體。

常見地發行版有:

Ubuntu

Redhat

Fedora

OpenSUSE

Linux Mint

Debian

Manjaro

Mageia

Cantos

Arch

 

在幾乎每一份與Linux有關地榜單上,基於Debian地Ubuntu都佔有一席之地。