基于VxWorks的雙端口網(wǎng)卡智能雙冗余驅(qū)動(dòng)_第1頁(yè)
基于VxWorks的雙端口網(wǎng)卡智能雙冗余驅(qū)動(dòng)_第2頁(yè)
基于VxWorks的雙端口網(wǎng)卡智能雙冗余驅(qū)動(dòng)_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于VxWorks的雙端口網(wǎng)卡智能雙冗余驅(qū)動(dòng)隨著網(wǎng)絡(luò)技術(shù)的成熟,具有價(jià)格低廉、連接方便等優(yōu)點(diǎn)的以太網(wǎng)已成為各種控制系統(tǒng)接口互連的主要媒介。它作為一種通用網(wǎng)絡(luò)數(shù)據(jù)通信系統(tǒng),在全球計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域已經(jīng)得到了廣泛的應(yīng)用。隨著現(xiàn)代艦船信息化程度的不斷提高,以太網(wǎng)技術(shù)也開(kāi)始應(yīng)用于現(xiàn)代艦船信息系統(tǒng)中,不但要求信息傳輸速度快,抗干擾能力強(qiáng),還要求網(wǎng)絡(luò)具有高穩(wěn)定性和高可靠性,在網(wǎng)絡(luò)局部故障或受損時(shí),全系統(tǒng)不至于癱瘓失效。

冗余設(shè)計(jì)作為一種提高系統(tǒng)可靠性的有效方法,已經(jīng)得到了廣泛的應(yīng)用。對(duì)于網(wǎng)絡(luò)系統(tǒng)中的單個(gè)節(jié)點(diǎn),常常需要對(duì)網(wǎng)卡進(jìn)行雙冗余備份,即每個(gè)節(jié)點(diǎn)都采用兩個(gè)網(wǎng)絡(luò)接口,中間用兩個(gè)集線(xiàn)器或交換機(jī)互連,當(dāng)正常通信的網(wǎng)卡或線(xiàn)路出現(xiàn)故障時(shí)該節(jié)點(diǎn)能自動(dòng)地切換到備份網(wǎng)卡進(jìn)行通信。

目前大多數(shù)操作系統(tǒng)(如Windows、Unix、Linux等)都支持多網(wǎng)卡,但均非冗余設(shè)計(jì),每塊網(wǎng)卡都有獨(dú)立的物理地址和IP地址,以獨(dú)立的形式供應(yīng)用系統(tǒng)使用。要實(shí)現(xiàn)真正的智能雙冗余網(wǎng)絡(luò)系統(tǒng),必須自行設(shè)計(jì)專(zhuān)用的網(wǎng)絡(luò)驅(qū)動(dòng)程序,以透明的形式提交高層應(yīng)用系統(tǒng)使用,使系統(tǒng)感覺(jué)不到雙網(wǎng)卡的存在。本文使用盛博公司PC104結(jié)構(gòu)SCM/DETH型10M雙端口以太網(wǎng)卡,設(shè)計(jì)實(shí)現(xiàn)了基于VxWorks的智能雙冗余網(wǎng)絡(luò)驅(qū)動(dòng)。

1VxWorks系統(tǒng)網(wǎng)絡(luò)驅(qū)動(dòng)原理

1.1VxWorks系統(tǒng)簡(jiǎn)介

VxWorks操作系統(tǒng)是美國(guó)風(fēng)河公司(WindRiverSystem)推出的一款運(yùn)行在目標(biāo)機(jī)上的高性能、可裁減的嵌入式強(qiáng)實(shí)時(shí)操作系統(tǒng)。操作系統(tǒng)包括了進(jìn)程管理、存儲(chǔ)管理、設(shè)備管理、文件系統(tǒng)管理、網(wǎng)絡(luò)協(xié)議及系統(tǒng)應(yīng)用等幾個(gè)部分,只占用了很小的存儲(chǔ)空間,并可高度裁減,保證了系統(tǒng)能以較高的效率運(yùn)行。它以其良好的可靠性和卓越的實(shí)時(shí)性被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域中。

VxWorks主要有以下特點(diǎn):

(1)具有高度可剪裁的操作系統(tǒng)微內(nèi)核Wind;

(2)具有比較優(yōu)秀的網(wǎng)絡(luò)處理能力,適用于多種物理介質(zhì)的TCP/IP協(xié)議族支持;

(3)具有極其豐富的BSP,支持多處理器系統(tǒng),最多可以支持20個(gè)CPU;

(4)具有友好的開(kāi)發(fā)調(diào)試環(huán)境,便于操作、配置和應(yīng)用程序的開(kāi)發(fā)調(diào)試;

(5)具有較好的兼容性,支持POSIX1003.1b;

(6)支持多種開(kāi)發(fā)和運(yùn)行環(huán)境。支持C語(yǔ)言、C++語(yǔ)言以及JAVA虛擬機(jī)。

