新聞中心
作為最為優(yōu)秀的開(kāi)源操作系統(tǒng)之一,Linux操作系統(tǒng)更大的特點(diǎn)是其開(kāi)放源代碼和高度可定制化的特性。作為大量企業(yè)、學(xué)術(shù)機(jī)構(gòu)、個(gè)人愛(ài)好者和開(kāi)發(fā)者等使用和開(kāi)發(fā)的平臺(tái),Linux操作系統(tǒng)不僅在服務(wù)器領(lǐng)域擁有廣泛應(yīng)用,同時(shí)也在移動(dòng)終端、嵌入式設(shè)備等領(lǐng)域嶄露頭角。其中,Linux內(nèi)核是Linux操作系統(tǒng)最為核心的組成部分,也是其最為關(guān)鍵的基礎(chǔ)框架之一。那么,在探索linux內(nèi)核基礎(chǔ)框架時(shí),我們需要深入解讀開(kāi)源操作系統(tǒng)。

一、Linux內(nèi)核的基礎(chǔ)架構(gòu)
Linux內(nèi)核基礎(chǔ)架構(gòu)主要包括進(jìn)程管理、內(nèi)存管理、網(wǎng)絡(luò)管理、文件系統(tǒng)管理、硬件驅(qū)動(dòng)等若干個(gè)子系統(tǒng)。其中,進(jìn)程管理子系統(tǒng)主要負(fù)責(zé)管理進(jìn)程的運(yùn)行,包括進(jìn)程的創(chuàng)建、掛起、恢復(fù)、銷(xiāo)毀等;內(nèi)存管理子系統(tǒng)主要負(fù)責(zé)管理系統(tǒng)內(nèi)存的分配和回收,以及頁(yè)面的管理等;網(wǎng)絡(luò)管理子系統(tǒng)主要負(fù)責(zé)管理系統(tǒng)網(wǎng)絡(luò)的連接、協(xié)議棧的處理等;文件系統(tǒng)管理子系統(tǒng)主要負(fù)責(zé)管理文件系統(tǒng)的掛載、設(shè)備IO等;硬件驅(qū)動(dòng)子系統(tǒng)主要負(fù)責(zé)管理系統(tǒng)硬件的訪問(wèn),包括所有設(shè)備的讀取、寫(xiě)入以及中斷等。
二、Linux內(nèi)核的開(kāi)發(fā)與調(diào)試
在Linux內(nèi)核的開(kāi)發(fā)過(guò)程中,我們主要使用C語(yǔ)言進(jìn)行開(kāi)發(fā)。而在進(jìn)行Linux內(nèi)核的開(kāi)發(fā)時(shí),必須要有Linux操作系統(tǒng)的底層開(kāi)發(fā)知識(shí),包括用戶態(tài)和內(nèi)核態(tài)原理、進(jìn)程、內(nèi)存管理等知識(shí)。同時(shí),在Linux內(nèi)核開(kāi)發(fā)之前,我們需要先熟悉Linux內(nèi)核源碼,以熟悉其內(nèi)部邏輯和數(shù)據(jù)結(jié)構(gòu)等內(nèi)容。
針對(duì)Linux內(nèi)核開(kāi)發(fā)的調(diào)試,我們需要使用到類(lèi)似KDB、GDB等調(diào)試工具,以及KGDB和SysRq等工具。通過(guò)這些調(diào)試工具,我們可以在內(nèi)核英文的 kernel panic 異常情況下,使用神奇的 SysRq 進(jìn)入 Linux 內(nèi)核調(diào)式模式,然后調(diào)用 KGDB 進(jìn)行內(nèi)核調(diào)試。
三、如何貢獻(xiàn)開(kāi)源社區(qū)
在Linux開(kāi)源社區(qū),我們可以通過(guò)提交代碼、修復(fù)Bug、文檔、翻譯等方式進(jìn)行貢獻(xiàn)。其中,向開(kāi)源社區(qū)提交代碼是最為常見(jiàn)的一種方式。Linux內(nèi)核代碼存放在Git倉(cāng)庫(kù)中,我們可以通過(guò)克隆倉(cāng)庫(kù)、創(chuàng)建分支等方式進(jìn)行操作。在參與到開(kāi)源社區(qū)中的那一刻起,我們就應(yīng)該入鄉(xiāng)隨俗,遵循社區(qū)規(guī)范,不允許進(jìn)行誹謗、攻擊等行為。
Linux內(nèi)核是在Linux操作系統(tǒng)內(nèi)部最為核心的部分,負(fù)責(zé)處理大量系統(tǒng)的底層細(xì)節(jié)。要想深入了解和探索Linux內(nèi)核基礎(chǔ)框架,我們需要熟悉Linux底層開(kāi)發(fā)知識(shí),包括進(jìn)程、內(nèi)存、文件系統(tǒng)以及硬件驅(qū)動(dòng)的相關(guān)原理。同時(shí),我們還需要學(xué)習(xí)使用Linux內(nèi)核開(kāi)發(fā)的調(diào)試工具,以進(jìn)行相關(guān)的調(diào)試操作。參與到開(kāi)源社區(qū)中,向開(kāi)源社區(qū)貢獻(xiàn)自己的能力,也是提升Linux操作系統(tǒng)水平的重要方式。
相關(guān)問(wèn)題拓展閱讀:
- stllinuxwindow性能
- LINUX系統(tǒng)介紹
stllinuxwindow性能
STL、Linux和Windows三者的性能通常很難進(jìn)行直接比較,因?yàn)樗鼈兌级ㄎ挥诓煌念I(lǐng)域和用途,涉及的范疇和度量標(biāo)準(zhǔn)也各不相同。下面是對(duì)它們?cè)谛阅芊矫娴母攀觯?/p>
1. STL性能:STL是C++標(biāo)準(zhǔn)庫(kù)中的一個(gè)重要組成部分,提供了各種容器、算法和其他工具,是C++程序員經(jīng)常使用的工具。STL的性能通常被認(rèn)為是非常高效的,并且在各種應(yīng)用場(chǎng)景中都表現(xiàn)出清答色。但是,在處理非常大量的數(shù)據(jù)時(shí),STL可能會(huì)比其他更底層的C++庫(kù)略顯低效。
2. Linux性能:Linux是一種流行的開(kāi)源操作系統(tǒng),通常用于服務(wù)器和嵌入式系統(tǒng)等領(lǐng)域。Linux的性能被認(rèn)為是非常出色的,能夠處理大量的并發(fā)請(qǐng)求,尤其是在分布式計(jì)算和高性能計(jì)算環(huán)境下,Linux能夠提供卓越的性能和穩(wěn)定性。
3. Windows性能:Windows是一種廣泛使用的桌面和服務(wù)器操作系統(tǒng),在個(gè)人電腦和商業(yè)計(jì)算機(jī)領(lǐng)域都有廣泛的應(yīng)用。Windows的性能也被認(rèn)為是不掘信錯(cuò)的,尤其是在處理圖形和多答散慧媒體數(shù)據(jù)等方面具有優(yōu)勢(shì)。但是,在處理并發(fā)請(qǐng)求和高性能計(jì)算等領(lǐng)域,Windows可能不如Linux那么出色。
需要注意的是,上述性能表現(xiàn)只是相對(duì)的簡(jiǎn)單概括,具體體現(xiàn)還需要根據(jù)具體的實(shí)際應(yīng)用情況來(lái)評(píng)估。此外,還需要注重選擇合適的工具和技術(shù)來(lái)優(yōu)化系統(tǒng)的性能,這通常需要綜合考慮多個(gè)方面,包括硬件環(huán)境、軟件設(shè)計(jì)等諸多因素。
STLinuxWindow是一個(gè)基于STLinux操作系統(tǒng)的基礎(chǔ)框架,用于構(gòu)建和開(kāi)發(fā)伏瞎?fàn)€嵌入式Linux系統(tǒng)。在性能方面,STLinuxWindow的表現(xiàn)主要取決于硬件平臺(tái)和應(yīng)用程序的優(yōu)化程度,因此需要根據(jù)具體情況進(jìn)行評(píng)估和優(yōu)化。
在硬件方面,STLinuxWindow可以運(yùn)行在多種硬件平臺(tái)上,包括基于STMicroelectronics芯片的嵌入式平臺(tái),以及其他一些支持Linux系統(tǒng)的硬件設(shè)備。不同的硬件平臺(tái)具缺漏有不同的處理器、內(nèi)存、存儲(chǔ)等配置,對(duì)于STLinuxWindow的性能影響也會(huì)不同。因此,在選擇硬件平臺(tái)時(shí)需要根據(jù)應(yīng)用場(chǎng)景和性能需求進(jìn)行選擇。
在應(yīng)用程序方面,STLinuxWindow可以支持多種應(yīng)用場(chǎng)景和應(yīng)用程序,如圖形界面、多媒體播放、網(wǎng)絡(luò)通信神殲等。不同的應(yīng)用程序?qū)τ赟TLinuxWindow的性能也會(huì)有所影響,因此需要對(duì)應(yīng)用程序進(jìn)行優(yōu)化和測(cè)試。常見(jiàn)的優(yōu)化方法包括:減少不必要的計(jì)算和數(shù)據(jù)存取、使用高效的算法和數(shù)據(jù)結(jié)構(gòu)、優(yōu)化代碼和編譯選項(xiàng)等。
總之,STLinuxWindow的性能取決于硬件平臺(tái)和應(yīng)用程序的優(yōu)化程度,需要根據(jù)具體情況進(jìn)行評(píng)估和優(yōu)化,以獲得更好的性能和用戶體驗(yàn)。
STLinuxWindow是一款基于STLinux操作系統(tǒng)的窗口系統(tǒng),用于圖形化界面的顯示和操作。它采用了X Window系統(tǒng)作為底層基礎(chǔ),可以支持多個(gè)窗口的顯示和切換,具有較好的可擴(kuò)展性和兼容性。關(guān)于其性能,需要根據(jù)具體的使用場(chǎng)景和硬件配置來(lái)評(píng)估。
一般來(lái)說(shuō),STLinuxWindow的性能受到以下幾個(gè)方面的影響:
1. 硬件配置。STLinuxWindow的性能受到硬件配置的影響,包括CPU、內(nèi)存、顯卡等硬件配置。硬件配置越高,STLinuxWindow的性能就越好。
2. 軟件應(yīng)用。STLinuxWindow的性能也受到軟件應(yīng)用的影響,不同的軟件應(yīng)用對(duì)系統(tǒng)資源的占用和利用也不同,可能會(huì)影響系統(tǒng)的運(yùn)行和響應(yīng)速度。
3. 網(wǎng)絡(luò)環(huán)境。棗運(yùn)STLinuxWindow的性能還受到網(wǎng)絡(luò)環(huán)境的影響,如果網(wǎng)絡(luò)環(huán)境不穩(wěn)定或者帶寬較低,可能會(huì)影響系統(tǒng)的響應(yīng)速度和數(shù)據(jù)傳輸速度。
綜上所述,STLinuxWindow的性能受到多方面的因素的影響,具體的性能表現(xiàn)凳則梁需要根據(jù)實(shí)際情況來(lái)評(píng)估。在使用STLinuxWindow時(shí),需要考慮到硬件配置、軟件應(yīng)用和網(wǎng)絡(luò)盯衡環(huán)境等因素,以提升系統(tǒng)的運(yùn)行性能和穩(wěn)定性。
S-T-L Window是一種基于X11協(xié)議的圖形化用戶界面(GUI),其性能與Linux操作系統(tǒng)和硬件的配置以及應(yīng)用程序的要求密切相關(guān)。以下是影響S-T-L Window性能的一些因素:
1. 硬件配置:S-T-L Window的性能受到計(jì)算機(jī)硬件配置的影響,例如CPU、內(nèi)存、硬盤(pán)和顯卡等。
2. 操作系統(tǒng):Linux操作系統(tǒng)和內(nèi)核版本對(duì)S-T-L Window的性能也有和鄭影響,特別是與顯卡和圖形驅(qū)動(dòng)程序有帶亂關(guān)的部分,不同版本的驅(qū)動(dòng)程序可能會(huì)導(dǎo)致不同的性能表現(xiàn)。
3. 應(yīng)用程序:使用S-T-L Window的應(yīng)用程序?qū)ζ湫阅芤灿泻艽笥绊?,如?yīng)用程序運(yùn)行所需的內(nèi)存、CPU占用率等等。
4. 網(wǎng)絡(luò)帶寬:如果在遠(yuǎn)程訪問(wèn)Linux主機(jī)上的S-T-L Window,則網(wǎng)絡(luò)帶寬也會(huì)影響程序的性能,越快的網(wǎng)絡(luò)速喚行頌度會(huì)帶來(lái)更好的響應(yīng)時(shí)間
總之,S-T-L Window的性能是一個(gè)非常復(fù)雜的問(wèn)題,受到多種因素的影響。在實(shí)際使用中,需要綜合考慮多個(gè)方面的因素,以獲得更佳的性能表現(xiàn)。
STL(Standard Template Library)是一種C++編程語(yǔ)言標(biāo)準(zhǔn)庫(kù),提供了容器、算法、迭代器等相關(guān)類(lèi)別及函數(shù)模板。Linux是一種自由軟件的操作系統(tǒng)內(nèi)核,已經(jīng)廣泛應(yīng)用于多個(gè)領(lǐng)域的計(jì)算機(jī)系統(tǒng)中。Window則是微軟公司的操作系統(tǒng)之一。
STL和Linux/Window這三者是不同領(lǐng)域的技術(shù),之間并沒(méi)有必然聯(lián)系,因做頃空此無(wú)法直接進(jìn)行性能比較。在特定的應(yīng)用場(chǎng)景下,STL、Linux和Window都有著優(yōu)異的表現(xiàn)。
STL的高效性乎磨主要體現(xiàn)在數(shù)據(jù)處理方面,如對(duì)于大量數(shù)據(jù)的排序、查找、刪除等操作需要提供更高的運(yùn)算效率。而Linux和Window則是一種操作系統(tǒng)內(nèi)核技術(shù),主要用于管理操作系統(tǒng)的資源、調(diào)度任務(wù)、提供驅(qū)動(dòng)程序等。相對(duì)而言,它們的性能通常是基于系統(tǒng)運(yùn)算的綜合表現(xiàn)。
如果您想確定某個(gè)特定情境下的STL、Linux和Window的表現(xiàn),需要具體評(píng)估其在各種指標(biāo)上的表現(xiàn),例如:處理速度、內(nèi)存占用、穩(wěn)定性、可靠性、易用性等。在實(shí)際應(yīng)用中,也應(yīng)該根據(jù)純瞎具體場(chǎng)景的需求和權(quán)衡因素,選用最為適合的技術(shù)和框架,并進(jìn)行兼顧性能和效率的優(yōu)化。
LINUX系統(tǒng)介紹
嵌入式Linux系統(tǒng)的設(shè)計(jì)與應(yīng)用
摘要:隨著嵌入式Linux系統(tǒng)的迅速發(fā)展,嵌入式Linux已發(fā)展成為嵌入式操作系統(tǒng)的一個(gè)重要分支。本文介紹了嵌入式Linux的設(shè)計(jì)和幾種流行的嵌入式Linux系統(tǒng)。
關(guān)鍵詞:嵌入式Linux
一、引言
嵌入式系統(tǒng)(Embedded Systems)是根據(jù)應(yīng)用的要求,將操作系統(tǒng)和功能軟件集成于計(jì)算機(jī)硬件系統(tǒng)之好行中,從而實(shí)現(xiàn)軟件與硬件一體化的計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)出現(xiàn)于60年代晚期,它最初被用于控制機(jī)電交換機(jī),如今已被廣泛的應(yīng)用于工業(yè)制造、過(guò)程控制、通訊、儀器、儀表、汽車(chē)、船舶、航空、航天、軍事裝備、消費(fèi)類(lèi)產(chǎn)品等眾多領(lǐng)域。嵌入式系統(tǒng)在數(shù)量上遠(yuǎn)遠(yuǎn)超友嘩嘩過(guò)了各種通用計(jì)算機(jī)系統(tǒng):計(jì)算機(jī)系統(tǒng)核心CPU,每年在全球范圍內(nèi)的產(chǎn)量大概在二十億顆左右,其中超過(guò)80%應(yīng)用于各類(lèi)專(zhuān)用性很強(qiáng)的嵌入式系統(tǒng)。
一般的說(shuō),凡是帶有微處理器的專(zhuān)用軟硬件系統(tǒng)都可以稱為嵌入式系統(tǒng)。和通用的計(jì)算平臺(tái)相比,嵌入式系統(tǒng)往往具有功能單一、體積小、功耗低、可靠性高、剪裁性好、軟硬件集成度高、計(jì)算能力相對(duì)較低等特點(diǎn)。多年來(lái),嵌入式設(shè)備中沒(méi)有操作系統(tǒng),其主要原因有二:首先,諸如洗衣機(jī)、微波爐、電冰箱這樣的設(shè)備僅僅需要一道簡(jiǎn)單的控制程序,以管理數(shù)量有限的按鈕和指示燈,沒(méi)有使用操作系統(tǒng)的必要;其次,它往往只具有有限的硬件資源,不足以支持一個(gè)操作系統(tǒng)。
然而,隨著硬件的發(fā)展,嵌入式系統(tǒng)變得越來(lái)越復(fù)雜,最初的控制程序中逐步的加入了許多功能,而這些功能中有很多可以由操作系統(tǒng)提供。于是,在70年蘆裂代末期出現(xiàn)了嵌入式操作系統(tǒng)(Embedded Operating Systems),它的出現(xiàn)大大簡(jiǎn)化了應(yīng)用程序設(shè)計(jì),并可以有效的保障軟件質(zhì)量和縮短開(kāi)發(fā)周期。簡(jiǎn)單的ES一般并不使用操作系統(tǒng),只包含一些控制流程,但是隨著嵌入式操作系統(tǒng)在復(fù)雜性上的增長(zhǎng),簡(jiǎn)單的流程控制就不能滿足系統(tǒng)的要求,這是就必須考慮使用操作系統(tǒng)做系統(tǒng)軟件。因此,嵌入式操作系統(tǒng)就應(yīng)運(yùn)而生。
隨著EOS的廣泛應(yīng)用,業(yè)界已推出一些應(yīng)用比較成功的EOS產(chǎn)品。歸納起來(lái)EOS應(yīng)該具有以下幾個(gè)特點(diǎn):小巧、實(shí)時(shí)性、可裝卸、固化代碼、弱交互性、強(qiáng)穩(wěn)定性和統(tǒng)一的接口。目前使用最多的EOS產(chǎn)品包括有:Vxwork、QNX、PalmOS、WindowsCE、pSOS、Hopen OS(國(guó)內(nèi)凱思集團(tuán)公司自主研制開(kāi)發(fā))等。其中,Vxwork使用最為廣泛、市場(chǎng)占有率更高,其突出特點(diǎn)是實(shí)時(shí)性強(qiáng)(采用優(yōu)先級(jí)搶占和輪轉(zhuǎn)調(diào)度等機(jī)制),除此之外,其可靠性和可剪裁性也相當(dāng)不錯(cuò)。QNX是一種伸縮性極佳的系統(tǒng),其核心加上實(shí)時(shí)POSIX環(huán)境和一個(gè)完整的窗口系統(tǒng)還不到一兆。相比之下,Microsoft WinCE的核心體積龐大,實(shí)時(shí)性能也差強(qiáng)人意,但由于Windows系列友好的用戶界面和為程序員所熟悉的API,并捆綁IE、Office等應(yīng)用程序,正逐漸獲得更大的市場(chǎng)份額。而與這些商業(yè)化的操作系統(tǒng)相比,Linux已經(jīng)越來(lái)越受到人們的注意。
二、嵌入式Linux概述
Linux是一個(gè)成熟而穩(wěn)定的網(wǎng)絡(luò)操作系統(tǒng)。將Linux植入嵌入式設(shè)備具有眾多的優(yōu)點(diǎn)。首先,Linux的源代碼是開(kāi)放的,任何人都可以獲取并修改,用之開(kāi)發(fā)自己的產(chǎn)品。其次,Lirmx是可以定制的,其系統(tǒng)內(nèi)核最小只有約134kB。一個(gè)帶有中文系統(tǒng)和圖形用戶界面的核心程序也可以做到不足1MB,并且同樣穩(wěn)定。另外,它和多數(shù)Unix系統(tǒng)兼容,應(yīng)用程序的開(kāi)發(fā)和移植相當(dāng)容易。同時(shí),由于具有良好的可移植性,人們已成功使Linux運(yùn)行于數(shù)百種硬件平臺(tái)之上。
然而,Linux并非專(zhuān)門(mén)為實(shí)時(shí)性應(yīng)用而設(shè)計(jì),因此如果想在對(duì)實(shí)時(shí)性要求較高的嵌入式系統(tǒng)中運(yùn)行Linux,就必須為之添加實(shí)時(shí)軟件模塊。這些模塊運(yùn)行的內(nèi)核空間正是操作系統(tǒng)實(shí)現(xiàn)進(jìn)程調(diào)度、中斷處理和程序執(zhí)行的部分,因此錯(cuò)誤的代碼可能會(huì)破壞操作系統(tǒng),進(jìn)而影響整個(gè)系統(tǒng)的可靠性和穩(wěn)定性。Linux的眾多優(yōu)點(diǎn)還是使它在嵌入式領(lǐng)域獲得了廣泛的應(yīng)用,并出現(xiàn)了數(shù)量可觀的嵌入式Linux系統(tǒng)。其中有代表性的包括:uClinux、ETLinux、ThinLinux、LOAF等。ETLinux通常用于在小型工業(yè)計(jì)算機(jī),尤其是PC/104模塊。ThinLinux面向?qū)S玫恼障鄼C(jī)服務(wù)器、X-10控制器、MP3播放器和其它類(lèi)似的嵌入式應(yīng)用。LOAF是Linux On A Floppy的縮略語(yǔ),它運(yùn)行在386平臺(tái)上。
三、Linux作為嵌入式操作系統(tǒng)的優(yōu)勢(shì)
Linux作為嵌入式操作系統(tǒng)的優(yōu)勢(shì)主要有以下幾點(diǎn):
1、 可應(yīng)用于多種硬件平臺(tái)。Linux已經(jīng)被移植到多種硬件平臺(tái),這對(duì)于經(jīng)費(fèi),時(shí)間受限制的研究與開(kāi)發(fā)項(xiàng)目是很有吸引力的。原型可以在標(biāo)準(zhǔn)平臺(tái)上開(kāi)發(fā)后移植到具體的硬件上,加快了軟件與硬件的開(kāi)發(fā)過(guò)程。Linux采用一個(gè)統(tǒng)一的框架對(duì)硬件進(jìn)行管理,從一個(gè)硬件平臺(tái)到另一個(gè)硬件平臺(tái)的改動(dòng)與上層應(yīng)用無(wú)關(guān)。Linux可以隨意地配置,不需要任何的許可證或商家的合作關(guān)系,源代碼可以免費(fèi)得到。這使得采用Linux作為操作系統(tǒng)不會(huì)遇到任何關(guān)于版權(quán)的糾紛。毫無(wú)疑問(wèn),這會(huì)節(jié)省大量的開(kāi)發(fā)費(fèi)用。本身內(nèi)置網(wǎng)絡(luò)支持,而目前嵌入式系統(tǒng)對(duì)網(wǎng)絡(luò)支持要求越來(lái)越高。Linux的高度模塊化使添加部件非常容易。
2、 Linux是一個(gè)和Unix相似、以內(nèi)核為基礎(chǔ)的、具有完全的內(nèi)存訪問(wèn)控制,支持大量硬件(包括X86,Alpha、ARM和Motorola等現(xiàn)有的大部分芯片)等特性的一種通用操作系統(tǒng)。其程序源碼全部公開(kāi),任何人可以修改并在GUN通用公共許可證(GNU General Public License)下發(fā)行。這樣,開(kāi)發(fā)人員可以對(duì)操作系統(tǒng)進(jìn)行定制,適應(yīng)其特殊需要。
3、 Linux帶有Unix用戶熟悉的完善的開(kāi)發(fā)工具,幾乎所有的Unix系統(tǒng)的應(yīng)用軟件都已移植到了Linux上。Linux還提供了強(qiáng)大的網(wǎng)絡(luò)功能,有多種可選擇窗口管理器(X Windows)。其強(qiáng)大的語(yǔ)言編譯器GCC,C++等也可以很容易得到,不但成熟完善,而且使用方便。
四、嵌入式Linux的建立
完整的嵌入式Linux解決方案應(yīng)包括嵌入式Linux操作系統(tǒng)內(nèi)核、運(yùn)行環(huán)境、圖形化界面和應(yīng)用軟件等。由于嵌入式設(shè)備的特殊要求,嵌入式Linux解決方案中的內(nèi)核、環(huán)境、GUI等都與標(biāo)準(zhǔn)Linux有很大不同,其主要挑戰(zhàn)是如何在狹小的FLASH、ROM和內(nèi)存中實(shí)現(xiàn)高質(zhì)量的任務(wù)實(shí)時(shí)調(diào)度、圖形化顯示、網(wǎng)絡(luò)通信等功能。
1、 精簡(jiǎn)內(nèi)核
Linux內(nèi)核有自己的結(jié)構(gòu)體系,其中進(jìn)程管理、內(nèi)存管理和文件系統(tǒng)是其最基本的3個(gè)子系統(tǒng)。圖1簡(jiǎn)單表示了它的框架。用戶進(jìn)程可直接通過(guò)系統(tǒng)調(diào)用或者函數(shù)庫(kù)來(lái)訪問(wèn)內(nèi)核資源。正因?yàn)長(zhǎng)inux內(nèi)核具有這樣的結(jié)構(gòu),因此修改內(nèi)核時(shí)必須注意各個(gè)子系統(tǒng)之間的協(xié)調(diào)。
嵌入式Linux內(nèi)核一般由標(biāo)準(zhǔn)Linux內(nèi)核裁剪而來(lái)。用戶可根據(jù)需求配置系統(tǒng),剔除不需的服務(wù)功能、文件系統(tǒng)和設(shè)備驅(qū)動(dòng)。經(jīng)過(guò)裁剪、壓縮后的系統(tǒng)內(nèi)核一般只有300k左右,十分適合嵌入式設(shè)備。同標(biāo)準(zhǔn)Linux不同的是嵌入式Linux必須要實(shí)現(xiàn)從FLASH或ROM的啟動(dòng)。標(biāo)準(zhǔn)Linux啟動(dòng)代碼實(shí)現(xiàn)了系統(tǒng)初始化和從軟盤(pán)、硬盤(pán)O盤(pán)區(qū)引導(dǎo)內(nèi)核。嵌入式Linux一般保存在FLASH或ROM中,標(biāo)準(zhǔn)LILO無(wú)法引導(dǎo)。在支持直接從FLASH設(shè)備引導(dǎo)的系統(tǒng)中,如華恒公司的uClinux,引導(dǎo)程序主要完成對(duì)硬件系統(tǒng)的初始化工作和操作系統(tǒng)的解壓、移位工作。在不支持直接從FLASH引導(dǎo)的系統(tǒng)中,F(xiàn)LASH設(shè)備只能作為非引導(dǎo)磁盤(pán)使用。此時(shí),可采用先從硬盤(pán)或軟盤(pán)加載一個(gè)小操作系統(tǒng),如嵌入式DOS,然后再執(zhí)行”Loadlin”加載程序從FLASH引導(dǎo)嵌入式Linux。
對(duì)標(biāo)準(zhǔn)Linux的修改主要是虛擬內(nèi)存和調(diào)度程序部分的改動(dòng)。因?yàn)闃?biāo)準(zhǔn)Linux系統(tǒng)使用虛擬內(nèi)存管理的目的是為了能同時(shí)運(yùn)行多個(gè)進(jìn)程,但是這樣每個(gè)待運(yùn)行的進(jìn)程所能分配的CPU時(shí)間片就受限制,資源的使用效率就低。這樣對(duì)于實(shí)時(shí)性要求較高的嵌入式系統(tǒng)來(lái)說(shuō),實(shí)時(shí)任務(wù)往往要求CPU具有很高的突發(fā)處理能力,即在有些時(shí)候需要極高的處理效率,因此需要屏蔽內(nèi)核的虛擬內(nèi)存管理機(jī)制。對(duì)于無(wú)硬盤(pán)設(shè)備的嵌入式系統(tǒng),不必采用虛存管理。強(qiáng)實(shí)時(shí)需求的嵌入式應(yīng)用可以通過(guò)修改任務(wù)調(diào)度模塊實(shí)現(xiàn),主要是在內(nèi)核和設(shè)備驅(qū)動(dòng)程序中加入了許多切換點(diǎn)。在該點(diǎn)處,系統(tǒng)檢測(cè)是否存在未處理的緊急中斷,有則剝奪內(nèi)核的運(yùn)行,及時(shí)處理中斷。實(shí)現(xiàn)實(shí)時(shí)的一個(gè)較好的方法是在標(biāo)準(zhǔn)的Linux內(nèi)核上增加一個(gè)實(shí)時(shí)內(nèi)核,標(biāo)準(zhǔn)Linux內(nèi)核作為一個(gè)任務(wù)運(yùn)行于實(shí)時(shí)內(nèi)核上,強(qiáng)實(shí)時(shí)性任務(wù)也直接運(yùn)行在實(shí)時(shí)內(nèi)核上,如RT-Linux等。
文件系統(tǒng)是嵌入式Linux操作系統(tǒng)必不可少的。但標(biāo)準(zhǔn)Linux支持大量的文件系統(tǒng),因此除了滿足系統(tǒng)的正常運(yùn)行需要而保留一種外,其它的全部可以刪除,利用原有的設(shè)置選項(xiàng)可以移除。一般嵌入式設(shè)備文件系統(tǒng)主要使用RamDisk技術(shù)和網(wǎng)絡(luò)文件系統(tǒng)技術(shù)。RamDisk可駐留于Flash,運(yùn)行時(shí)加載到內(nèi)存中。
2、 精簡(jiǎn)運(yùn)行環(huán)境
Linux通常的運(yùn)行環(huán)境指用戶運(yùn)行任何應(yīng)用的基礎(chǔ)設(shè)施,主要包括函數(shù)庫(kù)和基本命令集等。標(biāo)準(zhǔn)Linux系統(tǒng)同時(shí)向用戶提供了靜態(tài)和動(dòng)態(tài)函數(shù)庫(kù)。靜態(tài)函數(shù)庫(kù)在生成應(yīng)用時(shí)直接鏈接到用戶應(yīng)用中。動(dòng)態(tài)庫(kù)在應(yīng)用運(yùn)行時(shí)才鏈接。由于嵌入式系統(tǒng)應(yīng)用一般都是在開(kāi)發(fā)平臺(tái)上預(yù)先生成的,因此嵌入式系統(tǒng)只需向應(yīng)用提供動(dòng)態(tài)函數(shù)庫(kù)。Linux應(yīng)用運(yùn)行所需的函數(shù)庫(kù)主要有C庫(kù)、數(shù)學(xué)庫(kù)、線程庫(kù)、加密庫(kù)、網(wǎng)絡(luò)通信庫(kù)等。其中最基本的是C語(yǔ)言的運(yùn)行庫(kù)glib。這個(gè)庫(kù)主要完成基本的輸入輸出,內(nèi)存訪問(wèn),文件處理。一個(gè)標(biāo)準(zhǔn)的glib庫(kù)大約要1200kB存儲(chǔ)空間,考慮到嵌入式Linux內(nèi)核往往很小,這種運(yùn)行庫(kù)實(shí)在太大,我們做了一些精簡(jiǎn)的工作,方法有兩種:(1)、使用靜態(tài)連接的方法,完全不使用運(yùn)行庫(kù)動(dòng)態(tài)連接;(2)、對(duì)這個(gè)庫(kù)的函數(shù)進(jìn)行精簡(jiǎn)。
在一個(gè)桌面系統(tǒng)上,使用動(dòng)態(tài)連接可以帶來(lái)許多好處。使用動(dòng)態(tài)連接庫(kù),可以讓?xiě)?yīng)用程序跟函數(shù)庫(kù)的更新、升級(jí)分離,便于維護(hù),可以讓同時(shí)運(yùn)行的多個(gè)程序共享一段代碼。但是,在嵌入式系統(tǒng)中,很少有多個(gè)程序并行的可能,程序的維護(hù),尤其是庫(kù)函數(shù)的維護(hù)更新是不常見(jiàn)的。這時(shí),使用靜態(tài)連接的優(yōu)勢(shì)就極為明顯。因?yàn)殪o態(tài)連接可以只將庫(kù)中用到的部分連接進(jìn)程序。在應(yīng)用程序較少(小于5)的情況下,靜態(tài)連接可以達(dá)到較好的結(jié)果。為了便于將來(lái)擴(kuò)充的需要,我們也采用第二種方法,針對(duì)我們的需要,對(duì)庫(kù)函數(shù)的內(nèi)容進(jìn)行精簡(jiǎn),只保留一些基本功能,還有一種方法是采用其它的C語(yǔ)言運(yùn)行庫(kù)。但是這些庫(kù)對(duì)兼容性影響很大。
基本命令集同樣是運(yùn)行用戶應(yīng)用的基礎(chǔ),主要包括初始化進(jìn)程init,終端獲取getty、Shell和基本命令等。嵌入式系統(tǒng)的啟動(dòng)過(guò)程可能與標(biāo)準(zhǔn)Linux不同,例如跳過(guò)登錄過(guò)程直接啟動(dòng)GUI等。這就要求修改init,getty等。標(biāo)準(zhǔn)Linux命令集同樣由于體積問(wèn)題無(wú)法直接應(yīng)用于嵌入式環(huán)境。目前,小命令集的解決方法主要有集成方法和匯編方法兩種。集成方法采用集成公共部分減少命令集整體體積,用C實(shí)現(xiàn),有較好的平臺(tái)移植性;匯編方法則采用匯編編程減少每個(gè)命令的體積.這樣可使體積很小但其平臺(tái)移植性較差。
3、 嵌入式Linux下的GUI
GUI在嵌入式系統(tǒng)或者實(shí)時(shí)系統(tǒng)中的地位越來(lái)越重要,比如PDA、DVD播放機(jī)、WAP手機(jī)等,都需要一個(gè)完整.漂亮的圖形用戶界面。這些系統(tǒng)對(duì)GUI的基本要求包括:(1)、輕型、占用資源少;(2)、高性能;(3)、高可靠性;(4)、可配置。這些也成為評(píng)價(jià)嵌入式系統(tǒng)的重要指標(biāo)。目前,嵌入式Linux上的GUI主要有winCE、Micro Window、緊縮的X Window、MiniGUI(國(guó)內(nèi)做得較好的自由軟件之一)。標(biāo)準(zhǔn)Linux的Xfree86由于體積龐大,運(yùn)行環(huán)境要求高,無(wú)法運(yùn)行于嵌入式環(huán)境。嵌入式GUI主要通過(guò)削減功能,降低性能來(lái)實(shí)現(xiàn)體積小和占用資源少。目前嵌入式Linux上的GUI環(huán)境主要有兩類(lèi):X類(lèi)和win32類(lèi)。X類(lèi)GUI分為服務(wù)方和客戶方兩方。服務(wù)器方提供鼠標(biāo)、鍵盤(pán)處理和顯示功能,客戶方是用戶應(yīng)用,服務(wù)方和客戶方通過(guò)socket接口和X協(xié)議通信。采用該方式十分有利于遠(yuǎn)程網(wǎng)絡(luò)圖形化服務(wù),客戶方和服務(wù)方可通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)X協(xié)議和圖形顯示。典型的X類(lèi)GUI有Micro Window、緊縮的X Window等。win32類(lèi)的GUI不存在客戶方和服務(wù)方,每個(gè)任務(wù)都自成一體,任何任務(wù)間的切換、事件分發(fā)由專(zhuān)門(mén)的管理任務(wù)負(fù)責(zé)。如wiCE、MiniGUI就是類(lèi)似于win32類(lèi)的GUI。
五、當(dāng)前流行的幾種嵌入式Linux系統(tǒng)
除了智能數(shù)字終端領(lǐng)域以外,Linux在移動(dòng)計(jì)算平臺(tái)、智能工業(yè)控制、金融業(yè)終端系統(tǒng),甚至軍事領(lǐng)域都有著廣泛的應(yīng)用前景。這些Linux被統(tǒng)稱為”嵌入式Linux”。
1、RT-Linux
這是由美國(guó)墨西哥理工學(xué)院開(kāi)發(fā)的嵌入式Linux操作系統(tǒng)。到目前為止,RT-Linux已經(jīng)成功地應(yīng)用于航天飛機(jī)的空間數(shù)據(jù)采集、科學(xué)儀器測(cè)控和電影特技圖像處理等廣泛領(lǐng)域。RT-Linux開(kāi)發(fā)者并沒(méi)有針對(duì)實(shí)時(shí)操作系統(tǒng)的特性而重寫(xiě)Linux的內(nèi)核,因?yàn)檫@樣做的工作量非常大,而且要保證兼容性也非常困難。為此,RT-Linux提出了精巧的內(nèi)核,并把標(biāo)準(zhǔn)的Linux核心作為實(shí)時(shí)核心的一個(gè)進(jìn)程,同用戶的實(shí)時(shí)進(jìn)程一起調(diào)度。這樣對(duì)Linux內(nèi)核的改動(dòng)非常小,并且充分利用了Linux下現(xiàn)有的豐富的軟件資源。
2、uClinux
uCLinux是Lineo公司的主打產(chǎn)品,同時(shí)也是開(kāi)放源碼的嵌入式Linux的典范之作。uCLinux主要是針對(duì)目標(biāo)處理器沒(méi)有存儲(chǔ)管理單元MMU(Memory Management Unit) 的嵌入式系統(tǒng)而設(shè)計(jì)的。它已經(jīng)被成功地移植到了很多平臺(tái)上。由于沒(méi)有MMU,其多任務(wù)的實(shí)現(xiàn)需要一定技巧。uCLinux是一種優(yōu)秀的嵌入式Linux版本,是micro-Conrol-Linux的縮寫(xiě)。它秉承了標(biāo)準(zhǔn)Linux的優(yōu)良特性,經(jīng)過(guò)各方面的小型化改造,形成了一個(gè)高度優(yōu)化的、代碼緊湊的嵌入式Linux。雖然它的體積很小,卻仍然保留了Linux的大多數(shù)的優(yōu)點(diǎn):穩(wěn)定、良好的移植性、優(yōu)秀的網(wǎng)絡(luò)功能、對(duì)各種文件系統(tǒng)完備的支持和標(biāo)準(zhǔn)豐富的API。它專(zhuān)為嵌入式系統(tǒng)做了許多小型化的工作,目前已支持多款CPU。其編譯后目標(biāo)文件可控制在幾百KB數(shù)量級(jí),并已經(jīng)被成功地移植到很多平臺(tái)上。
3、Embedix
Embedix是由嵌入式Linux行業(yè)主要廠商之一Luneo推出的,是根據(jù)嵌入式應(yīng)用系統(tǒng)的特點(diǎn)重新設(shè)計(jì)的Linux發(fā)行版本。Embedix提供了超過(guò)25種的Linux系統(tǒng)服務(wù),包括Web服務(wù)器等。系統(tǒng)需要最小8MB內(nèi)存,3MB ROM或快速閃存。Embedix基于Linux 2.2內(nèi)核,并已經(jīng)成功地移植到了Intel x86和PowerPC處理器系列上。像其它的Linux版本一樣,Embedix可以免費(fèi)獲得。Luneo還發(fā)布了另一個(gè)重要的軟件產(chǎn)品,它可以讓在Windows CE上運(yùn)行的程序能夠在Embedix上運(yùn)行。Luneo還將計(jì)劃推出Embedix的開(kāi)發(fā)調(diào)試工具包、基于圖形界面的瀏覽器等??梢哉f(shuō),Embedix是一種完整的嵌入式Linux解決方案。
4、Xlinux
XLinux是由美國(guó)網(wǎng)虎公司推出,主要開(kāi)發(fā)者是陳盈豪。他在加盟網(wǎng)虎幾個(gè)月后便開(kāi)發(fā)出了基于XLinux的、號(hào)稱是世界上最小的嵌入式Linux系統(tǒng),內(nèi)核只有143KB,而且還在不斷減小。XLinux核心采用了”超字元集”專(zhuān)利技術(shù),讓Linux核心不僅可能與標(biāo)準(zhǔn)字符集相容,還含蓋了1 2個(gè)國(guó)家和地區(qū)的字符集。因此,XLinux在推廣Linux的國(guó)際應(yīng)用方面有獨(dú)特的優(yōu)勢(shì)。
5、PoketLinux
由Agenda公司采用、作為其新產(chǎn)品”VRDA”的嵌入式Linux操作系統(tǒng)。它可以提供跨操作系統(tǒng)構(gòu)造統(tǒng)一的、標(biāo)準(zhǔn)化的和開(kāi)放的信息通信基礎(chǔ)結(jié)構(gòu),在此結(jié)構(gòu)上實(shí)現(xiàn)端到端方案的完整平臺(tái)。PoketLinux資源框架開(kāi)放,使普通的軟件結(jié)構(gòu)可以為所有用戶提供一致的服務(wù)。PoketLinux平臺(tái)使用戶的視線從設(shè)備、平臺(tái)和網(wǎng)絡(luò)上移開(kāi),由此引發(fā)了信息技術(shù)新時(shí)代的產(chǎn)生。在PoketLinux中,稱之為用戶化信息交換(CIE),也就是提供和訪問(wèn)為每個(gè)用戶需求而定制的”主題”信息的能力,而不管正在使用的設(shè)備是什么。
6、MidoriLinux
由Traneta公司推出的MidoriLinux操作系統(tǒng)代碼開(kāi)放,在GUN普通公共許可(GPL)下發(fā)布,可以在http://midori.tranet上立即獲得。該公司有個(gè)名為”MidoriLinux計(jì)劃”?!盡idoriLinux”這個(gè)名字來(lái)源于日本的”綠色”—Midori,用來(lái)反映其Linux操作系統(tǒng)的環(huán)保外觀。
7、紅旗嵌入式Linux
由北京中科院紅旗軟件公司推出的嵌入式Linux是國(guó)內(nèi)做得較好的一款嵌入式操作系統(tǒng)。目前,中科院計(jì)算所自行開(kāi)發(fā)的開(kāi)放源碼的嵌入式操作系統(tǒng)—Easy Embedded OS(EEOS)也已經(jīng)開(kāi)始進(jìn)入實(shí)用階段了。該款嵌入式操作系統(tǒng)重點(diǎn)支持p-Java。系統(tǒng)目標(biāo)一方面是小型化,另一方面能重用Linux的驅(qū)動(dòng)和其它模塊。由于有中科院計(jì)算所的強(qiáng)大科研力量做后盾,EEOS有望發(fā)展成為功能完善、穩(wěn)定、可靠的國(guó)產(chǎn)嵌入式操作系統(tǒng)平臺(tái)。
六、結(jié)束語(yǔ)
由于Linux是一個(gè)內(nèi)核源代碼開(kāi)放、具備一整套工具鏈、有強(qiáng)大的網(wǎng)絡(luò)支持及成本低廉的操作系統(tǒng),因此嵌入式Linux自誕生起就秉承了這眾多獨(dú)特優(yōu)勢(shì),這使它正在并越來(lái)越多地受到人們的關(guān)注。據(jù)Even Data數(shù)據(jù)顯示,期望使用嵌入式Linux的用戶從2023年的11%增到2023年27%,而同期Vxwork只是從16%到18%,Win CE從9%到14%。另外,在嵌入式Linux的各種應(yīng)用市場(chǎng)中,通信(語(yǔ)音和數(shù)據(jù))名列之一,2023年的銷(xiāo)售額是1300萬(wàn)美元,而2023年預(yù)計(jì)將達(dá)到1.26億美元,可以預(yù)見(jiàn),嵌入式Linux將在未來(lái)的通信用嵌入式操作系統(tǒng)中占據(jù)強(qiáng)有力的地位
Linux是目前十分火爆的操作系統(tǒng)。它是由芬蘭赫爾辛基大學(xué)的一個(gè)大學(xué)生Linus B. Torvolds在1991年首次編寫(xiě)的。標(biāo)志性圖標(biāo)是一個(gè)可愛(ài)的小企鵝。
Linux是一種類(lèi)Unix系統(tǒng),Linus當(dāng)時(shí)編寫(xiě)它的目的是為了替代一種名叫Minix的操作系統(tǒng)。Minix是由一個(gè)名叫Andrew Tannebaum的計(jì)算機(jī)教授編寫(xiě)的,當(dāng)時(shí)由于Unix是一個(gè)商業(yè)軟件,其源代碼是不能拿來(lái)進(jìn)行教學(xué)的,Andrew教授就自己編寫(xiě)了一個(gè)系統(tǒng)用于教學(xué)。最
初的Minix用一張軟盤(pán)就能裝下,麻雀雖小、五臟俱全,Minix具有一般操作系統(tǒng)的特征,它同時(shí)兼容Unix系統(tǒng)。
Linux是一個(gè)免費(fèi)的操作系統(tǒng),用戶可以免費(fèi)獲得其源代碼,并能夠隨意修改。它是在共用許可證GPL(General Public License)保護(hù)下的自由軟件,也有好幾種版本,如Red Hat Linux、Slackware,以及國(guó)內(nèi)的Xteam Linux等。
Linux具有許多Unix系統(tǒng)的功能和特點(diǎn),能夠兼容Unix,但無(wú)需支付Unix高額的費(fèi)用。比如一個(gè)Unix程序員在單位可以在Unix系統(tǒng)上進(jìn)行工作,回到家里在Linux系統(tǒng)上也能完成同樣的工作,而不必重新購(gòu)買(mǎi)Unix。要知道Unix的價(jià)格比常見(jiàn)的Windows要高出若干倍,和Linux的低廉更是相距甚遠(yuǎn)。
Linux的應(yīng)用也十分廣泛。Sony最新的PS2游戲機(jī)就采用了Linux作為系統(tǒng)軟件,使PS2搖身一變,成為了一臺(tái)Linux工作站。著名的電影《泰坦尼克號(hào)》的數(shù)字技術(shù)合成工作就是利用100多臺(tái)Linux服務(wù)器來(lái)完成的。
2023年8月17日,Linux發(fā)布了最新的Linux 2.4.9版,它也已經(jīng)十歲了。
Linux的優(yōu)點(diǎn)
Linux的流行是因?yàn)樗哂性S多誘人之處。
1、完全免費(fèi)
Linux是一款免費(fèi)的操作系統(tǒng),用戶可以通過(guò)網(wǎng)絡(luò)或其他途徑免費(fèi)獲得,并可以任意修改其源代碼。這是其他的操作系統(tǒng)所做不到的。正是由于這一點(diǎn),來(lái)自全世界的無(wú)數(shù)程序員參與了Linux的修改、編寫(xiě)工作,程序員可以根據(jù)自己的興趣和靈感對(duì)其進(jìn)行改變。這讓Linux吸收了無(wú)數(shù)程序員的精華,不斷壯大。
2、完全兼容POSIX 1.0標(biāo)準(zhǔn)
這使得可以在Linux下通過(guò)相應(yīng)的模擬器運(yùn)行常見(jiàn)的DOS、Windows的程序。這為用戶從Windows轉(zhuǎn)到Linux奠定了基礎(chǔ)。許多用戶在考慮使用Linux時(shí),就想到以前在Windows下常見(jiàn)的程序是否能正常運(yùn)行,這一點(diǎn)就消除了他們的疑慮。
3、多用戶、多任務(wù)
Linux支持多用戶,各個(gè)用戶對(duì)于自己的文件設(shè)備有自己特殊的權(quán)利,保證了各用戶之間互不影響。多任務(wù)則是現(xiàn)在電腦最主要的一個(gè)特點(diǎn),Linux可以使多個(gè)程序同時(shí)并獨(dú)立地運(yùn)行。
4、良好的界面
Linux同時(shí)具有字符界面和圖形界面。在字符界面用戶可以通過(guò)鍵盤(pán)輸入相應(yīng)的指令來(lái)進(jìn)行操作。它同時(shí)也提供了類(lèi)似Windows圖形界面的X-Windows系統(tǒng),用戶可以使用鼠標(biāo)對(duì)其進(jìn)行操作。在X-Windows環(huán)境中就和在Windows中相似,可以說(shuō)是一個(gè)Linux版的Windows。
5、豐富的網(wǎng)絡(luò)功能
互聯(lián)網(wǎng)是在Unix的基礎(chǔ)上繁榮起來(lái)的,Linux的網(wǎng)絡(luò)功能當(dāng)然不會(huì)遜色。它的網(wǎng)絡(luò)功能和其內(nèi)核緊密相連,在這方面Linux要優(yōu)于其他操作系統(tǒng)。在Linux中,用戶可以輕松實(shí)現(xiàn)網(wǎng)頁(yè)瀏覽、文件傳輸、遠(yuǎn)程登陸等網(wǎng)絡(luò)工作。并且可以作為服務(wù)器提供WWW、FTP、E-Mail等服務(wù)。
6、可靠的安全、穩(wěn)定性能
Linux采取了許多安全技術(shù)措施,其中有對(duì)讀、寫(xiě)進(jìn)行權(quán)限控制、審計(jì)跟蹤、核心授權(quán)等技術(shù),這些都為安全提供了保障。Linux由于需要應(yīng)用到網(wǎng)絡(luò)服務(wù)器,這對(duì)穩(wěn)定性也有比較高的要求,實(shí)際上Linux在這方面也十分出色。
7、支持多種平臺(tái)
Linux可以運(yùn)行在多種硬件平臺(tái)上,如具有x86、680×0、SPARC、Alpha等處理器的平臺(tái)。此外Linux還是一種嵌入式操作系統(tǒng),可以運(yùn)行在掌上電腦、機(jī)頂盒或游戲機(jī)上。2023年1月份發(fā)布的Linux 2.4版內(nèi)核已經(jīng)能夠完全支持Intel 64位芯片架構(gòu)。同時(shí)Linux也支持多處理器技術(shù)。多個(gè)處理器同時(shí)工作,使系統(tǒng)性能大大提高。
Linux的不足
由于在現(xiàn)在的個(gè)人電腦操作系統(tǒng)行業(yè)中,微軟的Windows系統(tǒng)仍然占有大部分的份額,絕大多數(shù)的軟件公司都支持Windows。這使得Windows上的應(yīng)用軟件應(yīng)有盡有,而其他的操作系統(tǒng)就要少一些。許多用戶在換操作系統(tǒng)的時(shí)候都會(huì)考慮以前的軟件能否繼續(xù)使用,換了操作系統(tǒng)后是否會(huì)不方便。雖然Linux具有DOS、Windows模擬器,可以運(yùn)行一些Windows程序,但Windows系統(tǒng)極其復(fù)雜,模擬器所模擬的運(yùn)行環(huán)境不可能完全與真實(shí)的Windows環(huán)境一模一樣,這就使得一些軟件無(wú)法正常運(yùn)行。
許多硬件設(shè)備面對(duì)Linux的驅(qū)動(dòng)程序也不足,不少硬件廠商是在推出Windows版本的驅(qū)動(dòng)程序后才編寫(xiě)Linux版的。但一些大硬件廠商在這方面做得還不錯(cuò),他們的Linux版驅(qū)動(dòng)程序一般都推出得比較及時(shí)。
軟件支持的不足是Linux更大的缺憾,但隨著Linux的發(fā)展,越來(lái)越多的軟件廠商會(huì)支持Linux,它應(yīng)用的范圍也越來(lái)越廣。這只小企鵝的前景是十分光明的。
linux內(nèi)核基礎(chǔ)框架的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux內(nèi)核基礎(chǔ)框架,探索Linux內(nèi)核基礎(chǔ)框架,深入解讀開(kāi)源操作系統(tǒng),stllinuxwindow性能,LINUX系統(tǒng)介紹的信息別忘了在本站進(jìn)行查找喔。
成都服務(wù)器租用選創(chuàng)新互聯(lián),先試用再開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡(jiǎn)單好用,價(jià)格厚道的香港/美國(guó)云服務(wù)器和獨(dú)立服務(wù)器。物理服務(wù)器托管租用:四川成都、綿陽(yáng)、重慶、貴陽(yáng)機(jī)房服務(wù)器托管租用。
本文名稱:探索Linux內(nèi)核基礎(chǔ)框架,深入解讀開(kāi)源操作系統(tǒng) (linux內(nèi)核基礎(chǔ)框架)
本文鏈接:http://m.fisionsoft.com.cn/article/cdshhhj.html


咨詢
建站咨詢
