• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      嵌入式系統(tǒng)設(shè)計(jì)中關(guān)鍵技術(shù)的研究

      2009-06-22 03:41王頌文孫乃川
      新媒體研究 2009年20期
      關(guān)鍵詞:實(shí)時(shí)性IP地址路由

      王頌文 孫乃川

      [摘要]針對(duì)嵌入式系統(tǒng)設(shè)計(jì)的關(guān)鍵問(wèn)題,研究?jī)膳_(tái)終端網(wǎng)絡(luò)通信實(shí)現(xiàn)路由功能,通過(guò)內(nèi)核改造提高系統(tǒng)的實(shí)時(shí)性,編寫(xiě)基于PCI總線的硬盤(pán)控制器驅(qū)動(dòng)模塊,將PCI設(shè)備采集的數(shù)據(jù)不經(jīng)過(guò)系統(tǒng)內(nèi)存,以DMA直接傳輸?shù)接脖P(pán)陣列中,實(shí)現(xiàn)數(shù)據(jù)的高速存儲(chǔ),從而使系統(tǒng)得到優(yōu)化。

      [關(guān)鍵詞]嵌入式系統(tǒng)路由功能數(shù)據(jù)存儲(chǔ)實(shí)時(shí)性

      中圖分類(lèi)號(hào):TP2文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671—7597(2009)1020083—01

      一、嵌入式系統(tǒng)的構(gòu)建

      嵌入式系統(tǒng)由嵌入式硬件系統(tǒng)和嵌入式軟件系統(tǒng)組成。硬件系統(tǒng)主要由處于核心地位的嵌入式處理器、相關(guān)支撐硬件、外圍電路等組成;軟件系統(tǒng)包括操作系統(tǒng)和應(yīng)用軟件。Mnux操作系統(tǒng)憑借其開(kāi)放性、模塊化、能夠支持多種體系結(jié)構(gòu)、可移植性好、效率高、直接提供網(wǎng)絡(luò)支持,成為該領(lǐng)域開(kāi)發(fā)的重要參考平臺(tái)。

      由于嵌入式系統(tǒng)的硬件資源有限,開(kāi)發(fā)設(shè)計(jì)時(shí)不能直接把Linux作為操作系統(tǒng),需要針對(duì)具體的應(yīng)用,通過(guò)內(nèi)核配置、裁減shell等進(jìn)行定制。Linux的基本組件包括:內(nèi)存管理、進(jìn)程和調(diào)度管理,根文件系統(tǒng),IDE/MEM驅(qū)動(dòng)程序和一些必要的I/0子系統(tǒng)。可裁減的組件包括:網(wǎng)絡(luò)協(xié)議、文件系統(tǒng)、字符及模塊設(shè)備驅(qū)動(dòng)程序、網(wǎng)絡(luò)設(shè)備部件[1]。設(shè)計(jì)時(shí)根據(jù)具體需要,定制出最小適用內(nèi)核,修改內(nèi)存、網(wǎng)口的配置等部分硬件驅(qū)動(dòng)來(lái)滿足實(shí)際系統(tǒng)要求,針對(duì)具體板級(jí)設(shè)備的驅(qū)動(dòng)程序進(jìn)行移植修改,使內(nèi)核能進(jìn)行編譯、下載和運(yùn)行。

      二、實(shí)現(xiàn)網(wǎng)絡(luò)終端路由功能

      帶有路由器功能的嵌入式網(wǎng)絡(luò)終端,通常采用包括進(jìn)行路由表維護(hù)、轉(zhuǎn)換內(nèi)外網(wǎng)地址、分組校驗(yàn)和重新計(jì)算的方式實(shí)現(xiàn)路由功能,這種方式對(duì)硬件需求、硬件成本較高,并且需要內(nèi)部網(wǎng)絡(luò)終端解決由于網(wǎng)絡(luò)地址轉(zhuǎn)換造成的某些問(wèn)題。

      針對(duì)僅有兩臺(tái)終端,且其中之一為嵌入式網(wǎng)絡(luò)終端的情況,基于ADSL接入方式,通過(guò)嵌入式網(wǎng)絡(luò)終端中實(shí)現(xiàn)簡(jiǎn)單有效的路由功能,向內(nèi)部網(wǎng)絡(luò)的另外一臺(tái)終端提供公網(wǎng)IP地址等網(wǎng)絡(luò)參數(shù),避免了上述網(wǎng)絡(luò)地址轉(zhuǎn)換等復(fù)雜操作,占用較少資源,適合用在資源有限的嵌入式網(wǎng)絡(luò)終端中。

      實(shí)現(xiàn)路由功能的方法:嵌入式網(wǎng)絡(luò)終端的物理層設(shè)備一般采用以太網(wǎng)卡。以PPPoE完成與ADSL適配器的通信;在嵌入式網(wǎng)絡(luò)終端中置入交換機(jī)芯片或集線器,作為與另外一臺(tái)終端通信的物理層設(shè)備;嵌入式終端內(nèi)置DHCP服務(wù)器提供內(nèi)部網(wǎng)絡(luò)的另外一臺(tái)終端提供的網(wǎng)絡(luò)參數(shù)。1、分組接收和轉(zhuǎn)發(fā)。嵌入式網(wǎng)絡(luò)終端可用PPP和PPPoE完成撥號(hào)連接網(wǎng)絡(luò)以及IP分組的接收與轉(zhuǎn)發(fā),由于向內(nèi)部網(wǎng)絡(luò)中另一臺(tái)終端提供的IP地址與嵌入式網(wǎng)絡(luò)終端自身相同,從而避免了實(shí)現(xiàn)路由表和網(wǎng)絡(luò)地址轉(zhuǎn)換等占用資源較多的功能和由網(wǎng)絡(luò)地址轉(zhuǎn)換引起的IP首部以及TCP/UDP分組校驗(yàn)和的重新計(jì)算,僅需要實(shí)現(xiàn)分組的轉(zhuǎn)發(fā)和接收。針對(duì)特定的網(wǎng)絡(luò)應(yīng)用對(duì)分組的接收進(jìn)行過(guò)濾,避免嵌入式終端對(duì)無(wú)關(guān)分組的多余處理,通過(guò)在路由模塊中添加接收表實(shí)現(xiàn)對(duì)無(wú)關(guān)分組的過(guò)濾,進(jìn)一步減少路由功能占用的嵌入式終端系統(tǒng)資源。2、內(nèi)部終端與嵌入式網(wǎng)絡(luò)終端的以太網(wǎng)通信:嵌入式終端與內(nèi)部網(wǎng)絡(luò)終端通過(guò)嵌入式終端內(nèi)部的集線器或交換機(jī)芯片實(shí)現(xiàn)以太網(wǎng)物理連接;由于嵌入式網(wǎng)絡(luò)終端向內(nèi)網(wǎng)終端提供的IP地址與其自身相同,當(dāng)網(wǎng)絡(luò)終端以以太網(wǎng)方式接入網(wǎng)絡(luò)時(shí),由于要向其提供網(wǎng)關(guān)IP地址以及子網(wǎng)掩碼,就要虛擬出另一個(gè)IP地址作為內(nèi)網(wǎng)終端的網(wǎng)關(guān)IP地址。通過(guò)在嵌入式網(wǎng)絡(luò)終端協(xié)議棧的ARP處理模塊中加入ARP代理,實(shí)現(xiàn)嵌入式網(wǎng)絡(luò)終端的透明路由-保證另外一臺(tái)終端所有的網(wǎng)絡(luò)分組均發(fā)送至嵌入式網(wǎng)絡(luò)終端。此外,對(duì)于Pc機(jī)等標(biāo)準(zhǔn)的網(wǎng)絡(luò)終端,以DHCP獲取到網(wǎng)絡(luò)參數(shù)后,要拒絕回應(yīng)對(duì)自身公網(wǎng)IP地址的免費(fèi)ARP請(qǐng)求[2],會(huì)使用免費(fèi)ARP的方式檢測(cè)獲取的IP地址是否已被占用。

      三、系統(tǒng)實(shí)時(shí)性的改造

      實(shí)時(shí)性對(duì)嵌式系統(tǒng)來(lái)說(shuō)是至關(guān)重要的,特別是在硬實(shí)時(shí)性應(yīng)用的場(chǎng)合,實(shí)時(shí)性要求更高。由于LinuX本質(zhì)上是分時(shí)系統(tǒng),實(shí)時(shí)性有一瘧缺陷:周期模式定時(shí)器頻較低、中斷柄不可調(diào)度、易于引起由于進(jìn)程采用多級(jí)輪轉(zhuǎn)調(diào)度算法造成的截止時(shí)間無(wú)法完成任務(wù)、中斷和調(diào)度時(shí)延等。Linux是通用操作系統(tǒng),而實(shí)時(shí)系統(tǒng)是面向用戶和應(yīng)用的,因此在構(gòu)造實(shí)時(shí)系統(tǒng)時(shí),可根據(jù)具體需要進(jìn)行定制和修改。

      實(shí)時(shí)內(nèi)核的改造:1、雙內(nèi)核方法。通過(guò)在Linux操作系統(tǒng)的最底層增加一層實(shí)時(shí)核心層,實(shí)現(xiàn)同一個(gè)硬件平臺(tái)上兩個(gè)相互配合工作的系統(tǒng)核心,分別提供實(shí)時(shí)多任務(wù)管理和非實(shí)時(shí)通用功能,技術(shù)關(guān)鍵要求運(yùn)行在常規(guī)Linux核心上的所有非實(shí)時(shí)任務(wù)必須支持可搶占式調(diào)度。實(shí)時(shí)核心負(fù)責(zé)硬件及實(shí)時(shí)任務(wù)管理,不通過(guò)操作中斷控制寄存器,當(dāng)中斷信號(hào)需要實(shí)時(shí)進(jìn)程來(lái)處理時(shí),實(shí)時(shí)進(jìn)程則搶占Linux內(nèi)核;Linux核心任務(wù)來(lái)調(diào)度的優(yōu)先級(jí)最低,只有沒(méi)有可運(yùn)行的實(shí)時(shí)任務(wù)時(shí)才會(huì)被調(diào)度,通過(guò)共享內(nèi)存和FIFO設(shè)備接口實(shí)現(xiàn)實(shí)時(shí)進(jìn)程和普通進(jìn)程需要通訊,當(dāng)中斷信號(hào)需要Linux內(nèi)核來(lái)處理時(shí),由實(shí)時(shí)內(nèi)核將信號(hào)傳給Linux內(nèi)核。2、兼容內(nèi)核方法。充分考慮系統(tǒng)實(shí)時(shí)性的要求,設(shè)計(jì)一種完全獨(dú)立、但其API與Linux核心相兼容的實(shí)時(shí)核心,作為L(zhǎng)inux實(shí)時(shí)系統(tǒng)的獨(dú)立核。3、資源內(nèi)核方法。實(shí)時(shí)核心提供了實(shí)時(shí)應(yīng)用可構(gòu)建的基礎(chǔ),允許實(shí)時(shí)應(yīng)用可配置,可以通過(guò)動(dòng)態(tài)地改變實(shí)時(shí)任務(wù)屬性以及在整個(gè)系統(tǒng)中的優(yōu)先級(jí),實(shí)現(xiàn)以資源為中心指導(dǎo)實(shí)時(shí)核心提供精確的、可搶占的獲取系統(tǒng)資源。

      四、高速數(shù)據(jù)存儲(chǔ)

      嵌入式Linux下高速數(shù)據(jù)存儲(chǔ),最基本、最主要的操作是數(shù)據(jù)的傳輸,在高速下控制數(shù)據(jù)的傳輸是保證高速存儲(chǔ)數(shù)據(jù)的關(guān)鍵。一般的程序控制傳送方式是以CPU為中心,CPU提供傳送數(shù)據(jù)的源地址和目的地址、對(duì)地址的修改和對(duì)數(shù)據(jù)長(zhǎng)度的計(jì)數(shù),并判斷數(shù)據(jù)傳送是否完成。這種方式傳送每字節(jié)數(shù)據(jù)CFU都要執(zhí)行若干條指令,這就必然增加除讀/寫(xiě)數(shù)據(jù)以外的額外的時(shí)間開(kāi)銷(xiāo),數(shù)據(jù)存儲(chǔ)速度慢。

      在嵌入式Linux基礎(chǔ)上,SCSI控制器外接多個(gè)SCSI硬盤(pán),利用RAID技術(shù)把多塊獨(dú)立的物理硬盤(pán)按不同方式組合,形成一個(gè)邏輯硬盤(pán)組,同時(shí)對(duì)多塊磁盤(pán)存取數(shù)據(jù),從而提供比單塊硬盤(pán)更高的存儲(chǔ)性能和數(shù)據(jù)冗余的技術(shù)[3],通過(guò)編寫(xiě)基于PCI總線的硬盤(pán)控制器驅(qū)動(dòng)模塊,將PCI設(shè)各采集的數(shù)據(jù)通DMA直接傳輸?shù)接脖P(pán)陣列中,中間不經(jīng)過(guò)系統(tǒng)內(nèi)存。采用直接存儲(chǔ)器訪問(wèn)即DMA技術(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)傳輸,不要CPU介入,在存儲(chǔ)器和外部設(shè)備之間直接進(jìn)行高速數(shù)據(jù)傳送,能夠大大提高數(shù)據(jù)的傳輸速度,提高數(shù)據(jù)的存儲(chǔ)效率。

      猜你喜歡
      實(shí)時(shí)性IP地址路由
      數(shù)據(jù)通信中路由策略的匹配模式
      一種用于6LoWPAN的多路徑路由協(xié)議
      OSPF外部路由引起的環(huán)路問(wèn)題
      計(jì)算機(jī)控制系統(tǒng)實(shí)時(shí)性的提高策略
      可編程控制器的實(shí)時(shí)處理器的研究
      基于B/S的實(shí)時(shí)用戶行為檢測(cè)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      《IP地址及其管理》教學(xué)設(shè)計(jì)
      計(jì)算機(jī)的網(wǎng)絡(luò)身份IP地址
      輕松明白網(wǎng)絡(luò)IP地址以及子網(wǎng)劃分問(wèn)題
      鹤壁市| 白水县| 盐城市| 漯河市| 鹿邑县| 隆回县| 株洲市| 洮南市| 即墨市| 南昌县| 安福县| 赤峰市| 泸水县| 荔波县| 南陵县| 焉耆| 辽源市| 余庆县| 邹城市| 新郑市| 石景山区| 永康市| 长宁区| 昌江| 卫辉市| 香河县| 诸城市| 农安县| 湟源县| 万源市| 利川市| 萨迦县| 金沙县| 延津县| 岱山县| 吴桥县| 浠水县| 澄江县| 老河口市| 镇巴县| 怀仁县|