陳博宇
摘要:隨著社會(huì)經(jīng)濟(jì)的不斷發(fā)展與科學(xué)技術(shù)的迅速進(jìn)步,人們的生活越來(lái)越依賴于科技的應(yīng)用,尤其是計(jì)算機(jī)技術(shù)相關(guān)的應(yīng)用。本文著重對(duì)于Linux嵌入式系統(tǒng)技術(shù)進(jìn)行簡(jiǎn)單的介紹并且對(duì)其特點(diǎn)進(jìn)行分析,研究其網(wǎng)絡(luò)編程的方法,讓人們對(duì)于Linux嵌入式系統(tǒng)技術(shù)有一個(gè)更加全面、詳細(xì)、客觀的了解,同時(shí)也希望Linux嵌入式系統(tǒng)技術(shù)能夠?qū)崿F(xiàn)更加快速的發(fā)展,實(shí)現(xiàn)Linux嵌入式系統(tǒng)技術(shù)的不斷發(fā)展與完善。
關(guān)鍵詞:Linux嵌入式系統(tǒng)技術(shù); 網(wǎng)絡(luò)編程
一. 前言
隨著社會(huì)科學(xué)技術(shù)的發(fā)展,人們不僅對(duì)于科技產(chǎn)品的需求越來(lái)越大,而且對(duì)于新科技的關(guān)注度也與日俱增。
提到Linux嵌入式系統(tǒng)技術(shù),大部分人可能都會(huì)覺(jué)得有些陌生,對(duì)其并不是十分的熟悉。但是Linux的嵌入式系統(tǒng)技術(shù)在人們的實(shí)際生活中發(fā)揮出了很大的作用,而且隨著科學(xué)技術(shù)的不斷進(jìn)步與發(fā)展,相關(guān)企業(yè)對(duì)其投入的研發(fā)資金不斷增加,Linux嵌入式系統(tǒng)技術(shù)也處于不斷地發(fā)展與完善之中,更好的適應(yīng)人們的需求,也正是因?yàn)槿绱?,Linux操作系統(tǒng)的功能不斷完善,應(yīng)用領(lǐng)域不斷的擴(kuò)大,而且在目前的市場(chǎng)之中,也具有一定的市場(chǎng)份額,且市場(chǎng)份額仍處于快速的增加與擴(kuò)大之中。[1]
顧名思義,Linux嵌入式系統(tǒng)技術(shù)的主要應(yīng)用領(lǐng)域就包括兩個(gè),一個(gè)是嵌入式系統(tǒng)的應(yīng)用,一個(gè)是服務(wù)系統(tǒng)的應(yīng)用。雖然僅僅有兩個(gè)應(yīng)用領(lǐng)域,看似十分狹小,但是實(shí)際上Linux嵌入式系統(tǒng)技術(shù)的應(yīng)用范圍已經(jīng)相當(dāng)廣泛了。[2]Linux是使用類的UNIX系統(tǒng)之一,不僅能夠在個(gè)人計(jì)算機(jī)上發(fā)揮出極大的作用,例如INTEL、AMD等系列的個(gè)人計(jì)算機(jī),而且在許多的工作站級(jí)的電腦中也能夠發(fā)揮出相當(dāng)大的作用。
二. Linux嵌入式系統(tǒng)技術(shù)的定義與Linux操作系統(tǒng)概述
(一)嵌入式Linux操作系統(tǒng)的定義
嵌入式系統(tǒng)的出現(xiàn),是科技史上一個(gè)非常重要的進(jìn)步,嵌入式系統(tǒng)并不是一個(gè)簡(jiǎn)單的應(yīng)用了計(jì)算機(jī)技術(shù)所構(gòu)建起的計(jì)算機(jī)系統(tǒng),其構(gòu)成基礎(chǔ)還包括有半導(dǎo)體技術(shù)以及電子技術(shù),甚至還要與各個(gè)行業(yè)的具體技術(shù)相結(jié)合,這樣所構(gòu)建的嵌入式系統(tǒng)才能夠滿足多種多樣的需要與各個(gè)行業(yè)的具體需求。詳細(xì)的對(duì)嵌入式系統(tǒng)進(jìn)行一個(gè)定義,可以把它理解成為如下所說(shuō)的內(nèi)涵:嵌入式系統(tǒng)是一個(gè)以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為來(lái)源根基、軟硬件可兼采、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。[3]
通過(guò)以上對(duì)嵌入式系統(tǒng)的一個(gè)定義,不僅讓我們更加了解嵌入式系統(tǒng)的內(nèi)涵,而且也讓我們對(duì)于嵌入式的Linux操作系統(tǒng)有了一個(gè)簡(jiǎn)單、概括性的了解,為我們接下來(lái)的深入了解奠定一個(gè)較好的基礎(chǔ)。嵌入式linux操作系統(tǒng)是指小型化的Linux,其實(shí)現(xiàn)小型化的方式是通過(guò)裁剪,這樣一來(lái)不僅能夠?qū)崿F(xiàn)在存儲(chǔ)器和單片機(jī)中的固化保存,而且是應(yīng)用于必定嵌入式局面的,特用的Linux操作系統(tǒng)類型。[4]
(二)Linux嵌入式系統(tǒng)與其他系統(tǒng)相比所具有的特點(diǎn)
簡(jiǎn)單的從定義來(lái)認(rèn)識(shí)Linux嵌入式系統(tǒng)技術(shù)是遠(yuǎn)遠(yuǎn)不足的,通過(guò)Linux嵌入式系統(tǒng)技術(shù)與其他操作系統(tǒng)的 對(duì)比,我們可以歸納出Linux系統(tǒng)的特點(diǎn),來(lái)實(shí)現(xiàn)對(duì)Linux嵌入式系統(tǒng)技術(shù)更為詳細(xì)、全面、客觀的認(rèn)識(shí)。
Linux嵌入式系統(tǒng)相對(duì)于其他操作系統(tǒng)有如下幾方面的特點(diǎn):
(1)Linux系統(tǒng)能夠?qū)崿F(xiàn)與其他系統(tǒng)之間的相互兼容[5]
尤其是與Unix系統(tǒng)相比,Linux系統(tǒng)不僅能夠與其實(shí)現(xiàn)相互之間的兼容,而且Unix系統(tǒng)的大多數(shù)特征,甚至可以說(shuō)是所有特征,Linux系統(tǒng)都是擁有的,如此一來(lái),Linux系統(tǒng)的優(yōu)越性就大大的體現(xiàn)了出來(lái)。除此之外,Linux系統(tǒng)相對(duì)于Unix系統(tǒng)更加適合國(guó)際上的標(biāo)準(zhǔn),能夠?qū)崿F(xiàn)國(guó)際上的互通互用。
(2)Linux系統(tǒng)有著更加自由的軟件與開(kāi)放的源代碼
相對(duì)于其他的操作系統(tǒng)而言,Linux系統(tǒng)從最開(kāi)始的研發(fā)到最終的投入使用,都與Gnu項(xiàng)目緊密的聯(lián)系在一起,甚至可以說(shuō),Linux系統(tǒng)的建立離不開(kāi)Gnu項(xiàng)目,正是Gnu項(xiàng)目為L(zhǎng)inux系統(tǒng)提供了相當(dāng)重要的組成部分,Linux系統(tǒng)的某些重要組成部分甚至直接是來(lái)自于Gnu項(xiàng)目的。在這樣的良好前提下,只要人們能夠遵守GPL的相關(guān)條款與規(guī)定,那么對(duì)于Linux的源代碼,無(wú)論是哪個(gè)地區(qū)、任何國(guó)家的任何人,都能夠自由且便利的加以使用。[6]
(3)Linux操作系統(tǒng)的網(wǎng)絡(luò)性能更高、安全性更強(qiáng)
Linux系統(tǒng)所支持的因特網(wǎng)協(xié)議多種多樣,包括了所有的標(biāo)準(zhǔn)因特網(wǎng)協(xié)議,Linux系統(tǒng)都是加以支持的。因此在Linux操作系統(tǒng)中,不僅包含了網(wǎng)絡(luò)管理及服務(wù)的各種工具,而且這些網(wǎng)絡(luò)管理、服務(wù)的工具數(shù)量也是非??捎^的,利用這些高效、功能多樣的工具,不僅能讓Linux系統(tǒng)能夠提供更多種多樣,各種類型的高性能服務(wù),而且也可以利用這些工具建立起更加高效的防火墻、工作站等多種安全防護(hù)功能。
(4)Linux系統(tǒng)所支持的硬件平臺(tái)更廣
Linux系統(tǒng)所支持的硬件平臺(tái)相對(duì)于其他操作系統(tǒng)而言更加的多樣化與豐富化,支持多種處理器,為不同處理器的應(yīng)用系統(tǒng)都能夠提供很好的支持。[7]
(三)Linux操作系統(tǒng)存在的不足——實(shí)時(shí)性不足
由于Linux系統(tǒng)對(duì)于CPU時(shí)間的調(diào)度是通過(guò)一個(gè)較為特殊的模式進(jìn)行的,由此所導(dǎo)致了Linux嵌入式系統(tǒng)技術(shù)的實(shí)時(shí)性不足。Linux系統(tǒng)通過(guò)對(duì)固定的時(shí)間片進(jìn)行調(diào)節(jié),進(jìn)而實(shí)現(xiàn)對(duì)CPU時(shí)間的調(diào)度,這樣一來(lái),在調(diào)度過(guò)程中就產(chǎn)生了一個(gè)相對(duì)較久的時(shí)間差。而Linux操作系統(tǒng)實(shí)時(shí)性不足主要體現(xiàn)在下述幾個(gè)方面:
(1)在大多數(shù)的操作系統(tǒng)內(nèi)核中,系統(tǒng)進(jìn)行對(duì)于內(nèi)核的使用往往采取搶占式的方式,因此效率更高,而且能夠更好的保障各種進(jìn)程的優(yōu)先等級(jí)。然而在Linux操作系統(tǒng)的內(nèi)核中,并不是這樣的,因此在普通進(jìn)程的運(yùn)行過(guò)程中實(shí)時(shí)進(jìn)程的優(yōu)先等級(jí)反而不如普通進(jìn)程的優(yōu)先等級(jí)高。而且由于在實(shí)時(shí)調(diào)度中,Linux嵌入式系統(tǒng)所設(shè)置的策略較為特殊,運(yùn)用的是RR和FIFO算法,因此不能夠完全的、嚴(yán)格的保證實(shí)時(shí)進(jìn)程能夠擁有較高的優(yōu)先等級(jí),更不能保證這些擁有較高優(yōu)先等級(jí)的實(shí)時(shí)進(jìn)行能夠優(yōu)于普通進(jìn)程的進(jìn)行。[8]endprint
(2)在Linux嵌入式系統(tǒng)中,操作系統(tǒng)的響應(yīng)時(shí)間相對(duì)其他的操作系統(tǒng)而言比較久,因此對(duì)于一些對(duì)響應(yīng)時(shí)間要求比較嚴(yán)格,需要極短的響應(yīng)時(shí)間的實(shí)時(shí)系統(tǒng),Linux嵌入式系統(tǒng)是無(wú)能無(wú)力的。
(3)在Linux嵌入式系統(tǒng)內(nèi)核中,進(jìn)程不是始終保持著通暢且連續(xù)的,甚至經(jīng)常發(fā)生中斷關(guān)閉的現(xiàn)象。[9]
(四)Linux操作系統(tǒng)的網(wǎng)絡(luò)編程相關(guān)
Linux嵌入式系統(tǒng)具有非常多且非常優(yōu)秀的網(wǎng)絡(luò)功能,毫不夸張的講,Linux嵌入式系統(tǒng)甚至是優(yōu)于大部分的操作系統(tǒng)的,尤其是在通訊和網(wǎng)絡(luò)功能兩個(gè)方面。但是不可否認(rèn)的是,在Linux系統(tǒng)中還存在的許多的不安全因素。[10]
在Linux嵌入式系統(tǒng)中存在的不安全因素主要是由于計(jì)算機(jī)系統(tǒng)的管理不當(dāng)而造成的,由于系統(tǒng)漏洞而造成的系統(tǒng)被非法入侵的因素可謂是少之又少。[11]在我們?nèi)粘5挠?jì)算機(jī)安全中,常見(jiàn)的安全漏洞主要包括有特洛伊木馬程序、特權(quán)軟件的安全漏洞、研究源代碼的漏洞以及網(wǎng)絡(luò)監(jiān)聽(tīng)和數(shù)據(jù)截取。
三.結(jié)論
相對(duì)于許多的操作系統(tǒng)而言,Linux系統(tǒng)具有相當(dāng)大的優(yōu)勢(shì),而且Linux嵌入式系統(tǒng)在網(wǎng)絡(luò)方面而言,內(nèi)核結(jié)構(gòu)是非常完善的,這為L(zhǎng)inux嵌入式系統(tǒng)的廣泛應(yīng)用提供了良好的基礎(chǔ)。而且Linux操作系統(tǒng)能夠在統(tǒng)一的套接字接口socket下,使系統(tǒng)支持多種類型的套接字地址簇,這不僅為互聯(lián)網(wǎng)應(yīng)用程序的的編程以及應(yīng)用程序之間的數(shù)據(jù)通信提供了極大的便利與方便,這更是為L(zhǎng)inux嵌入式系統(tǒng)技術(shù)進(jìn)一步拓寬使用與銷售市場(chǎng)奠定了良好的基礎(chǔ),提供了方便的條件。
參考文獻(xiàn):
[1]李艷華. 基于LINUX的視頻監(jiān)控系統(tǒng)設(shè)計(jì)[D].中南林業(yè)科技大學(xué),2015.
[2]李政. 基于Zigbee智能網(wǎng)關(guān)的開(kāi)發(fā)[D].北方工業(yè)大學(xué),2014.
[3]龐天聰. 基于Linux的網(wǎng)絡(luò)通信游戲的設(shè)計(jì)與實(shí)現(xiàn)[D].北京交通大學(xué),2014.
[4]王慶吉. 可控源電磁探測(cè)數(shù)據(jù)存儲(chǔ)及通信技術(shù)研究[D].吉林大學(xué),2012.
[5]陳玉云. 網(wǎng)絡(luò)廣告效果分析系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)[D].上海交通大學(xué),2012.
[6]葛凱華. 基于ARM9的集裝箱圖像采集及箱號(hào)識(shí)別系統(tǒng)的設(shè)計(jì)[D].南京理工大學(xué),2012.endprint