版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、武漢理工大學(xué)碩士學(xué)位論文基于嵌入式Linux的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)研究姓名:鄭磊申請(qǐng)學(xué)位級(jí)別:碩士專業(yè):機(jī)械電子工程指導(dǎo)教師:郭順生20090301摘要和嵌入式系統(tǒng)都是計(jì)算機(jī)技術(shù)領(lǐng)域中的研究熱點(diǎn),兩者的結(jié)合,為它們開辟了新的發(fā)展空間。由于其源代碼公開、內(nèi)核精簡(jiǎn)、支持多種硬件平臺(tái)、網(wǎng)絡(luò)功能強(qiáng)大等特點(diǎn),是如今嵌入式領(lǐng)域使用比例最高的操作系統(tǒng),視頻監(jiān)控系統(tǒng)正是其應(yīng)用之一。隨著電子技術(shù),多媒體技術(shù)及網(wǎng)絡(luò)技術(shù)快速發(fā)展,視頻頻監(jiān)控系統(tǒng)正在向嵌入式,數(shù)字化,網(wǎng)絡(luò)化方向發(fā)展。嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)融合傳統(tǒng)視頻監(jiān)控技術(shù)和現(xiàn)代信息技術(shù)為一體,和當(dāng)前世界信息技術(shù)的發(fā)展緊密相連,其核心部分就是一個(gè)可以直接連入以太網(wǎng)的視頻
2、設(shè)備,提供實(shí)時(shí)的視頻數(shù)據(jù)采集、壓縮和傳輸?shù)墓δ?。本文分析總結(jié)了視頻監(jiān)控系統(tǒng)的發(fā)展歷程和研究現(xiàn)狀,圍繞如何完成網(wǎng)絡(luò)視頻監(jiān)控的目的,提出了一種以嵌入式和微處理等主流技術(shù)為基礎(chǔ)的通用性強(qiáng)且成本低的網(wǎng)絡(luò)視頻監(jiān)控解決方案,具有廣泛的應(yīng)用價(jià)值。在硬件方面,采用三星公司的系列嵌入式處理器¥及其外圍設(shè)備構(gòu)成系統(tǒng)的硬件核心。在軟件方面,建立了系統(tǒng)的軟件開發(fā)環(huán)境,包括交叉編譯環(huán)境的建立、內(nèi)核的移植等。在嵌入式平臺(tái)上實(shí)現(xiàn)了攝像頭驅(qū)動(dòng)程序的開發(fā),并基于模塊提供的編程接口()完成了視頻數(shù)據(jù)的采集;選取視頻壓縮標(biāo)準(zhǔn)作為系統(tǒng)的視頻壓縮算法,以編碼器模型為基礎(chǔ)實(shí)現(xiàn)了視頻數(shù)據(jù)的壓縮;基于流媒體傳輸?shù)幕緟f(xié)議實(shí)時(shí)傳輸協(xié)議()和實(shí)
3、時(shí)傳輸控制協(xié)議(),對(duì)服務(wù)器端視頻流的封包策略進(jìn)行研究,最后利用庫(kù),實(shí)現(xiàn)了一個(gè)架構(gòu),成功用于視頻流的實(shí)時(shí)傳輸。關(guān)鍵字:視頻監(jiān)控,嵌入式,壓縮,實(shí)時(shí)傳輸協(xié)議【,砧,¥,:,獨(dú)創(chuàng)性聲明本人聲明,所呈交的論文是本人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作及取得的研究成果。盡我所知,除了文中特別加以標(biāo)注和致謝的地方外,論文中不包含其他人已經(jīng)發(fā)表或撰寫過(guò)的研究成果,也不包含為獲得武漢理工大學(xué)或其它教育機(jī)構(gòu)的學(xué)位或證書而使用過(guò)的材料。與我一同工作的同志對(duì)本研究所做的任何貢獻(xiàn)均已在論文中作了明確的說(shuō)明并表示了謝意。簽名:脅峭學(xué)位論文使用授權(quán)書本人完全了解武漢理工大學(xué)有關(guān)保留、使用學(xué)位論文的規(guī)定,即:學(xué)校有權(quán)保留并向國(guó)家有
4、關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)武漢理工大學(xué)町以將本學(xué)位論文的全部?jī)?nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或其他復(fù)制手段保存或匯編本學(xué)位論文。同時(shí)授權(quán)經(jīng)武漢理工大學(xué)認(rèn)可的國(guó)家有關(guān)機(jī)構(gòu)或論文數(shù)據(jù)庫(kù)使用或收錄本學(xué)位論文,并向社會(huì)公眾提供信息服務(wù)。(保密的論文在解密后應(yīng)遵守此規(guī)定)研究生(簽名):導(dǎo)幣(簽名);嗍渺凡武漢理工大學(xué)碩士學(xué)位論文第章研究背景與意義緒論在社會(huì)數(shù)字信息化飛速發(fā)展的今天,多媒體技術(shù)、寬帶網(wǎng)絡(luò)傳輸技術(shù)以及嵌入式技術(shù)己經(jīng)滲入到我們工作、生活的各個(gè)方面,視頻監(jiān)控領(lǐng)域作為其重要應(yīng)用領(lǐng)域之一,獲得了長(zhǎng)足的發(fā)展。市場(chǎng)調(diào)查顯示,年中國(guó)網(wǎng)絡(luò)視頻監(jiān)控業(yè)務(wù)
5、市場(chǎng)規(guī)模達(dá)到億元人民幣,年中國(guó)網(wǎng)絡(luò)視頻監(jiān)控業(yè)務(wù)市場(chǎng)規(guī)模達(dá)到億元人民幣,預(yù)計(jì)年達(dá)到億元人民幣。未來(lái)年之內(nèi),網(wǎng)絡(luò)視頻監(jiān)控都將保持約的年增長(zhǎng)率,會(huì)有越來(lái)越多的視頻監(jiān)控系統(tǒng)采用完全數(shù)字化的技術(shù),特別是在一些行業(yè)市場(chǎng),如交通、城市監(jiān)控、工業(yè)和零售業(yè)等等。此外,以數(shù)字化視頻監(jiān)控為基礎(chǔ)的智能視頻監(jiān)控技術(shù)也將獲得長(zhǎng)足的發(fā)展【】。視頻監(jiān)控系統(tǒng)主要用于完成現(xiàn)場(chǎng)點(diǎn)的數(shù)據(jù)采集、處理、實(shí)時(shí)監(jiān)控等功能。傳統(tǒng)的視頻監(jiān)控系統(tǒng)采用自動(dòng)控制技術(shù)、計(jì)算機(jī)技術(shù),并己廣泛地應(yīng)用于工業(yè)自動(dòng)化、工業(yè)控制領(lǐng)域。然而,由于傳統(tǒng)的視頻監(jiān)控系統(tǒng)沒(méi)有或無(wú)法解決實(shí)時(shí)大數(shù)據(jù)量處理遠(yuǎn)程通信等問(wèn)題,或者其成本等原因,其應(yīng)用受到很大的限制。隨著網(wǎng)絡(luò)通訊技術(shù)、
6、嵌入式技術(shù)及圖像壓縮處理技術(shù)以及傳輸技術(shù)的快速發(fā)展,數(shù)字視頻通信技術(shù)得到越來(lái)越廣泛的應(yīng)用,采用這些先進(jìn)技術(shù)的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)開始逐漸替換傳統(tǒng)的視頻監(jiān)控系統(tǒng)。目前,基于嵌入式多媒體技術(shù)和架構(gòu)的分布式視頻監(jiān)控系統(tǒng),已經(jīng)成為信息網(wǎng)絡(luò)的一種最普遍應(yīng)用的信息交互平臺(tái)。借助以太網(wǎng)和技術(shù),把嵌入式系統(tǒng)連接至上,就可以方便、低廉的把信息傳送到世界的任何一個(gè)地方,實(shí)現(xiàn)資源的共享,從而使人們有能力解決以前在極有限的資源下很難解決的問(wèn)題,為遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的發(fā)展提供了有利的條件。由此可見,嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)必將有良好的應(yīng)用和發(fā)展前景,由它替代當(dāng)前普遍應(yīng)用于的視頻遠(yuǎn)程監(jiān)控系統(tǒng)己成為必然趨勢(shì)。而目前在我國(guó)基于嵌
7、入式技術(shù)的網(wǎng)絡(luò)化視頻監(jiān)控系統(tǒng)剛剛起步,所以對(duì)基于嵌入式技術(shù)的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)進(jìn)行研究具有很大的實(shí)際意義。武漢理工大學(xué)碩士學(xué)位論文視頻監(jiān)控系統(tǒng)發(fā)展動(dòng)態(tài)與研究現(xiàn)狀發(fā)展動(dòng)態(tài)視頻監(jiān)控系統(tǒng)以其直觀、方便、信息內(nèi)容豐富等特點(diǎn)而廣泛應(yīng)用于許多場(chǎng)合。視頻監(jiān)控系統(tǒng)的發(fā)展經(jīng)歷了三個(gè)不同階段:模擬視頻監(jiān)控,數(shù)字化圖像監(jiān)控和基于嵌入式技術(shù)的網(wǎng)絡(luò)化數(shù)字視頻監(jiān)控。()模擬監(jiān)控系統(tǒng)發(fā)展較早,目前常稱為第一代監(jiān)控系統(tǒng),一般是由攝像機(jī)、傳輸電纜、監(jiān)視器、視頻矩陣切換器等組成。在這一代視頻監(jiān)控系統(tǒng)中,由攝像機(jī)獲得現(xiàn)場(chǎng)的視頻,通過(guò)電纜的傳輸,在監(jiān)視器中對(duì)現(xiàn)場(chǎng)進(jìn)行監(jiān)控。隨著技術(shù)的發(fā)展,出現(xiàn)了視頻矩陣切換器等新技術(shù),可以實(shí)現(xiàn)多路信號(hào)的
8、切換以及對(duì)視頻前端的控制。系統(tǒng)特點(diǎn):視頻、音頻信號(hào)的采集、傳輸、存儲(chǔ)均為模擬形式,質(zhì)量最高;經(jīng)過(guò)幾十年的發(fā)展,技術(shù)成熟,系統(tǒng)功能強(qiáng)大、完善。存在的問(wèn)題是:只適用于較小的地理范圍;與信息系統(tǒng)無(wú)法交換數(shù)據(jù),監(jiān)控僅限于監(jiān)控中心,應(yīng)用的靈活性較差不易擴(kuò)展。()隨著計(jì)算機(jī)存儲(chǔ)和計(jì)算能力的不斷增強(qiáng),圖像監(jiān)控迎來(lái)了一場(chǎng)技術(shù)革命。慢慢從過(guò)去的模擬處理方式轉(zhuǎn)向數(shù)字處理方式,開始使用處理圖像信號(hào)。利用計(jì)算機(jī)的數(shù)據(jù)處理能力與顯示器的高清晰度,將視頻信號(hào)通過(guò)視頻采集卡采集到計(jì)算機(jī)中,在顯示器上顯示,大大提高了圖像的畫質(zhì),但是控制與切換仍采用傳統(tǒng)的方式,只是計(jì)算機(jī)串口與之相連,完成控制工作。盡管它有良好的人機(jī)界面和較好
9、的穩(wěn)定性,但它不能稱為真正的數(shù)字圖像監(jiān)控系統(tǒng)。()隨著信息處理技術(shù)的不斷發(fā)展,基于嵌入式技術(shù)的網(wǎng)絡(luò)化數(shù)字視頻監(jiān)控近幾年異軍突起。全數(shù)字化網(wǎng)絡(luò)監(jiān)控系統(tǒng)以網(wǎng)絡(luò)為平臺(tái),采用全新的設(shè)計(jì)理念,集成了當(dāng)今最先進(jìn)的網(wǎng)絡(luò)技術(shù)、計(jì)算機(jī)技術(shù)以及數(shù)字處理技術(shù),以地址來(lái)識(shí)別所有的監(jiān)控設(shè)備,采用先進(jìn)的壓縮算法以及網(wǎng)絡(luò)傳輸協(xié)議來(lái)進(jìn)行視頻圖像、聲音等數(shù)據(jù)的處理與傳輸。網(wǎng)絡(luò)數(shù)字視頻監(jiān)控系統(tǒng)具有比較明顯的優(yōu)勢(shì):利用現(xiàn)有的網(wǎng)絡(luò)資源,輕而易舉地實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控;布控區(qū)域廣闊,系統(tǒng)擴(kuò)展能力強(qiáng),只要有網(wǎng)絡(luò)的地方增加監(jiān)控點(diǎn)設(shè)備就可擴(kuò)展新的監(jiān)控點(diǎn),徹底拋棄了地域的概念;可組成非常復(fù)雜的監(jiān)控網(wǎng)絡(luò),采用基于嵌入式服務(wù)器為核心的監(jiān)控系統(tǒng),在服務(wù)
10、器端完成模擬視頻到數(shù)字視頻的轉(zhuǎn)換并壓縮,采用統(tǒng)一的協(xié)議在網(wǎng)絡(luò)上傳輸,支持武漢理工大學(xué)碩十學(xué)位論文跨網(wǎng)關(guān)、跨路由器的遠(yuǎn)程視頻傳輸:系統(tǒng)的硬件是一個(gè)處理器和操作系統(tǒng)捆綁緊密、功能專一的獨(dú)立的設(shè)備,因此不像插卡系統(tǒng)那樣易受通用計(jì)算機(jī)系統(tǒng)中其它軟件硬件的影響,性能上更穩(wěn)定,且便于安裝、維護(hù),易于實(shí)現(xiàn)系統(tǒng)的模塊化設(shè)計(jì),便于管理、維護(hù)。國(guó)內(nèi)外研究現(xiàn)狀在國(guó)內(nèi),模擬、數(shù)字視頻監(jiān)控系統(tǒng)的發(fā)展大致經(jīng)歷了孤立的監(jiān)控系統(tǒng)和聯(lián)通的監(jiān)控系統(tǒng)兩個(gè)階段【。目前,網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)正朝著“統(tǒng)一部署數(shù)據(jù)共享的監(jiān)控網(wǎng)絡(luò)方向發(fā)展。據(jù)了解,烽火網(wǎng)絡(luò)、和斯達(dá)康等廠商的視頻監(jiān)控解決方案已經(jīng)實(shí)現(xiàn)了統(tǒng)一監(jiān)控、統(tǒng)一存儲(chǔ)、統(tǒng)一管理和資源共享。智能化
11、是網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)未來(lái)發(fā)展的方向之一。例如,中國(guó)電信推出的“全球眼業(yè)務(wù)利用網(wǎng)絡(luò)監(jiān)控系統(tǒng)的智能化特性,大大提高了效率。視頻監(jiān)控系統(tǒng)的智能化主要體現(xiàn)在圖像智能分析、報(bào)警聯(lián)動(dòng)和遠(yuǎn)程管理與控制等方面,包括車牌識(shí)別,人臉識(shí)別,物體分類,運(yùn)動(dòng)檢測(cè),越界檢測(cè)和流量統(tǒng)計(jì)等,對(duì)于圖像智能分析識(shí)別出來(lái)的特定事物或事件,以及其他報(bào)警裝置觸發(fā)的報(bào)警事件,系統(tǒng)能夠自動(dòng)報(bào)警,包括聯(lián)動(dòng)到報(bào)警專用處理系統(tǒng)、語(yǔ)音電話、手機(jī)短信和其他公共平臺(tái)等(如、)。隨著今年我國(guó)網(wǎng)絡(luò)的大規(guī)模商用及其移動(dòng)終端大規(guī)模的普及,用戶可以手持移動(dòng)終端進(jìn)行移動(dòng)視頻監(jiān)控。而且,移動(dòng)和固定的融合為電信運(yùn)營(yíng)商開展視頻監(jiān)控增值業(yè)務(wù)帶來(lái)了更多的機(jī)會(huì)。帶來(lái)的最直接變
12、化就是移動(dòng)網(wǎng)絡(luò)帶寬不再是手機(jī)視頻業(yè)務(wù)發(fā)展的瓶頸?!斑\(yùn)營(yíng)商積極部署全業(yè)務(wù)運(yùn)營(yíng),與此同時(shí)國(guó)民生活水平有了很大提升,這推動(dòng)了視頻監(jiān)控在手機(jī)等移動(dòng)終端上的應(yīng)用發(fā)展?!比诤瞎叹W(wǎng)與移動(dòng)網(wǎng)將是未來(lái)視頻監(jiān)控業(yè)務(wù)的一個(gè)發(fā)展趨勢(shì)。同時(shí),視頻監(jiān)控業(yè)務(wù)自身具有良好的發(fā)展前景,如果能和其他視頻業(yè)務(wù),例如、視頻會(huì)議、傳感器網(wǎng)絡(luò)等業(yè)務(wù)進(jìn)行融合,將為其注入更多的活力。中國(guó)整體監(jiān)控市場(chǎng)已有余年的發(fā)展歷史相比,網(wǎng)絡(luò)視頻監(jiān)控市場(chǎng)還是一個(gè)相對(duì)新興的市場(chǎng)。然而,隨著標(biāo)準(zhǔn)的完善以及監(jiān)控需求的不斷提升,網(wǎng)絡(luò)視頻監(jiān)控已經(jīng)做好了準(zhǔn)備,它將促使國(guó)內(nèi)網(wǎng)絡(luò)視頻監(jiān)控市場(chǎng)逐步升溫并迎來(lái)黃金時(shí)代。目前,國(guó)內(nèi)外對(duì)基于嵌入式和網(wǎng)絡(luò)技術(shù)的視頻監(jiān)控系統(tǒng)的研究,一
13、般集武漢理工大學(xué)碩士學(xué)位論文中于嵌入式視頻監(jiān)控系統(tǒng)的設(shè)計(jì)、嵌入式操作系統(tǒng)的研究、視頻圖像的網(wǎng)絡(luò)傳輸以及視頻圖像處理等幾個(gè)方面【:在嵌入式視頻監(jiān)控系統(tǒng)的設(shè)計(jì)方案上,例如有設(shè)計(jì)并實(shí)現(xiàn)的一種實(shí)時(shí)優(yōu)化的小型網(wǎng)絡(luò)攝像機(jī),系統(tǒng)由圖像傳感器、嵌入式處理器、圖像處理電子卡、網(wǎng)絡(luò)接口組成,通過(guò)壓縮優(yōu)化算法和背景差分算法可以使攝像機(jī)實(shí)現(xiàn)實(shí)時(shí)的圖像壓縮、傳輸,并能跟蹤目標(biāo)。在嵌入式操作系統(tǒng)方面,例如有對(duì)于在建立嵌入式視頻監(jiān)控系統(tǒng)中的應(yīng)用的研究;關(guān)于嵌入式在遠(yuǎn)程數(shù)據(jù)采集及服務(wù)器中的應(yīng)用研究;在嵌入式下對(duì)視頻采集設(shè)備驅(qū)動(dòng)程序的研究等。在對(duì)視頻流網(wǎng)絡(luò)傳輸?shù)难芯恐?,有等提出的一種利用多重描述符編碼的編程方法,以用來(lái)減少在網(wǎng)
14、絡(luò)傳輸中造成的丟失數(shù)據(jù)包,使端到端的網(wǎng)絡(luò)視頻圖像傳輸更為優(yōu)化;技術(shù)在視頻網(wǎng)絡(luò)傳輸中的應(yīng)用,在提高網(wǎng)絡(luò)資源利用率、消除服務(wù)器瓶頸方面起到了顯著的作用;采用流媒體的格式傳送視頻圖像數(shù)據(jù),可以更好的實(shí)現(xiàn)視頻的傳輸及播放等。論文的主要研究工作論文以中科院知識(shí)創(chuàng)新項(xiàng)目一“融合廣播通信的無(wú)線寬帶多媒體網(wǎng)絡(luò)研究與應(yīng)用示范為課題背景,在深入研究了嵌入式操作系統(tǒng)、視頻數(shù)據(jù)的采集、壓縮與流媒體實(shí)時(shí)傳輸技術(shù)的基礎(chǔ)上,將上述三者有機(jī)結(jié)合起來(lái)設(shè)計(jì)了一套基于嵌入式操作系統(tǒng)的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。論文的研究工作主要集中在以下幾個(gè)方面:()系統(tǒng)整體軟硬件平臺(tái)的構(gòu)建;()攝像頭的選擇以及平臺(tái)上驅(qū)動(dòng)程序的開發(fā);()基于的視頻采集程序
15、的研究與實(shí)現(xiàn);()基于視頻壓縮算法的研究與實(shí)現(xiàn);()視頻流的封包策略研究,基于網(wǎng)絡(luò)協(xié)議的實(shí)時(shí)視頻流的傳輸研究。武漢理工大學(xué)碩十學(xué)位論文第章嵌入式視頻監(jiān)控系統(tǒng)設(shè)計(jì)本章提出了一種以嵌入式和微處理等主流技術(shù)為基礎(chǔ)的通用性強(qiáng)且成本低的網(wǎng)絡(luò)視頻監(jiān)控方案,對(duì)其軟硬件方案進(jìn)行了設(shè)計(jì)。在開發(fā)平臺(tái)搭建過(guò)程中考慮了所選擇的器件是否適合應(yīng)用要求,硬件資源是否足夠用以編程調(diào)試并保證系統(tǒng)性能優(yōu)良,同時(shí)還要兼顧硬件資源滿足系統(tǒng)需求的前提下盡可能降低成本;對(duì)于軟件開發(fā)環(huán)境,主要考慮的是所選操作系統(tǒng)的性能、穩(wěn)定性是否滿足應(yīng)用要求,以及是否支持相應(yīng)的配套開發(fā)工具。系統(tǒng)設(shè)計(jì)方案硬件設(shè)計(jì)方案系統(tǒng)的硬件部分包括嵌入式微處理器和外圍設(shè)
16、備,該系統(tǒng)主要由芯片,芯片、芯片、攝像頭等硬件組成,其中采用三星公司的系列嵌入式處理器¥,它是整個(gè)硬件系統(tǒng)的核心。為了減少系統(tǒng)設(shè)計(jì)的成本,方案中視頻壓縮模塊采用軟件算法實(shí)現(xiàn),實(shí)現(xiàn)將攝像頭采集視頻數(shù)據(jù)進(jìn)行壓縮的功能。和芯片是系統(tǒng)存儲(chǔ)模塊,其中里面存儲(chǔ)系統(tǒng)的引導(dǎo)代碼、內(nèi)核和文件系統(tǒng)(其中包括應(yīng)用程序),提供系統(tǒng)操作系統(tǒng)和應(yīng)用程序運(yùn)行的空間,并存儲(chǔ)系統(tǒng)在工作時(shí)產(chǎn)生的臨時(shí)數(shù)據(jù)。對(duì)系統(tǒng)硬件部分的詳細(xì)劃分如圖所示。圖系統(tǒng)硬件平臺(tái)結(jié)構(gòu)圖武漢理二人學(xué)碩十學(xué)位論文在一般的開發(fā)板上都具備上述的硬件部件。奉設(shè)計(jì)采用的是廣州友善之臂有限公司開發(fā)板。它采用¥作為微處理器核心,其硬件資源在下節(jié)介紹。開發(fā)板外觀如圖所示
17、168;。圖開發(fā)板外觀軟件設(shè)計(jì)方案通過(guò)對(duì)嵌入式操作系統(tǒng)體系結(jié)構(gòu)的分析,結(jié)合處理器及其外圍設(shè)備的的特性,奉系統(tǒng)中將軟件的體系結(jié)構(gòu)分為兩層:內(nèi)核宅問(wèn)和用戶空間。內(nèi)核窄間:內(nèi)核以及視頻采集、編碼的內(nèi)核代碼以及相關(guān)協(xié)議棧的移植。操作系統(tǒng)內(nèi)核的主要功能是管理任務(wù)、任務(wù)排序、提供中斷、系統(tǒng)時(shí)鐘管理以及實(shí)現(xiàn)硬件抽象層和視頻編碼內(nèi)核問(wèn)的通信;為了使系統(tǒng)具有網(wǎng)絡(luò)傳輸功能必須用到嵌入式操作系統(tǒng)中網(wǎng)絡(luò)協(xié)議如協(xié)議,同時(shí)為了在低帶寬的條件下實(shí)時(shí)傳輸視頻數(shù)據(jù),還須依靠協(xié)議對(duì)視頻流數(shù)據(jù)打包封裝、發(fā)送和控制。應(yīng)片程序的接口由來(lái)實(shí)現(xiàn),的實(shí)現(xiàn)包括三個(gè)部分:一部分作為庫(kù)來(lái)實(shí)現(xiàn)與應(yīng)用程序間的連接,一部分實(shí)現(xiàn)與編碼內(nèi)核的連接用以控制編
18、碼模塊,一部分在協(xié)議中實(shí)現(xiàn)。用戶空間:即麻用層軟件,當(dāng)攝像頭驅(qū)動(dòng)加載之后,視頻采集模塊采集攝像頭的視頻數(shù)據(jù),通過(guò)視頻壓縮模塊對(duì)視頻流進(jìn)行壓縮處理,然后通過(guò)流媒體技術(shù)通過(guò)網(wǎng)絡(luò)傳送到遠(yuǎn)程客戶端。圖所示為系統(tǒng)的整體軟件設(shè)計(jì)方案。武漢理大學(xué)碩士學(xué)位論文用內(nèi)一數(shù)據(jù)路徑圖系統(tǒng)軟件體系結(jié)構(gòu)調(diào)用路徑由于視頻流在網(wǎng)絡(luò)中傳輸時(shí)有著較大的數(shù)據(jù)吞吐量,因此發(fā)送時(shí)常常會(huì)出現(xiàn)阻塞現(xiàn)象。為了在實(shí)際的視頻傳輸應(yīng)用中避免出現(xiàn)這種情形,提高傳輸?shù)男?,在設(shè)計(jì)服務(wù)器端應(yīng)用層軟件的時(shí)候,采用了多線程技術(shù)來(lái)進(jìn)行網(wǎng)絡(luò)編程。具體多線程方案如下所示:()服務(wù)器端主線程服務(wù)器開啟之后,啟動(dòng)主線程,主線程開始完成初始化(如系統(tǒng)信息存儲(chǔ)緩沖區(qū),建
19、立與初始化等),等待用戶命令,選擇視頻源,啟動(dòng)視頻采集線程和編碼線程。同時(shí)啟動(dòng)瓜實(shí)時(shí)傳輸線程,不斷檢測(cè)緩沖區(qū),若緩沖區(qū)非空,則讀出其中數(shù)據(jù)打包進(jìn)行發(fā)送。主線程的關(guān)閉由服務(wù)器端用戶來(lái)控制,關(guān)閉之前應(yīng)發(fā)送對(duì)應(yīng)數(shù)據(jù)包通知客戶端,并利用事件機(jī)制,關(guān)閉所有子線程,清空所占用系統(tǒng)資源。()視頻采集線程完成從視頻設(shè)備采集視頻數(shù)據(jù)的功能。武漢理工大學(xué)碩十學(xué)位論文()編碼線程完成對(duì)所采集視頻數(shù)據(jù)進(jìn)行基于的壓縮編碼的功能。()實(shí)時(shí)傳輸線程完成視頻流的實(shí)時(shí)傳輸。下圖所示為服務(wù)器端的主線程工作流程。是圖服務(wù)器端的主線程工作流程系統(tǒng)硬件系統(tǒng)概述微處理器嵌入式系統(tǒng)的核心是處理器,傳統(tǒng)嵌入式處理器根據(jù)應(yīng)用可分為兩大類:一是
20、以單片機(jī)為主的微處理器,這一類芯片的產(chǎn)品有位的單片機(jī),如的等,單片機(jī)具有體積小,指令系統(tǒng)簡(jiǎn)單,抗干擾能力強(qiáng),成本低廉,武漢理工大學(xué)碩士學(xué)位論文控制能力強(qiáng)等特點(diǎn)。二是注重?cái)?shù)字化后的各種快速算法的數(shù)字信號(hào)處理器,作為高速的數(shù)字信號(hào)處理器主要的應(yīng)用在聲音、圖像等需要大量的數(shù)據(jù)計(jì)算的領(lǐng)域,有著功耗小、運(yùn)算速度快、吞吐量大的特點(diǎn)。嵌入式系統(tǒng)由于融合了計(jì)算機(jī)技術(shù)、數(shù)字通信技術(shù)、半導(dǎo)體技術(shù)等多種技術(shù),符合當(dāng)前電子類設(shè)備對(duì)體積、成本、性能的需求,而得到了高速的發(fā)展。嵌入式系統(tǒng)不同于原來(lái)的單片機(jī)系統(tǒng),它不僅有自己的操作系統(tǒng),上層應(yīng)用程序,而且還具備網(wǎng)絡(luò)通信和信息管理的功能。體系的處理器是目前嵌入式系統(tǒng)中使用最廣
21、泛的處理器,它采用了技術(shù),具有尋址方式簡(jiǎn)單,寄存器多,指令長(zhǎng)度固定等特點(diǎn),使得它的處理速度快,執(zhí)行效率高。由于對(duì)于技術(shù)的支持,具有內(nèi)核可裁減,網(wǎng)絡(luò)功能強(qiáng)大,代碼開放的特點(diǎn),把應(yīng)用到嵌入式系統(tǒng)中,能充分發(fā)揮和的優(yōu)勢(shì)。體系結(jié)構(gòu)的總體設(shè)計(jì)思想是在不犧牲性能的同時(shí),盡量簡(jiǎn)化處理器,同時(shí)從體系結(jié)構(gòu)的層面上靈活支持處理器擴(kuò)展。這種簡(jiǎn)化和開放的思路使得處理器采用了很簡(jiǎn)單的結(jié)構(gòu)來(lái)實(shí)現(xiàn)。所有處理器都共享這一體系結(jié)構(gòu)。體系結(jié)構(gòu)具有以下特點(diǎn):奪型處理器結(jié)構(gòu)采用結(jié)構(gòu),在簡(jiǎn)化處理器結(jié)構(gòu),減少?gòu)?fù)雜功能指令的同時(shí),提高了處理器的速度。指令集考慮到型處理器的指令功能相對(duì)較弱,新型的體系結(jié)構(gòu)中定義了位的指令集。指令集比通常的位
22、處理器有更好的代碼密度,而芯片面積只增加,卻可以使程序存儲(chǔ)器更小。奪多處理器狀態(tài)模式體系結(jié)構(gòu)定義了種處理器模式:用戶()、快中斷(、中斷(、管理()、終止()、系統(tǒng)()和未定義(),大大提高了處理器的效率。兩種處理器工作狀態(tài)處理器有兩種工作狀態(tài):狀態(tài)(執(zhí)行位指令)和狀態(tài)(執(zhí)行位指令)。嵌入式在線仿真調(diào)試體系結(jié)構(gòu)的處理器芯片都嵌入了在線仿真邏輯,便于通過(guò)來(lái)仿真調(diào)試芯片,省去了價(jià)格昂貴的在線仿真器。武漢理工大學(xué)碩士學(xué)位論文令靈活方便的接口體系結(jié)構(gòu)具有協(xié)處理器接口,允許接個(gè)協(xié)處理器。這樣,既可以使基本的處理器內(nèi)核盡可能小,也可以方便地?cái)U(kuò)充各種功能。低電壓功耗的設(shè)計(jì)考慮到體系結(jié)構(gòu)的處理器主要用于手持式
23、嵌入式系統(tǒng)中,體系結(jié)構(gòu)在設(shè)計(jì)中就十分注意功耗的設(shè)計(jì)。的應(yīng)用領(lǐng)域有開發(fā)式應(yīng)用平臺(tái),包括無(wú)線設(shè)備、消費(fèi)產(chǎn)品以及成像設(shè)備等;實(shí)時(shí)嵌入式應(yīng)用,包括存儲(chǔ)設(shè)備、汽車、工業(yè)和網(wǎng)絡(luò)設(shè)備;安全系統(tǒng),包括信用卡和卡等。這些應(yīng)用領(lǐng)域都是控制復(fù)雜、信息量大、算法相對(duì)復(fù)雜、存儲(chǔ)數(shù)據(jù)量大、功耗低。¥微處理器¥是三星公司推出的位對(duì)微處理器,為手持設(shè)備和一般類型應(yīng)用提供了低價(jià)格、低功耗、高性能小型微控制器的解決方案。為了降低整體系統(tǒng)成本,¥提供了一些豐富的內(nèi)部設(shè)備。¥采用了的內(nèi)核,的標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。其低功耗,簡(jiǎn)單,優(yōu)雅,且全靜態(tài)設(shè)計(jì)特別適合于對(duì)成本和功率敏感型的應(yīng)用。它采用了新的總線架構(gòu)()。¥內(nèi)部結(jié)構(gòu)較復(fù)雜,提供可
24、擴(kuò)展的功能模塊較多,主要由內(nèi)核(一),獨(dú)立的指令和數(shù)據(jù)緩存,虛擬內(nèi)存管理單元,控制器,系統(tǒng)管理單元(控制器等),個(gè),通道,通道具備功能的定時(shí)器,口,(實(shí)時(shí)時(shí)鐘),通道精度和觸摸屏控制器,總線接口,數(shù)字音頻總線接口,主機(jī),設(shè)備,卡控制器,通道和數(shù)字鎖相環(huán)組成。¥提供了一套比較完整的通用系統(tǒng)的外圍設(shè)備,并且使得整個(gè)系統(tǒng)功耗最小,片上集成的功能主要包括如下幾個(gè)方面【:()“內(nèi)核,存儲(chǔ)器,外部,具有指令緩存數(shù)據(jù)緩存和;()外部存儲(chǔ)控制器(控制和片選邏輯);武漢理大學(xué)碩士學(xué)位論文()控制器,通道專用;()具有外部請(qǐng)求引腳的通道;()通道,通道(,字節(jié)和“字節(jié));()通道總線控制器,通道總線控制器;()兼
25、容主機(jī)協(xié)議版和卡協(xié)議兼容版;()個(gè)主機(jī),個(gè)設(shè)備()()通道計(jì)時(shí)器,通道內(nèi)部計(jì)時(shí)器;()看門狗電路;()個(gè)通用口,通道外部中斷源;()電源控制:普通、緩慢、空閑和斷電模式;()通道位和觸摸屏接口;()具有日歷功能的實(shí)時(shí)時(shí)鐘;()具有片上時(shí)鐘發(fā)生器;()相機(jī)接口。軟件開發(fā)環(huán)境的建立基于嵌入式開發(fā)環(huán)境一般由目標(biāo)系統(tǒng)硬件開發(fā)板和裝有桌面版的主機(jī)平臺(tái)組成。主機(jī)上操作系統(tǒng)采用版本。目標(biāo)系統(tǒng)硬件開發(fā)板用來(lái)運(yùn)行嵌入式操作系統(tǒng)、用戶系統(tǒng)應(yīng)用程序等,而主機(jī)平臺(tái)用來(lái)進(jìn)行嵌入式操作系統(tǒng)內(nèi)核編譯,文件系統(tǒng)的制作和系統(tǒng)應(yīng)用程序開發(fā)和調(diào)試等。雙方通過(guò)串口、并口或者以太網(wǎng)口等建立連接。嵌入式操作系統(tǒng)類似于,是免費(fèi)的,源代碼開
26、放的,符合標(biāo)準(zhǔn)規(guī)范的操作系統(tǒng)。近幾年在嵌入式領(lǐng)域獲得了飛速發(fā)展,已開發(fā)的嵌入式系統(tǒng)中,的項(xiàng)目選擇作為嵌入式操作系統(tǒng)。之所以有能在嵌入式系統(tǒng)市場(chǎng)上取得如此迅速的發(fā)展,與自身的優(yōu)良特性有著不可分割的關(guān)系。()作為嵌入式操作系統(tǒng)的優(yōu)勢(shì)【】正在嵌入式開發(fā)領(lǐng)域穩(wěn)步發(fā)展,是由于其自身具有非常適合于作為嵌武漢理工大學(xué)碩士學(xué)位論文入式操作系優(yōu)點(diǎn),主要表現(xiàn)在:使用成本低幾乎所有的商業(yè)用操作系統(tǒng)如公司的系列,都需要為每一個(gè)拷貝支付數(shù)量的費(fèi)用。但是是免費(fèi)軟件,只要遵守的規(guī)定,就可以免費(fèi)獲得拷貝。同樣遵循規(guī)定的、等等一系列的軟件工具開發(fā)包,從功能角度上看并于商用開發(fā)包,同時(shí)可以極大的降低開發(fā)成本。這點(diǎn)優(yōu)勢(shì)是其他商用操
27、作系統(tǒng)無(wú)法比擬的。源代碼公開可以隨意地配置不需要任何的許可證或商家的合作關(guān)系,任何人可以修改并在下發(fā)行。帶有用戶熟悉的完善的開發(fā)工具,幾乎所有的系統(tǒng)的應(yīng)用軟件都己移植到了上。其強(qiáng)大的語(yǔ)言編譯器、斗斗等也是開源的,可以很容易得到,并在不斷完善與成熟。支持多種硬件平臺(tái)擁有了一個(gè)龐大的支持者群體,其中許多人都編寫驅(qū)動(dòng)程序和其它的更新程序并且免費(fèi)的通過(guò)網(wǎng)絡(luò)進(jìn)行分發(fā)。現(xiàn)在已經(jīng)被移植到多種硬件平臺(tái),支持包括、等現(xiàn)有的絕大部分微處理器體系結(jié)構(gòu)中。這對(duì)受開銷和時(shí)間限制的研究與開發(fā)項(xiàng)目是很有吸引力的,原型可以在標(biāo)準(zhǔn)平臺(tái)上開發(fā)然后移植到具體的硬件上,加快了軟件與硬件的開發(fā)過(guò)程。強(qiáng)大的網(wǎng)絡(luò)功能操作系統(tǒng)最突出的是網(wǎng)絡(luò)
28、部分,基本上所有的網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)接口都可以在上找到,內(nèi)核比標(biāo)準(zhǔn)的能夠更加高效地處理網(wǎng)絡(luò)協(xié)議,系統(tǒng)的網(wǎng)絡(luò)吞吐性能非常好,這也是為什么在網(wǎng)絡(luò)服務(wù)器市場(chǎng)上占據(jù)越來(lái)越大市場(chǎng)份額的一個(gè)原因。微內(nèi)核模塊化體系結(jié)構(gòu)操作系統(tǒng)本身的微內(nèi)核體系結(jié)構(gòu)相當(dāng)簡(jiǎn)單,網(wǎng)絡(luò)和文件系統(tǒng)以模塊形式置于微內(nèi)核的上層,驅(qū)動(dòng)程序和其它部件可在運(yùn)行時(shí)作為可加載模塊編譯到或者是添加到內(nèi)核,這為構(gòu)造定制的可嵌入系統(tǒng)提供了高度模塊化的構(gòu)件方法,使添加部件非常容易。系統(tǒng)小巧一個(gè)功能完備的內(nèi)核要求大約內(nèi)存。而微內(nèi)核只占用其武漢理工大學(xué)碩士學(xué)位論文中很小一部分內(nèi)存,包括虛擬內(nèi)存和所有核心的操作系統(tǒng)功能在內(nèi),只需占用系統(tǒng)的內(nèi)存。只要有的內(nèi)存,一個(gè)有網(wǎng)
29、絡(luò)棧和基本實(shí)用程序的完全的系統(tǒng)就可以在一臺(tái)位總線()的微處理器上運(yùn)行的很好了。由于內(nèi)存要求常常是根據(jù)需要的應(yīng)用所決定的,系統(tǒng)甚至可以僅使用和進(jìn)行工作,完全適合于資源有限的嵌入式硬件平臺(tái)。()多線程技術(shù)【】線程技術(shù)早在年代就被提出,但真正應(yīng)用多線程到操作系統(tǒng)中去,是年代中期?,F(xiàn)在,多線程技術(shù)已經(jīng)被許多操作系統(tǒng)所支持,包括和操作系統(tǒng)。線程就是操作系統(tǒng)分配處理器時(shí)間的最基本單元。在一個(gè)多線程的應(yīng)用程序中,每一個(gè)線程都有它自己的堆棧,并且可以獨(dú)立地對(duì)在同一程序中運(yùn)行的其它線程進(jìn)行操作。采用多線程結(jié)構(gòu)的優(yōu)點(diǎn)是:第一,可以同時(shí)處理多個(gè)不同的事務(wù),且各個(gè)事務(wù)的處理模塊相互獨(dú)立;第二,良好的可擴(kuò)展性,可以方便
30、的在有新的需求時(shí)添加對(duì)應(yīng)的處理模塊。在系統(tǒng)中提供了幾種同步對(duì)象,即臨界區(qū)(),互斥量(),信號(hào)量()和事件()等。這些同步對(duì)象能夠讓不同的線程之間實(shí)現(xiàn)同步和協(xié)調(diào)它們的行為。正是考慮到嵌入式具有以上眾多優(yōu)點(diǎn),本論文選取操作系統(tǒng)作為系統(tǒng)的軟件核心。為了使操作系統(tǒng)能在所用的開發(fā)板上運(yùn)行,必須進(jìn)行操作系統(tǒng)的移植。在移植操作系統(tǒng)之前先建立系統(tǒng)編譯環(huán)境。建立交叉編譯環(huán)境交叉編譯是嵌入式開發(fā)過(guò)程中的一項(xiàng)重要技術(shù),主要特征是某機(jī)器中執(zhí)行的程序代碼不是在本機(jī)編譯生成,而是由另一臺(tái)機(jī)器編譯生成。采用交叉編譯的主要原因在于,多數(shù)嵌入式目標(biāo)系統(tǒng)不能提供足夠的資源供編譯過(guò)程使用,因而只好將編譯工程轉(zhuǎn)移到中進(jìn)行。當(dāng)前交叉
31、編譯器有多種版本,本設(shè)計(jì)中使用版的。在網(wǎng)上下載該版本的交叉編譯器包:,在宿主機(jī)的目錄下建一個(gè)的目錄,將拷貝到某個(gè)目錄下,然后進(jìn)入該目錄,執(zhí)行解包命令即可,之武漢理大學(xué)碩士學(xué)位論文后可編輯:文件,在最后增加路徑器。:¥,以后編譯內(nèi)核或其他應(yīng)用程序均可用的前綴來(lái)指定交叉編譯的移植圖是一個(gè)典型的嵌入式應(yīng)用系統(tǒng)固態(tài)存儲(chǔ)設(shè)備的空間分配示意圖。是系統(tǒng)一加電所執(zhí)行的第一個(gè)程序,在操作系統(tǒng)內(nèi)核或用戶應(yīng)用程序運(yùn)行之前運(yùn)行。通過(guò)這段小程序,可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),為最終調(diào)用操作系統(tǒng)內(nèi)核或用戶應(yīng)用程序準(zhǔn)備好正確的環(huán)境【。啟動(dòng)參數(shù)一卜核根文件系統(tǒng)圖以及系統(tǒng)各
32、個(gè)部件所處的層次是依賴于硬件而實(shí)現(xiàn)的,特別是在嵌入式系統(tǒng)中建立一個(gè)通用的幾乎是不可能的,不同的體系結(jié)構(gòu)需求的是不同的。除了體系結(jié)構(gòu),還依賴于具體的嵌入式板級(jí)設(shè)備的配置。也就是說(shuō),對(duì)于兩塊不同的嵌入式板而言,即使它們基于相同的構(gòu)建,運(yùn)行在其中一塊電路板上的,未必能夠運(yùn)行在另一塊電路開發(fā)板上,因此我們必須對(duì)其進(jìn)行移植,這也是我們開發(fā)的第一步。通常都是對(duì)己有的進(jìn)行移植工作,如和等。本系統(tǒng)中,采用作為處理器的。是韓國(guó)的公司開發(fā)的,適用于處理器。有兩種工作模式:?jiǎn)?dòng)加載模式和下載模式。啟動(dòng)加載模式可以在一段時(shí)間后(這個(gè)時(shí)間可更改)自行啟動(dòng)內(nèi)核,這時(shí)的默認(rèn)模式。在下載模式下,為用戶提供一個(gè)命令行接口,通過(guò)
33、接口可以使用提供的一些命令。在代碼的頭文件公共目錄中,文件定義了該處理器武漢理工大學(xué)碩士學(xué)位論文的一些寄存器,定義了與開發(fā)板相關(guān)的資源配置參數(shù),我們只需要修改這些文件就可以配置目標(biāo)板的參數(shù),如波特率、引導(dǎo)參數(shù)、物理內(nèi)存映射等。的嵌入式移植過(guò)程主要有以下六個(gè)步驟:()從公司網(wǎng)站獲得源文件,進(jìn)入根目錄執(zhí)行命令修改文件。()修改三個(gè)宏定義。:更改為交叉編譯器的文件夾:更改為交叉編譯器的可執(zhí)行文件的路徑:更改為交叉編譯器的庫(kù)文件的路徑()修改,主要是修改的分區(qū)信息。()修改內(nèi)核啟動(dòng)時(shí)使用的命令行初始參數(shù)。()命令配置。()命令編譯源文件。可以獲得編譯成功的二進(jìn)制代碼,將通過(guò)燒寫在的地址處,即完成了的編
34、譯和移植。內(nèi)核編譯與移植在對(duì)內(nèi)核移植前,需要根據(jù)系統(tǒng)硬件資源對(duì)內(nèi)核進(jìn)行配置和裁剪,以便在實(shí)現(xiàn)功能的前提下盡量減小內(nèi)核,充分利用嵌入式系統(tǒng)有限的資源。在宿主機(jī)系統(tǒng)終端下,進(jìn)入內(nèi)核源代碼的目錄,輸入可以對(duì)內(nèi)核進(jìn)行配置。本系統(tǒng)中主要需要對(duì)一下參數(shù)進(jìn)行配置:處理器結(jié)構(gòu)、網(wǎng)絡(luò)功能、設(shè)備驅(qū)動(dòng)、可執(zhí)行文件格式等。內(nèi)核配置完畢后,即可通過(guò)以下命令對(duì)內(nèi)核進(jìn)行編譯:():清除之前編譯生成的文件。()建立內(nèi)核文件之間的聯(lián)系和依賴關(guān)系。()生成最終所需要的映像文件。運(yùn)行以上三個(gè)命令之后,即可在一目錄下生成所需要的映像文件。之后利用終端仿真程序和引導(dǎo)程序通過(guò)串口就可以把內(nèi)核映像移植到目標(biāo)系統(tǒng)板的存儲(chǔ)中了。武漢理工大學(xué)碩
35、士學(xué)位論文第章視頻數(shù)據(jù)的采集當(dāng)平臺(tái)啟動(dòng)并運(yùn)行后,啟用了單元即內(nèi)存管理單元,在這種模式下系統(tǒng)不能直接對(duì)物理地址進(jìn)行訪問(wèn)。若要對(duì)某一硬件外設(shè)進(jìn)行讀寫,需要通過(guò)內(nèi)核調(diào)用該硬件的驅(qū)動(dòng)來(lái)實(shí)現(xiàn)。因此實(shí)現(xiàn)視頻數(shù)據(jù)的處理需要兩個(gè)步驟,一是編譯硬件接口的驅(qū)動(dòng)程序,這部分是作為內(nèi)核的一部分駐留在內(nèi)核中,提供對(duì)硬件和操作系統(tǒng)的支持;二是根據(jù)內(nèi)核中提供的關(guān)于視頻處理部分的編寫視頻采集應(yīng)用程序。本章將詳細(xì)講述這兩部分的軟件設(shè)計(jì)和開發(fā)。設(shè)備驅(qū)動(dòng)開發(fā)簡(jiǎn)介驅(qū)動(dòng)程序?qū)哟谓Y(jié)構(gòu)在嵌入式系統(tǒng)中,操作系統(tǒng)是介于應(yīng)用程序與硬件之間的一個(gè)系統(tǒng)軟件,其作用是為用戶提供統(tǒng)一的接口。操作系統(tǒng)所面對(duì)的硬件設(shè)備種類非常多,不同型號(hào)不同廠家的設(shè)備又具
36、有各自不同的特點(diǎn),因此,要支持某種設(shè)備就必須提供這種設(shè)備的控制代碼,然后把它加載進(jìn)內(nèi)核,內(nèi)核才能使用該設(shè)備。從內(nèi)核的角度來(lái)看,驅(qū)動(dòng)程序是一個(gè)設(shè)備的代表。當(dāng)內(nèi)核需要與某個(gè)設(shè)備交互時(shí),就找到該設(shè)備的驅(qū)動(dòng)程序,而后通過(guò)標(biāo)準(zhǔn)的接口調(diào)用驅(qū)動(dòng)程序的相應(yīng)函數(shù),控制設(shè)備,而內(nèi)核并不需要知道驅(qū)動(dòng)程序如何工作,也不需要了解設(shè)備的細(xì)節(jié),設(shè)備的細(xì)節(jié)由驅(qū)動(dòng)程序掌握。驅(qū)動(dòng)程序可以動(dòng)態(tài)地加載和卸載,內(nèi)核只包含必需設(shè)備的驅(qū)動(dòng)程序。的設(shè)備驅(qū)動(dòng)程序與外界的接口可分為三部分(如圖所示)【】:()驅(qū)動(dòng)程序與系統(tǒng)引導(dǎo)的接口即自動(dòng)配置和初始化子程序,負(fù)責(zé)檢測(cè)所要驅(qū)動(dòng)的硬件設(shè)備是否存在和能否正常工作。如果該設(shè)備正常,則對(duì)這個(gè)設(shè)備及其相關(guān)的
37、設(shè)備驅(qū)動(dòng)程序需要的軟件狀態(tài)進(jìn)行初始化。這部分驅(qū)動(dòng)程序僅在初始化的時(shí)候被調(diào)用一次。武漢理工大學(xué)碩士學(xué)位論文系統(tǒng)引導(dǎo)操作系統(tǒng)內(nèi)核。硬件沒(méi)備可三下與系統(tǒng)引導(dǎo)的接口與操作系統(tǒng)內(nèi)核的接口與硬件設(shè)備的接口設(shè)備驅(qū)動(dòng)程序圖的設(shè)備驅(qū)動(dòng)程序與外界的接口()驅(qū)動(dòng)程序與操作系統(tǒng)內(nèi)核的接口即操作的子程序,如讀寫操作。調(diào)用這部分是由于系統(tǒng)調(diào)用的結(jié)果。這部分程序在執(zhí)行的時(shí)候,系統(tǒng)仍認(rèn)為是和進(jìn)行調(diào)用的進(jìn)程屬于同一個(gè)進(jìn)程,在其中調(diào)用()等與進(jìn)程運(yùn)行環(huán)境有關(guān)的函數(shù)。()驅(qū)動(dòng)程序與設(shè)備的接口即中斷服務(wù)子程序。中斷可以產(chǎn)生于任何一個(gè)進(jìn)程運(yùn)行的時(shí)候,因此在中斷服務(wù)程序被調(diào)用的時(shí)候,不能依賴于任何進(jìn)程的狀態(tài),也就不能調(diào)用任何與進(jìn)程運(yùn)行環(huán)
38、境有關(guān)的函數(shù)。因?yàn)樵O(shè)備驅(qū)動(dòng)程序一般都支持同一類型的若干設(shè)備,所以在系統(tǒng)調(diào)用中斷服務(wù)子程序的時(shí)候,都帶有一個(gè)或多個(gè)參數(shù),以唯一標(biāo)識(shí)請(qǐng)求服務(wù)的設(shè)備。字符設(shè)備驅(qū)動(dòng)系統(tǒng)的設(shè)備分為字符設(shè)備(),塊設(shè)備(),網(wǎng)絡(luò)設(shè)備()三種。字符設(shè)備是指存取時(shí)沒(méi)有緩存,不能完全像訪問(wèn)普通文件數(shù)據(jù)流一樣前后移動(dòng)訪問(wèn)指針,以字符流形式發(fā)送和接收數(shù)據(jù)的設(shè)備,典型的字符設(shè)備包括鼠標(biāo),鍵盤,串行口等;塊設(shè)備是利用一塊系統(tǒng)內(nèi)存作為緩沖區(qū),能夠隨機(jī)存取,當(dāng)用戶進(jìn)程對(duì)設(shè)備進(jìn)行讀寫請(qǐng)求時(shí),驅(qū)動(dòng)程序先查看緩沖區(qū)中的內(nèi)容,如果緩沖區(qū)中的數(shù)據(jù)能滿足用戶的要求就返回相應(yīng)的數(shù)據(jù),否則就調(diào)用相應(yīng)的請(qǐng)求函數(shù)來(lái)進(jìn)行實(shí)際的操作,主要包括硬盤軟盤設(shè)備和等;網(wǎng)
39、絡(luò)設(shè)備在系統(tǒng)中做專門處理,常用的有網(wǎng)卡和等。它們都在武漢理工大學(xué)碩學(xué)位論文目錄的子目錄下,比如,等【。本系統(tǒng)平臺(tái)使用的攝像頭是字符設(shè)備,因此要做的工作是下字符型設(shè)備驅(qū)動(dòng)的實(shí)現(xiàn)。以下對(duì)一般字符設(shè)備驅(qū)動(dòng)做出分析,以便后續(xù)的研究。在系統(tǒng)內(nèi)部,設(shè)備的存取是通過(guò)一組固定的入口點(diǎn)來(lái)進(jìn)行,這組入口點(diǎn)是由每個(gè)設(shè)備的設(shè)備驅(qū)動(dòng)程序提供的。通常來(lái)說(shuō),字符型設(shè)備驅(qū)動(dòng)程序能夠提供如下幾個(gè)入口點(diǎn)【】:()入口點(diǎn)。對(duì)設(shè)備特殊文件進(jìn)行系統(tǒng)調(diào)用時(shí),將調(diào)用驅(qū)動(dòng)程序的函數(shù):()(,奎);其中參數(shù)為設(shè)備特殊文件的(索引結(jié)點(diǎn))結(jié)構(gòu)的指針,參數(shù)是指向這一設(shè)備的文件結(jié)構(gòu)的指針。()的主要任務(wù)是確定硬件處在就緒狀態(tài)、驗(yàn)證次設(shè)備號(hào)的合法性(次
40、設(shè)備號(hào)可以用()取得)、控制使用設(shè)備的進(jìn)程數(shù)、根據(jù)執(zhí)行情況返回狀態(tài)碼(表示成功,負(fù)數(shù)表示存在錯(cuò)誤)等;()入口點(diǎn)。當(dāng)最后一個(gè)打開設(shè)備的用戶進(jìn)程執(zhí)行系統(tǒng)調(diào)用時(shí),內(nèi)核將調(diào)用驅(qū)動(dòng)程序的函數(shù):(木)(,木);函數(shù)的主要工作是清理未結(jié)束的輸入輸出操作、釋放資源、用戶自定義其他標(biāo)志的復(fù)位等。()入口點(diǎn)。當(dāng)對(duì)設(shè)備特殊文件進(jìn)行系統(tǒng)調(diào)用時(shí),將調(diào)用驅(qū)動(dòng)程序的()函數(shù),該函數(shù)原型定義如下:()(掌,幸,宰);()用來(lái)從設(shè)備中讀取數(shù)據(jù)。當(dāng)該函數(shù)指針被賦為值時(shí),將導(dǎo)致系統(tǒng)調(diào)用出錯(cuò)并返回(“,非法參數(shù))。函數(shù)返回非負(fù)值表示成功讀取的字節(jié)數(shù)(返回值為“數(shù)據(jù)類型,通常就是目標(biāo)平臺(tái)上的固有整數(shù)類型)。()入口點(diǎn)。向設(shè)備寫數(shù)據(jù),
41、對(duì)于有緩沖區(qū)的操作,一般是把數(shù)據(jù)寫入緩沖區(qū)里。當(dāng)設(shè)備特殊文件進(jìn)行系統(tǒng)調(diào)用時(shí),將調(diào)用驅(qū)動(dòng)程序的函數(shù):()(,幸,幸);()入口點(diǎn)。該函數(shù)是特殊的控制函數(shù),可以通過(guò)它向設(shè)備傳遞控制信武漢理工大學(xué)碩士學(xué)位論文息或從設(shè)備取得狀態(tài)信息,函數(shù)原型為:硫(幸)(幸,);對(duì)一個(gè)硬件設(shè)備的驅(qū)動(dòng)有兩種方式:一種是直接加載到內(nèi)核代碼中,啟動(dòng)內(nèi)核時(shí)就會(huì)驅(qū)動(dòng)此硬件設(shè)備;另一種是以模塊方式,編譯生成一個(gè)文件。模塊()是在內(nèi)核空間運(yùn)行的程序,實(shí)際上是一種目標(biāo)對(duì)象文件,沒(méi)有鏈接,不能獨(dú)立運(yùn)行,但是可以裝載到系統(tǒng)中作為內(nèi)核的一部分運(yùn)行,從而可以動(dòng)態(tài)擴(kuò)充內(nèi)核的功能。模塊最主要的用處就是用來(lái)實(shí)現(xiàn)設(shè)備驅(qū)動(dòng)程序,當(dāng)應(yīng)用程序需要它時(shí)再加
42、載進(jìn)內(nèi)核空間運(yùn)行。通常一個(gè)硬件的驅(qū)動(dòng)程序就是指一個(gè)驅(qū)動(dòng)模塊。對(duì)于任何一個(gè)硬件設(shè)備,它在下面存在一個(gè)對(duì)應(yīng)的邏輯設(shè)備節(jié)點(diǎn),即通常所說(shuō)的設(shè)備文件。這個(gè)節(jié)點(diǎn)是通過(guò)命令建立的,其中指定了主設(shè)備號(hào)和次設(shè)備號(hào)。主設(shè)備號(hào)表明了某一類設(shè)備,一般對(duì)應(yīng)確定的驅(qū)動(dòng)程序;次設(shè)備號(hào)一般用于區(qū)分不同屬性,例如不同的使用方法,不同的位置,不同的操作。這個(gè)設(shè)備號(hào)是從文件中獲得的,所以一般是先有驅(qū)動(dòng)程序在內(nèi)核中,才有設(shè)備節(jié)點(diǎn)在目錄中。圖表明了驅(qū)動(dòng)程序與系統(tǒng)之間的關(guān)系。圖驅(qū)動(dòng)程序與系統(tǒng)關(guān)系武漢理工大學(xué)碩士學(xué)位論文攝像頭驅(qū)動(dòng)的設(shè)計(jì)攝像頭的選擇當(dāng)前攝像頭大體可以分為兩大類【】:()類和)類,這兩種傳感器都是利用矽感光二極體()進(jìn)行光與電的轉(zhuǎn)換。轉(zhuǎn)換的原理與通常所見的“太陽(yáng)能電池”電子計(jì)算機(jī)的“
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024高考地理一輪復(fù)習(xí)第五章第1講自然地理環(huán)境的整體性教案含解析新人教版
- 校長(zhǎng)在寒假散學(xué)典禮上講話:擁抱寒假開啟多元成長(zhǎng)之旅
- 小學(xué)一年級(jí)美術(shù)教學(xué)計(jì)劃
- 《在細(xì)雨中呼喊》
- 施工防火安全控制措施
- 2024年湄洲灣職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 二零二五年度施工單位與監(jiān)理人員勞動(dòng)合同范本3篇
- 二零二五版二手汽車買賣合同附帶保險(xiǎn)及保養(yǎng)服務(wù)樣本3篇
- 《科幻小說(shuō)賞析與寫作》 課件 第5、6章 “反烏托邦”的警示與預(yù)言-《一九八四》;“外星文明”的善意與惡行-《安德的游戲》
- 二零二五年度船員勞動(dòng)合同與船舶航行安全應(yīng)急演練服務(wù)合同3篇
- 血透患者高磷血癥護(hù)理查房課件
- 《經(jīng)濟(jì)學(xué)方法論》課件
- 人教版五年級(jí)上冊(cè)數(shù)學(xué)教學(xué)總結(jié)
- 電子水平儀和合像水平儀檢定規(guī)程
- XX行業(yè)發(fā)展趨勢(shì)分析報(bào)告未來(lái)五年的機(jī)遇與挑戰(zhàn)ppt模板
- 110kv各類型變壓器的計(jì)算單
- 小升初語(yǔ)文文言文閱讀歷年真題50題(含答案解析)
- 小兒霧化吸入健康宣教
- 自動(dòng)化設(shè)備設(shè)計(jì)規(guī)范
- 公路工程勘察設(shè)計(jì)投標(biāo)方案(技術(shù)標(biāo))
- 辦公室干部學(xué)習(xí)對(duì)新時(shí)代辦公廳工作重要指示心得體會(huì)
評(píng)論
0/150
提交評(píng)論