1.2VxWorks系統(tǒng)網(wǎng)絡(luò)驅(qū)動(dòng)原理

VxWorks中支持兩種類(lèi)型的網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序——BSD4.3網(wǎng)絡(luò)驅(qū)動(dòng)程序和可裁減的增強(qiáng)型網(wǎng)絡(luò)堆棧SENS(ScalableEnhancedNetworksStack)。BSD4.3標(biāo)準(zhǔn)提供了網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序與IP協(xié)議的緊密結(jié)合,而SENS協(xié)議棧提供了可替換的網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序,即增強(qiáng)型網(wǎng)絡(luò)驅(qū)動(dòng)程序END(EnhancedNetworksDriver)。

SENS模型包含三個(gè)部分:協(xié)議驅(qū)動(dòng)程序、多元接口層(MUX)和END型網(wǎng)絡(luò)驅(qū)動(dòng)。它獨(dú)立于硬件設(shè)備接口,將網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序細(xì)化,使開(kāi)發(fā)者可以專(zhuān)注于驅(qū)動(dòng)程序(END驅(qū)動(dòng))本身的開(kāi)發(fā)。本文設(shè)計(jì)實(shí)現(xiàn)的智能雙冗余驅(qū)動(dòng)即是一個(gè)符合SENS模型標(biāo)準(zhǔn)的END型網(wǎng)絡(luò)驅(qū)動(dòng)。在END型網(wǎng)絡(luò)驅(qū)動(dòng)中主要實(shí)現(xiàn)網(wǎng)卡設(shè)備的裝載,網(wǎng)絡(luò)芯片的初始化,網(wǎng)絡(luò)報(bào)文接收及發(fā)送等功能。在系統(tǒng)啟動(dòng)后,操作系統(tǒng)通過(guò)網(wǎng)卡加載函數(shù)調(diào)用到END型網(wǎng)絡(luò)驅(qū)動(dòng),在加載過(guò)程中完成網(wǎng)絡(luò)芯片的初始化、內(nèi)存池的分配、網(wǎng)卡設(shè)備控制結(jié)構(gòu)的填寫(xiě)等操作,最后通過(guò)指針傳遞的方式將網(wǎng)卡設(shè)備控制結(jié)構(gòu)和13個(gè)網(wǎng)卡操縱函數(shù)提交給MUX層,供上層系統(tǒng)操作網(wǎng)卡工作時(shí)使用。

2智能雙冗余驅(qū)動(dòng)程序?qū)崿F(xiàn)

2.1智能雙冗余驅(qū)動(dòng)實(shí)現(xiàn)原理

智能雙冗余驅(qū)動(dòng)的實(shí)現(xiàn)原理如圖1所示,虛線(xiàn)框內(nèi)為智能雙冗余驅(qū)動(dòng)。在VxWorks系統(tǒng)啟動(dòng)時(shí),首先要遍歷配置文件confignet.h中的網(wǎng)卡設(shè)備表endDevTbl[],設(shè)備表中包含雙端口網(wǎng)卡上兩個(gè)網(wǎng)卡的地址及中斷等配置參數(shù);然后,系統(tǒng)會(huì)調(diào)用sysDethEnd.c中的sysDethEndLoad(…)函數(shù),將兩個(gè)網(wǎng)卡的配置參數(shù)以函數(shù)入口參數(shù)的形式傳遞給智能雙冗余驅(qū)動(dòng)的裝載函數(shù)dethEndLoad(…);裝載函數(shù)為每個(gè)網(wǎng)卡設(shè)備創(chuàng)建一個(gè)控制結(jié)構(gòu),對(duì)入口配置參數(shù)進(jìn)行解析,并為每個(gè)網(wǎng)卡設(shè)備分配一塊內(nèi)存空間,用系統(tǒng)的配置要求初始化兩個(gè)網(wǎng)卡,同時(shí)填寫(xiě)好網(wǎng)卡設(shè)備的控制結(jié)構(gòu);最后,智能雙冗余驅(qū)動(dòng)將主通道網(wǎng)卡設(shè)備的控制結(jié)構(gòu)指針提交給MUX層,并發(fā)起網(wǎng)絡(luò)故障診斷定時(shí)器任務(wù)和網(wǎng)絡(luò)故障診斷任務(wù)。

網(wǎng)絡(luò)故障診斷定時(shí)器任務(wù)配合網(wǎng)絡(luò)故障診斷任務(wù)執(zhí)行,使用看門(mén)狗定時(shí)器Watchdogtimer完成1ms定時(shí),每定時(shí)1次釋放1次二進(jìn)制信號(hào)量sem_netDiagnose;網(wǎng)絡(luò)故障診斷任務(wù)循環(huán)等待接收信號(hào)量sem_netDiagnose,取到信號(hào)量后立即判斷主通道網(wǎng)卡設(shè)備的端口狀態(tài)(連接/非連接),

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論