Linux是什么?如何學(xué)習(xí)Linux?
眾所周知,Linux內(nèi)核原型是由Tovas于1991年創(chuàng)建的。 為什么Tovas可以創(chuàng)建此Linux操作系統(tǒng)? 他為什么選擇386計(jì)算機(jī)進(jìn)行開發(fā)? Liunx為什么能如此迅速地發(fā)展? 為什么免費(fèi)提供Linux? 為什么會有這么多的Liunx版本? 了解這些評論將有助于您理解Liunx為什么可以避免專利訴訟,以及Linux為什么可以在PC和大型機(jī)上使用。 因此,在我們真正進(jìn)入Linux世界之前,讓我們談?wù)勥@些有趣的故事!
Linux是什么?
我們知道Linux是在計(jì)算機(jī)上運(yùn)行的,所有Linux就是一組軟件。問題是這個(gè)軟件是操作系統(tǒng)還是應(yīng)用程序?Linux可以在哪些種類的計(jì)算機(jī)硬件上面運(yùn)行?而Linux源自哪里?為什么使用Linux還不用花錢?這些我們都得先來談一談!免得下次人家問你?,為什么復(fù)制軟件就不會違法時(shí),你會答不出來!
Linux是什么?操作系統(tǒng)/應(yīng)用程序?
我們以前在前面的文章中說到過整個(gè)計(jì)算機(jī)系統(tǒng)的概念,計(jì)算機(jī)主機(jī)由一堆硬件所組成,為了有效地控制這些硬件資源,于是有操作系統(tǒng)的產(chǎn)生。操作系統(tǒng)除了有效地控制這些硬件資源的分配,并提供計(jì)算機(jī)運(yùn)行所需的功能(如網(wǎng)絡(luò)的功能)之外,為了要提供程序員更容易開發(fā)軟件的環(huán)境,所以操作系統(tǒng)也會提供一整組系統(tǒng)調(diào)用接口來給程序員使用!
知道為什么要講這些了嗎?沒錯(cuò),因?yàn)長inux就是一個(gè)操作系統(tǒng)!如下圖所示,Linux就是內(nèi)核與系統(tǒng)調(diào)用接口那兩層,至于應(yīng)用程序算不算Linux?當(dāng)然不算!
LinuLinux籍推薦
由上圖我們可以看出其實(shí)內(nèi)核與硬件的關(guān)系非常緊密。早期的Linux是針對386的計(jì)算機(jī)來開發(fā)的,由于Linux只是一個(gè)操作系統(tǒng),并不包含其他的應(yīng)用程序,因此很多工程師在下載了Liunx內(nèi)核并且安裝之后,就只能看著計(jì)算機(jī)開始運(yùn)行!接下來這些高級工程師為了自己的需求,再在Linux上面安裝它們所需的軟件即可。
由于不同的硬件它的功能函數(shù)并不相同,例如IBM的Power CPU與Inlel的X86架構(gòu)就不一樣,所以同一個(gè)操作系統(tǒng)是無法在不同硬件平臺上運(yùn)行的!舉例來說,如果你想要讓X86上面運(yùn)行的那個(gè)操作系統(tǒng)也能夠在Power CPU上運(yùn)行時(shí),就得要將該操作系統(tǒng)進(jìn)行修改即可。如果能夠參考硬件的功能函數(shù)并以此修改你的操作系統(tǒng)程序代碼,那經(jīng)過改版后的操作系統(tǒng)就能夠在另一個(gè)硬件平臺上運(yùn)行,這個(gè)過程我們叫“軟件移植”。
Linux提供了一個(gè)操作系統(tǒng)中最底層的硬件控制與資源管理的完整架構(gòu),這個(gè)架構(gòu)時(shí)繼承了UNIX良好的傳統(tǒng)而來,所以相當(dāng)?shù)姆€(wěn)定且功能強(qiáng)大。此外,由于這個(gè)優(yōu)秀的架構(gòu)可以在目前的個(gè)人計(jì)算機(jī)(x86系統(tǒng))上面運(yùn)行,所以很多的軟件開發(fā)者漸漸地將它們的工作重點(diǎn)轉(zhuǎn)移到這個(gè)架構(gòu)上面,所以Linux操作系統(tǒng)也有很多的應(yīng)用軟件。
Linux只是內(nèi)核及其包含的工具,但是,通過將內(nèi)核和內(nèi)核工具集成到這些軟件開發(fā)人員提供的軟件中,Linux成為了更完整、功能更強(qiáng)大的操作系統(tǒng)。 在大致了解Linux之后,讓我們談?wù)凩inux為什么是一個(gè)非常穩(wěn)定的操作系統(tǒng)以及它為何誕生。