欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn).

      時(shí)間:2019-05-14 23:02:47下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn).》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn).》。

      第一篇:基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn).

      基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn)

      隨著計(jì)算機(jī)技術(shù)和微電子技術(shù)的發(fā)展,嵌入式系統(tǒng)在工業(yè)控制、信息家電、通信設(shè)備、智能儀器等領(lǐng)域得到了越來(lái)越廣泛的應(yīng)用。在這些領(lǐng)域,網(wǎng)絡(luò)化、信息化的要求也隨著Internet的迅猛發(fā)展而逐漸突出,越來(lái)越多的嵌入式設(shè)備有接入網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程控制的需求,其基本的方法是在嵌入式設(shè)備上實(shí)現(xiàn)HTTP服務(wù)器,通過(guò)萬(wàn)維網(wǎng)在客戶端用瀏覽器對(duì)設(shè)備進(jìn)行訪問(wèn)。同時(shí),這種方法不可避免地帶來(lái)互聯(lián)網(wǎng)上的安全問(wèn)題,而HTTPS(安全超文本傳輸協(xié)議)是由Netscape公司提出的以SSL(安全套接層)為基礎(chǔ)的安全HTTP方法,因此構(gòu)建嵌入式HTTPS服務(wù)器,將有效地為嵌入式設(shè)備的網(wǎng)絡(luò)化提供安全保障。本文對(duì)HTTP傳輸協(xié)議和SSL安全協(xié)議以及基于ARM的嵌入式技術(shù)等關(guān)鍵技術(shù)進(jìn)行了深入的研究。首先分析了HTTPS這個(gè)安全傳輸設(shè)施的實(shí)現(xiàn)方法,即在標(biāo)準(zhǔn)的TCP/IP參考模型中在HTTP標(biāo)準(zhǔn)協(xié)議層和下面的TCP/IP傳輸協(xié)議層之間額外附加一層SSL安全層,緊接著對(duì)基于請(qǐng)求/響應(yīng)模式的HTTP協(xié)議的信息交換的基本過(guò)程和SSL握手協(xié)議的安全加密的詳細(xì)過(guò)程進(jìn)行了分析與研究。然后,設(shè)計(jì)了系統(tǒng)的整體架構(gòu),硬件采用了應(yīng)用廣泛的32位ARM920T處理器S3C2410,操作系統(tǒng)采用了開(kāi)源的嵌入式Linux操作系統(tǒng),應(yīng)用層的實(shí)現(xiàn)以Linux系統(tǒng)調(diào)用和OpenSSL開(kāi)源庫(kù)為基礎(chǔ)。其次,建立了HTTPS服務(wù)器的支撐環(huán)境,在宿主機(jī)上通過(guò)Vmware虛擬機(jī)技術(shù)建立了Linux操作系統(tǒng)并通過(guò)一系列的服務(wù)配置建立起交叉編譯環(huán)境;在硬件平臺(tái)上燒寫(xiě)了系統(tǒng)引導(dǎo)程序bootloader,并以此為基礎(chǔ)進(jìn)行了嵌入式Linux和根文件系統(tǒng)的配置、編譯和移植。最后,在深入研究了相關(guān)理論后,設(shè)計(jì)了服務(wù)器的基本結(jié)構(gòu)和功能模塊,在利用Linux的系統(tǒng)調(diào)用和OpenSSL API的基礎(chǔ)上,使用C語(yǔ)言實(shí)現(xiàn)了基于ARM-Linux的嵌入式HTTPS服務(wù)器。實(shí)驗(yàn)結(jié)果表明,該服務(wù)器實(shí)現(xiàn)了與客戶端瀏覽器的HTTPS的交互過(guò)程,能正確解析瀏覽器發(fā)出的HTTP請(qǐng)求,并根據(jù)請(qǐng)求資源和請(qǐng)求方法的不同做出不同的響應(yīng),返回給瀏覽器靜態(tài)資源或者CGI程序的處理結(jié)果。同主題文章

      【關(guān)鍵詞相關(guān)文檔搜索】: 信號(hào)與信息處理;ARM;Linux;HTTP;SSL 【作者相關(guān)信息搜索】: 武漢理工大學(xué);信號(hào)與信息處理;王虹;戴帥;

      第二篇:網(wǎng)站服務(wù)器托管HTTPS如何保障數(shù)據(jù)傳輸安全

      網(wǎng)站服務(wù)器托管HTTPS如何保障數(shù)據(jù)傳輸安全

      網(wǎng)站服務(wù)器托管用戶主機(jī)中的數(shù)據(jù)與訪客之間的傳輸是通過(guò)http協(xié)議傳輸?shù)?,然而http是明文傳輸,相對(duì)的HTTPS屬于加密傳輸,會(huì)更安全。

      對(duì)稱加密

      假如現(xiàn)在小客與小服要進(jìn)行一次私密的對(duì)話,他們不希望這次對(duì)話內(nèi)容被其他外人知道??墒?,我們平時(shí)的數(shù)據(jù)傳輸過(guò)程中又是明文傳輸?shù)?,萬(wàn)一被某個(gè)黑客把他們的對(duì)話內(nèi)容給竊取了,那就難受了。

      為了解決這個(gè)問(wèn)題,小服這家伙想到了一個(gè)方法來(lái)加密數(shù)據(jù),讓黑客看不到具體的內(nèi)容。該方法是這樣子的: 在每次數(shù)據(jù)傳輸之前,小服會(huì)先傳輸給小客一把密鑰,然后小服在之后給小客發(fā)消息的過(guò)程中,會(huì)用這把密鑰對(duì)這些消息進(jìn)行加密。小客在收到這些消息后,會(huì)用之前小服給的那把密鑰對(duì)這些消息進(jìn)行解密,這樣,小客就能得到密文里面真正的數(shù)據(jù)了。如果小客要給小服發(fā)消息,也同樣用這把密鑰來(lái)對(duì)消息進(jìn)行加密,小服收到后也用這把密鑰進(jìn)行解密。

      這樣,就保證了數(shù)據(jù)傳輸?shù)陌踩浴TTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      這種方法稱之為對(duì)稱加密,加密和解密都用同一把密鑰。

      這時(shí),小服想著自己的策咯,還是挺得意的。但這個(gè)策略安全的前提是,小客擁有小服的那把密鑰。可問(wèn)題是,小服是以明文的方式把這把密鑰傳輸給小客的,如果黑客截取了這把密鑰,小服與小客就算是加密了內(nèi)容,在截取了密鑰的黑客老哥眼里,這和明文沒(méi)啥區(qū)別。非對(duì)稱加密

      小服還是挺聰明的,意識(shí)到了密鑰會(huì)被截取這個(gè)問(wèn)題,他又想到了另外一種方法:用非對(duì)稱加密的方法來(lái)加密數(shù)據(jù)。方法如下:

      小服和小客都擁有兩把鑰匙,一把鑰匙是公開(kāi)的(全世界都知道也沒(méi)關(guān)系),稱之為公鑰;而另一把鑰匙是保密(也就是只有自己才知道),稱之為私鑰。并且,用公鑰加密的數(shù)據(jù),只有對(duì)應(yīng)的私鑰才能解密;用私鑰加密的數(shù)據(jù),只有對(duì)應(yīng)的公鑰才能解密。所以在傳輸數(shù)據(jù)的過(guò)程中,小服在給小客傳輸數(shù)據(jù)的過(guò)程中,會(huì)用小客給他的公鑰進(jìn)行加密,然后小客收到后,再用自己的私鑰進(jìn)行解密。小客給小服發(fā)消息的時(shí)候,也一樣會(huì)用小服給他的公鑰進(jìn)行加密,然后小服再用自己的私鑰進(jìn)行解密。這樣,數(shù)據(jù)就能安全到達(dá)雙方。HTTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      想著這么復(fù)雜的策略都能想出來(lái),小服可是得意的不能再得意了…..還沒(méi)等小服得意多久,小客就給它潑了一波冷水。

      小客嚴(yán)肅著說(shuō):其實(shí),你的這種方法也不是那么安全啊,還是存在被黑客截取的危險(xiǎn)啊。例如:

      你在給我傳輸公鑰的過(guò)程中,如果黑客截取了你的公鑰,并且拿著自己的公鑰來(lái)冒充你的公鑰來(lái)發(fā)給我。我收到公鑰之后,會(huì)用公鑰進(jìn)行加密傳輸(這時(shí)用的公鑰實(shí)際上是黑客的公鑰)。黑客截取了加密的消息之后,可以用他自己的私鑰來(lái)進(jìn)行解密來(lái)獲取消息內(nèi)容。然后再用你(小服)的公鑰來(lái)對(duì)消息進(jìn)行加密,之后再發(fā)給你(小服)。這樣子,我們的對(duì)話內(nèi)容還是被黑客給截取了(倒過(guò)來(lái)小客給小服傳輸公鑰的時(shí)候也一樣)。......這么精妙的想法居然也不行,小服這波,滿臉無(wú)神。

      這里插講下,其實(shí)在傳輸數(shù)據(jù)的過(guò)程中,在速度上用對(duì)稱加密的方法會(huì)比非對(duì)稱加密的方法快很多。所以在傳輸數(shù)據(jù)的時(shí)候,一般不單單只用非對(duì)稱加密這種方法(我們先假設(shè)非對(duì)稱密碼這種方法很安全),而是會(huì)用非對(duì)稱加密 + 對(duì)稱加密這兩種結(jié)合的方法?;谶@個(gè),我們可以用非對(duì)稱加密方法來(lái)安全著傳輸密鑰,之后再用對(duì)稱加密的方法來(lái)傳輸消息內(nèi)容 數(shù)字證書(shū)

      我們回頭想一下,是什么原因?qū)е路菍?duì)稱加密這種方法的不安全性呢?它和對(duì)稱加密方法的不安全性不同。非對(duì)稱加密之所以不安全,是因?yàn)樾】褪盏搅斯€之后,無(wú)法確定這把公鑰是否真的屬于小服。

      也就是說(shuō),我們需要找到一種策略來(lái)證明這把公鑰就是小服的,而不是別人冒充的。為了解決這個(gè)問(wèn)題,小服和小客絞盡腦汁想出了一種終極策略:數(shù)字證書(shū)——我們需要找到一個(gè)擁有公信力、大家都認(rèn)可的認(rèn)證中心(CA)。小服在給小客發(fā)公鑰的過(guò)程中,會(huì)把公鑰以及小服的個(gè)人信息通過(guò)Hash算法生成消息摘要。HTTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      為了防止摘要被人調(diào)換,小服還會(huì)用CA提供的私鑰對(duì)消息摘要進(jìn)行加密來(lái)形成數(shù)字簽名。HTTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      并且,最后還會(huì)把原來(lái)沒(méi)Hash算法之前的信息和數(shù)字簽名合并在一起,形成數(shù)字證書(shū)。HTTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      當(dāng)小客拿到這份數(shù)字證書(shū)之后,就會(huì)用CA提供的公鑰來(lái)對(duì)數(shù)字證書(shū)里面的數(shù)字簽名進(jìn)行解密得到消息摘要,然后對(duì)數(shù)字證書(shū)里面小服的公鑰和個(gè)人信息進(jìn)行Hash得到另一份消息摘要,然后把兩份消息摘要進(jìn)行對(duì)比,如果一樣,則證明這些東西確實(shí)是小服的,否則就不是。HTTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      這時(shí)可能有人會(huì)有疑問(wèn),CA的公鑰是怎么拿給小客的呢?小服又怎么有CA的私鑰呢? 其實(shí),(有些)服務(wù)器在一開(kāi)始就向認(rèn)證中心申請(qǐng)了這些證書(shū),而客戶端里,也會(huì)內(nèi)置這些證書(shū)。

      HTTPS 如何保證數(shù)據(jù)傳輸?shù)陌踩裕?/p>

      當(dāng)客戶端收到服務(wù)器返回來(lái)的數(shù)據(jù)時(shí),就會(huì)在內(nèi)置的證書(shū)列表里,查看是否有有解開(kāi)該數(shù)字證書(shū)的公鑰。

      以上就是HTTPS技術(shù)的說(shuō)明。浦東數(shù)據(jù)中心為用戶提供14念書(shū)俺也服務(wù)器托管技術(shù)支持

      第三篇:基于嵌入式ARM9的USB設(shè)計(jì)與實(shí)現(xiàn)

      基于嵌入式ARM9的USB設(shè)計(jì)與實(shí)現(xiàn)

      引 言

      USB(Universal Serial Bus)是通用串行總線的縮寫(xiě),因其具有方便易用,動(dòng)態(tài)分配帶寬,容錯(cuò)性優(yōu)越和高性價(jià)比等特點(diǎn),現(xiàn)已成為計(jì)算機(jī)的主流接口。

      隨著嵌入式系統(tǒng)的廣泛應(yīng)用,各種小型終端需要開(kāi)發(fā)出與外界聯(lián)系的USB接口。目前,常用的技術(shù)有兩種。基于單片機(jī)的USB接口,特點(diǎn)是需要外置芯片,電路復(fù)雜,留下的CPU資源不多;基于ARM的USB接口,特點(diǎn)是資源豐富,但ARM系列產(chǎn)品較多,如果選型不當(dāng),還需要搭接較多的外圍電路,且不能很好地發(fā)揮CPU性能。USB 接口原理

      USB1.1 規(guī)范[1]將USB 分為5 部分:控制器、控制器驅(qū)動(dòng)程序、USB 芯片驅(qū)動(dòng)程序、USB設(shè)備以及針對(duì)不同USB 設(shè)備的客戶端驅(qū)動(dòng)程序。

      (1)控制器(Host Controller)主要負(fù)責(zé)執(zhí)行由控制器驅(qū)動(dòng)程序發(fā)出的命令。

      (2)控制器驅(qū)動(dòng)程序(Host Controller Driver), 在控制器與USB 設(shè)備間建立通信

      管道(Pipe)。

      (3)USB 驅(qū)動(dòng)程序(USB Driver),提供對(duì)不同USB 設(shè)備及芯片的支持。(4)USB 設(shè)備(USB Device), 有兩類(lèi)USB 設(shè)備:一類(lèi)稱為功能設(shè)備(Function),另

      一類(lèi)是稱為USB 集線器(HUB),可以連接多個(gè)USB 設(shè)備。

      (5)USB 設(shè)備驅(qū)動(dòng)程序(Client Driver Software)及特定應(yīng)用程序。主控制器的驅(qū)動(dòng)軟件由操作系統(tǒng)支持,USB 設(shè)備開(kāi)發(fā)人員一般只需編寫(xiě)客戶驅(qū)動(dòng)程序,實(shí)現(xiàn)特定功能,設(shè)備端所有功能軟件需要全面設(shè)計(jì)。USB 的四種數(shù)據(jù)傳輸模式分別是:控制型傳輸、中斷型傳輸、批量型傳輸、實(shí)時(shí)型傳輸。第一種在缺省通道中傳輸U(kuò)SB 接口本身的配置等控制信息,后面三種用于功能部件傳輸數(shù)據(jù)。中斷型用于鍵盤(pán)等的異步輸入輸出少量數(shù)據(jù)傳輸,批量傳輸主要用于象硬盤(pán)等塊設(shè)備的數(shù)據(jù)傳輸,在中斷和批量的傳輸過(guò)程中要傳遞交互握手信號(hào),確保數(shù)據(jù)準(zhǔn)確無(wú)誤。實(shí)時(shí)傳輸對(duì)帶寬有嚴(yán)格要求,但允許有一定誤碼,省去了交互握手信號(hào)的傳遞,常用于音視頻碼流數(shù)據(jù)傳輸。四種類(lèi)型數(shù)據(jù)都按帶寬要求分配在1ms 一幀的數(shù)據(jù)幀內(nèi)進(jìn)行傳輸,連到端點(diǎn)(EndPoint)通道.1.1嵌入式系統(tǒng)USB 接口設(shè)計(jì)

      要滿足高性能ARM嵌入式系統(tǒng)的要求,擴(kuò)展USB接口必須選擇高性能USB控制器芯片,Philips公司的PDISUBD12 USB器件,是與微處理器配合使用的高性能USB接口器件,性價(jià)比很高[2][4]。PDIUSBD12主要特性有:

      (1)符合USB 1.1 技術(shù)規(guī)范;

      (2)USB控制器并行接口與處理器間的數(shù)據(jù)傳輸速度高達(dá)2M 字節(jié)/秒;(3)在批量模式和同步模式下均可實(shí)現(xiàn)1M 字節(jié)/秒的數(shù)據(jù)傳輸速率;(4)集成了FIFO存儲(chǔ)收發(fā)器,支持DMA 操作;(5)內(nèi)置時(shí)鐘倍頻PLL電路,可編程時(shí)鐘頻率輸出;(6)多中斷模式實(shí)現(xiàn)批量和同步傳輸;

      1.2音頻碼流USB 設(shè)備驅(qū)動(dòng)程序

      Windows2000 中各種USB 設(shè)備客戶驅(qū)動(dòng)程序結(jié)構(gòu)框架基本相同,可以從Windows2000 DDK 中獲得USB 設(shè)備驅(qū)動(dòng)程序范例代碼,對(duì)范例代碼作少量修改就可以滿足特定功能需要。圖1 顯示了驅(qū)動(dòng)程序各層間的數(shù)據(jù)傳遞關(guān)系,底層USB 主控制器驅(qū)動(dòng)程序(USB Host Driver)由操作系統(tǒng)提供支持,設(shè)備驅(qū)動(dòng)程序只需要對(duì)USB Host Driver 上傳的I/O 數(shù)據(jù)包IRP 作出響應(yīng),并把要輸出數(shù)據(jù)以IRP 形式下傳給USB Host Driver 即可[5] [6]。在ISO(實(shí)時(shí)型)模式下傳輸音頻碼流,USB 客戶程序除了WDM(Windows Driver Model)驅(qū)動(dòng)常規(guī)處理外,必須計(jì)算好帶寬,并為驅(qū)動(dòng)程序在非分頁(yè)存儲(chǔ)區(qū)內(nèi)分配好環(huán)行緩沖區(qū)(Ringbuffer),以便USB 主控制器可以不間斷輸出實(shí)時(shí)數(shù)據(jù)。RingBuffer 的大小按下式 計(jì)算:

      每幀字節(jié)數(shù) × 每緩沖幀數(shù) × 緩沖區(qū)數(shù) ; 每傳完一緩沖區(qū),USB Host Driver 回調(diào)(CallBack)一次客戶驅(qū)動(dòng)程序,USB 帶寬

      按每1ms 傳送1 幀數(shù)據(jù)來(lái)分配,要實(shí)現(xiàn)8kHz 采樣頻率、8bits 編碼的音頻PCM 碼流傳輸,幀數(shù)據(jù)包大小必須設(shè)為8Bytes,若設(shè)置4 個(gè)緩沖區(qū)交替工作,每緩沖區(qū)分20 幀傳送, 則RingBuffer 的大小為640Bytes,那么USB 主控制器每20ms 的頻率中斷回調(diào)一次客戶驅(qū)動(dòng)程序是合適的。驅(qū)動(dòng)程序通過(guò)IoSetCompletionRoutine()函數(shù)給每個(gè)IRP 設(shè)置回調(diào)函數(shù)入口地址[6],每完成一個(gè)IRP 緩沖區(qū)數(shù)據(jù)傳送操作,回調(diào)一次該地址指向的函數(shù),以便把下一緩沖包數(shù)據(jù)壓入到IRP 棧,直到全部數(shù)據(jù)流傳送完畢或人為終止傳送。S3C2440A特點(diǎn)

      S3C2440A的CPU部分主要集成了電源模塊、復(fù)位和時(shí)鐘模塊、觸摸屏和小鍵盤(pán)模塊、程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器模塊。同時(shí)提供如下豐富的外圍接口:同步存儲(chǔ)器(SDRAM)和NAND FLASH控制接口,可擴(kuò)展到1 GB的存儲(chǔ)的空間;4個(gè)DMA通道和24個(gè)中斷端口;能控制STN LCD和TFT液晶屏顯示,支持觸摸屏功;USB接口A型和B型各一個(gè);3個(gè)串行口、I2C,SPI,I2S等接口;帶AC97音頻接口;具備SD卡、數(shù)碼相機(jī)接口和網(wǎng)絡(luò)接口。

      S3C2440A還具備多種工作模式,管腳為17×17方型分布,橫向從左1到右17編號(hào),縱向從下A到上U編號(hào),分類(lèi)為A1~A17,B1~B17,C1~C17依此類(lèi)推到U1~U17。這些管腳所對(duì)應(yīng)的功能并不是惟一的,通常只要使能變化,S3C2440A就能實(shí)現(xiàn)不同的控制功能。該設(shè)計(jì)涉及到的 S3C2440A,其管腳如表1所示分為3類(lèi)。

      串口電路

      串口在該設(shè)計(jì)中的作用是通過(guò)計(jì)算機(jī)加載USB驅(qū)動(dòng)程序,原理如圖2所示。

      3.1電源電路

      由于S3C2440A芯片的管腳對(duì)電壓提出了不同要求,所以需要完成電源的變壓,其原理 如圖3所示。驅(qū)動(dòng)程序的研究

      按USB接口,其設(shè)備結(jié)構(gòu)可分為USB Host(主機(jī))和USB Device(外部設(shè)備)。USB主機(jī)控制USB設(shè)備進(jìn)行通信,而主機(jī)與主機(jī)之間,或USB設(shè)備與USB設(shè)備之間是不能通信的。

      4.1 USB主機(jī)

      USB主機(jī)的功能通常包含以下幾個(gè)部分:驗(yàn)證USB設(shè)備是否安插好或拔除;控制USB主機(jī)與設(shè)備兩者中的數(shù)據(jù)流;返回USB主機(jī)的所顯狀態(tài)。

      USB系統(tǒng)軟件由以下3個(gè)部分組成:主機(jī)控制器驅(qū)動(dòng)(HCD)、USB驅(qū)動(dòng)(USBD)、主機(jī)軟件(Host Software)。主機(jī)控制器所具備的功能如表2所示。HCD和USBD包含基于不同抽象層次的軟件接口,兩者以一定的方式協(xié)同完成任務(wù),用以實(shí)現(xiàn) USB系統(tǒng)的功能。它們的任務(wù)差別沒(méi)有具體定義,然而HCD要具備的一項(xiàng)功能就是必須支持多種不同主機(jī)控制器芯片。在一些操作系統(tǒng)中,當(dāng)系統(tǒng)必須實(shí)現(xiàn)某些基本功能時(shí),可由Host Software實(shí)現(xiàn)。

      4.2 USB傳輸類(lèi)型

      USB定義了4種傳送類(lèi)型:控制傳送、同步傳送、中斷傳送、批傳送。其中,控制傳送是指可靠的、非周期性的、突發(fā)的,并由主機(jī)客戶軟件所發(fā)起的通信,主要應(yīng)用于控制命令和狀態(tài)信息的傳送;同步傳送是指在主機(jī)和設(shè)備之間周期性的、連續(xù)的通信,一般用于傳送時(shí)實(shí)信息,這種類(lèi)型保留了將時(shí)間概念包含于數(shù)據(jù)的能力,但傳送并不一定很緊急;中斷傳送是指少量數(shù)據(jù)的、低速的、周期的傳送;批傳送是指非周期的、大量的、可靠的傳送,其典型應(yīng)用在于傳送那些可以利用帶寬的數(shù)據(jù)。

      4.3 USB設(shè)備請(qǐng)求

      USB設(shè)備應(yīng)通過(guò)缺省控制管道(Default Control Pipe)響應(yīng)來(lái)自主機(jī)的請(qǐng)求命令。這些請(qǐng)求是通過(guò)使用控制傳輸來(lái)完成的。請(qǐng)求及請(qǐng)求的參數(shù)通過(guò)Setup包發(fā)向設(shè)備,由主機(jī)負(fù)責(zé)設(shè)置Setup包內(nèi)的每個(gè)域的值。USB設(shè)備請(qǐng)求包含的請(qǐng)求類(lèi)型有三種:標(biāo)準(zhǔn)、廠商和設(shè)備類(lèi)。標(biāo)準(zhǔn)請(qǐng)求用來(lái)完成設(shè)備的枚舉過(guò)程;廠商請(qǐng)求用來(lái)完成使用者自己定義的請(qǐng)求;設(shè)備類(lèi)請(qǐng)求指的是某些特定的USB設(shè)備類(lèi)所傳輸出的請(qǐng)求,例如打印機(jī)類(lèi)就屬于這一類(lèi)。設(shè)備請(qǐng)求要求有嚴(yán)格的定義,包含的內(nèi)容有類(lèi)型、設(shè)備請(qǐng)求、值、索引和長(zhǎng)度。

      4.4 USB驅(qū)動(dòng)程序結(jié)構(gòu) S3C2440A芯片支持USB1.1協(xié)議和USB 2.0協(xié)議。該設(shè)計(jì)是針對(duì)USB Host(主機(jī),A型),并基于USB 1.1協(xié)議編寫(xiě)的。程序結(jié)構(gòu)和數(shù)據(jù)傳輸?shù)牧飨蛉鐖D4所示。

      驅(qū)動(dòng)程序的編寫(xiě)主要分為以下幾個(gè)部分考慮:硬件提取層、中斷服務(wù)程序、標(biāo)準(zhǔn)設(shè)備請(qǐng)求和主循環(huán)。硬件提取層實(shí)現(xiàn)的是S3C2440A對(duì)I/O端口直接的讀寫(xiě)操作;中斷服務(wù)程序處理各種中斷,包括總線任務(wù)上的請(qǐng)求;標(biāo)準(zhǔn)設(shè)備請(qǐng)求完成主機(jī)送來(lái)的各種標(biāo)準(zhǔn)請(qǐng)求,用于完成各種枚舉請(qǐng)求;而主循環(huán)則負(fù)責(zé)完成前臺(tái)的數(shù)據(jù)采集等工作,所有的任務(wù)結(jié)束后都要回到主循環(huán)上去。

      5結(jié) 語(yǔ)

      該設(shè)計(jì)采用三星公司ARM9的S3C2440A芯片作為CPU,比原來(lái)基于單片機(jī)的模式,外圍電路簡(jiǎn)單,容易可靠地實(shí)現(xiàn)嵌入式終端的USB接口功能。在調(diào)試中,用到的嵌入式開(kāi)發(fā)板GEC2440A套件還提供了串口工具DNW。用這一工具可以檢測(cè)驅(qū)動(dòng)程序的正確與否,如:程序編寫(xiě)無(wú)誤,則DNW串口會(huì)提示 “USB IS CONNECT”。由于S3C2440A芯片功能豐富,如處理器可提高運(yùn)算速度,LCD可人機(jī)交互,網(wǎng)口可連接因特網(wǎng),所以開(kāi)發(fā)出的嵌入式終端不但可提升整體性能,還為日后的應(yīng)用奠定了基礎(chǔ)。

      第四篇:基于ARM的嵌入式Linux終端的研討與實(shí)現(xiàn).

      基于ARM的嵌入式Linux終端的研討與實(shí)現(xiàn)

      【中文摘要】嵌入式Linux是將普通Linux操縱體系入行剪裁、改動(dòng),使之能在嵌入式盤(pán)算機(jī)體系上運(yùn)行的一種操縱體系。因?yàn)榧嬗蠰inux和嵌入式體系的長(zhǎng)處,以及ARM Linux因其開(kāi)放的資源特性,嵌入式Linux體系有著巨大的市場(chǎng)前景和商業(yè)機(jī)遇。在實(shí)際的應(yīng)用體系中,對(duì)操縱體系的實(shí)時(shí)機(jī)能也有一定的請(qǐng)求。好比在通信體系中,如果能對(duì)操縱體系的實(shí)時(shí)機(jī)能入行優(yōu)化,提高體系的響應(yīng)速度,就可以用軟件實(shí)現(xiàn)通信協(xié)定,下降對(duì)硬件的請(qǐng)求,用單芯片實(shí)現(xiàn)通信體系,從而下降產(chǎn)品成本。本論文的研討主要是基于ARM920T硬件平臺(tái),該平臺(tái)主要面向高機(jī)能的用戶產(chǎn)品開(kāi)發(fā)。在此平臺(tái)基本上,本文圍繞著Linux內(nèi)核向ARM平臺(tái)移植中幾個(gè)核心技術(shù)鋪開(kāi)討論:首先對(duì)嵌入式Linux體系體系構(gòu)造入行了歸納,并詳細(xì)闡述了與體系移植相關(guān)的主要層。接著,給出了啟動(dòng)引導(dǎo)代碼Boot Loader和Linux內(nèi)核初始化部門(mén)移植到硬件平臺(tái)上的整個(gè)入程,解決了移植入程中所面臨的義務(wù)和難題。最后,在對(duì)Linux內(nèi)核驅(qū)動(dòng)模型深入掌握的基本上,深入探討了QT/Embedded界面的移植。本文最后討論了一些當(dāng)前嵌入式Linux實(shí)時(shí)優(yōu)化技術(shù)。剖析了在勝利移植ARM Linux內(nèi)核基本上,優(yōu)化ARM Linux的中止體系,下降體系的中止延時(shí)。');【Abstract】 Embedded Linux is an Operating System running on the embedded computer system after cutting and modifying general Linux.Because of the advantages in both open source Linux and embedded system, embedded Linux has large market prospect and commercial chances, now the focus of applications for the embedded Linux has become porting Linux kernel to microprocessor.In some real embedded system applications, real time performances are demanded for operating system like ARM Linux.For example, in communication system, although the speed of ARM920T processors can reach several MHz, the response speed of Linux now is not fast enough.In this case individual hardware communication module should be added to increase the real time performances.If we could optimize the real time property of operating system, then we can realize communication agreement in software, reduce the demand of hardware.Finally we can make communication system in a single chipset and cut down the cost of products.The ***’s research is based on ARM920T hardware platform, which is mainly used for high quality user product developing.On the platform, this text discusses several key technologies about how to porting Linux kernel to ARM platform: first, draw a conclusion of embedded Linux system architecture, and describe related layers of porting system in detail;secondly, write out the whole process on porting Boot Loader and Linux kernel init code to hardware platform, solve faced duties and difficulties;finally, after highly grasp the Linux kernel driver model, deeply discuss porting QT/Embedded inte***ce.Support the project software developing, and greatly reduce the complexity and period in embedded product developing.In the end, we have dropped the conclusion about current cut edge real time technologies for embedded Linux.Based on the successfully ported ARM Linux kernel, optimize its interrupt system, reduce its interrupt delay.

      第五篇:基于嵌入式web服務(wù)器的遠(yuǎn)程控制系統(tǒng) 個(gè)人報(bào)告

      課程名稱:嵌入式系統(tǒng)的軟硬件設(shè)計(jì)

      論文題目:基于嵌入式web服務(wù)器的遠(yuǎn)程控制系統(tǒng) 姓名: 設(shè)計(jì)背景

      隨著嵌入式系統(tǒng)的發(fā)展和Internet的普及,在嵌入式系統(tǒng)中接入網(wǎng)絡(luò)已經(jīng)成為嵌入式系統(tǒng)應(yīng)用及網(wǎng)絡(luò)發(fā)展的一個(gè)重要方向,也是必然結(jié)果。嵌入式系統(tǒng)與Internet技術(shù)的結(jié)合,正逐漸改變著每個(gè)人的生活方式、企業(yè)的生產(chǎn)方式以及管理方式;從信息家電,手持?jǐn)?shù)碼產(chǎn)品到設(shè)備管理,工業(yè)自動(dòng)控制,嵌入式Internet技術(shù)有著廣闊的應(yīng)用前景。

      嵌入式Web服務(wù)器是嵌入式系統(tǒng)網(wǎng)絡(luò)化應(yīng)用的重要方面。Web技術(shù)可跨越諸多設(shè)備和系統(tǒng)在硬件和軟件產(chǎn)品間做到即連即用,任何計(jì)算機(jī)只需用Web 瀏覽器,不需要專門(mén)的計(jì)算機(jī)和專用的軟件,即可通過(guò)以太網(wǎng)和TCP/IP 協(xié)議訪問(wèn)各種信息終端??蛻魴C(jī)可任意設(shè)置,在全球的任何一個(gè)角落,只要能連上Internet 并有權(quán)訪問(wèn)Web 服務(wù)器,便可查閱現(xiàn)場(chǎng)有關(guān)信息,給維護(hù)和管理工作帶來(lái)很大的方便。此外,設(shè)備信息通過(guò)網(wǎng)頁(yè)的形式體現(xiàn),可以使用數(shù)據(jù)、圖表、動(dòng)畫(huà)等各種豐富的表現(xiàn)方式。可見(jiàn),在工業(yè)控制領(lǐng)域,各式各樣的嵌入式設(shè)備與Web 技術(shù)的結(jié)合,可大大降低軟件系統(tǒng)和通信系統(tǒng)的設(shè)計(jì)和維護(hù)的工作量,提高現(xiàn)場(chǎng)測(cè)試和控制設(shè)備的管理水平,可實(shí)現(xiàn)設(shè)備遠(yuǎn)程監(jiān)控,這是現(xiàn)代化工業(yè)生產(chǎn)一大亮點(diǎn)。

      結(jié)合Web技術(shù)的嵌入式設(shè)備存在諸多的優(yōu)勢(shì)。研究嵌入式Web 服務(wù)器,以實(shí)現(xiàn)設(shè)備遠(yuǎn)程訪問(wèn)、監(jiān)測(cè)并控制,在科技迅速發(fā)展的今天,符合人們對(duì)便捷生產(chǎn)、便捷生活的需求,有其重要的現(xiàn)實(shí)意義。系統(tǒng)總體方案

      通過(guò)html語(yǔ)言編寫(xiě)Web控制頁(yè)面,用戶能在Web控制MINI2440開(kāi)發(fā)板,實(shí)現(xiàn)對(duì)LED和蜂鳴器的控制,以及通過(guò)DS18B20溫度傳感器測(cè)量溫度,實(shí)時(shí)傳回顯示的Web頁(yè)面上。

      蜂鳴器控制瀏覽器中打開(kāi)web服務(wù)器IP地址占空比輸入頁(yè)面LED狀態(tài)設(shè)置頁(yè)面CGI函數(shù)數(shù)據(jù)顯示頁(yè)面請(qǐng)求服務(wù)器CGI返回PWM設(shè)置結(jié)果頁(yè)面CGI返回LED設(shè)置結(jié)果頁(yè)面Index主頁(yè)面LED控制請(qǐng)求服務(wù)器溫度讀取ResponseRequestRequestRequestRequestResponse圖1 系統(tǒng)流程圖 系統(tǒng)具體設(shè)計(jì)

      首先分析系統(tǒng)的功能需求,我們?cè)O(shè)計(jì)題目是基于嵌入式web服務(wù)器的遠(yuǎn)程控制系統(tǒng),那么此系統(tǒng)需要完成以下幾個(gè)功能:

      1)WEB服務(wù)器的搭建

      經(jīng)過(guò)查閱資料我們選擇BOA服務(wù)器作為本系統(tǒng)的WEB服務(wù)器,BOA服務(wù)器是一個(gè)小巧高效的web服務(wù)器,是一個(gè)運(yùn)行于unix或linux下的,支持CGI的、適合于嵌入式系統(tǒng)的單任務(wù)的http服務(wù)器,源代碼開(kāi)放、性能高。具體的搭建流程參考網(wǎng)絡(luò)資料。2)控制頁(yè)面的編寫(xiě)

      控制頁(yè)面主要是通過(guò)html語(yǔ)言編寫(xiě),將頁(yè)面文件放置在web服務(wù)的文件根目錄下,等待瀏覽器訪問(wèn)web服務(wù)器時(shí),服務(wù)器能夠自動(dòng)的返回我們所編寫(xiě)的頁(yè)面,從而實(shí)現(xiàn)與遠(yuǎn)程的交互 3)服務(wù)器端CGI程序的編寫(xiě)

      根據(jù)html和CGI調(diào)用的規(guī)范,我們將事先寫(xiě)好的程序編譯成CGI文件放置到web服務(wù)器的相應(yīng)文件夾中,當(dāng)有相應(yīng)的請(qǐng)求發(fā)生時(shí),web服務(wù)器會(huì)自動(dòng)條用相應(yīng)的CGI程序。4)linux驅(qū)動(dòng)的編寫(xiě)

      linux驅(qū)動(dòng)主要涉及LED驅(qū)動(dòng)、PWM驅(qū)動(dòng)及DS18B20驅(qū)動(dòng)。

      4個(gè)人承擔(dān)任務(wù)

      (1)蜂鳴器CGI設(shè)計(jì)

      (2)LED驅(qū)動(dòng)編寫(xiě)

      5任務(wù)內(nèi)容 5.1.蜂鳴器CGI 5.1.1公共網(wǎng)關(guān)接口CGI 公共網(wǎng)關(guān)接口CGI是Web 服務(wù)器的一種標(biāo)準(zhǔn)規(guī)范,用來(lái)將Web 用戶的請(qǐng)求傳遞給服務(wù)器的應(yīng)用程序,并將接收到的數(shù)據(jù)回送給Web 用戶。每當(dāng)用戶向Web 服務(wù)器提交一個(gè)頁(yè)面請(qǐng)求(例如,點(diǎn)擊一個(gè)超鏈接或輸入一個(gè)網(wǎng)站地址),Web 服務(wù)器會(huì)將用戶請(qǐng)求的存放在服務(wù)器上的網(wǎng)頁(yè)返回給用戶。然而,當(dāng)用戶提交一個(gè)帶有表單(form)的請(qǐng)求網(wǎng)頁(yè)時(shí),在服務(wù)器端需要接收表單內(nèi)容,必要時(shí)還要根據(jù)表單內(nèi)容作必要的處理。一般來(lái)說(shuō),Web 服務(wù)器并不能直接處理表單,而是把表單內(nèi)容傳送給服務(wù)器的一個(gè)小型應(yīng)用程序,由該程序?qū)Ρ韱螖?shù)據(jù)進(jìn)行處理并回送必要的確定信息。這種在Web 服務(wù)器與應(yīng)用程序之間往返傳遞數(shù)據(jù)的方法或規(guī)范稱之為“公共網(wǎng)關(guān)接口(Common Gateway Interface)”,簡(jiǎn)稱CGI。

      5.1.2蜂鳴器CGI程序任務(wù)

      CGI 程序需要從Web 服務(wù)器接收用戶信息,對(duì)該信息進(jìn)行必要處理,最后返回處理結(jié)果.根據(jù)CGI規(guī)范以及本系統(tǒng)設(shè)計(jì)要求,CGI 需要完成下列任務(wù):(1)接收用戶信息

      我們?cè)诜澍Q器WEB頁(yè)面設(shè)置控制蜂鳴器頻率的PWM占空比,用戶瀏覽器將請(qǐng)求頁(yè)發(fā)送給Web 服務(wù)器,由Web 服務(wù)器創(chuàng)建一個(gè)子進(jìn)程,在子進(jìn)程中調(diào)用CGI 程序,通過(guò)環(huán)境變量將用戶信息傳遞給CGI 程序。(2)解碼用戶信息并處理

      用戶瀏覽器請(qǐng)求頁(yè)在向Web 傳遞過(guò)程中首先被編碼,以適合于使用HTTP 協(xié)議在網(wǎng)絡(luò)上傳送.因此,當(dāng)用戶信息通過(guò)Web 服務(wù)器傳遞給CGI 程序后,CGI 程序要對(duì)接收到的用戶信息進(jìn)行解碼,將其還原成初始信息,或者設(shè)置的占空比,并驅(qū)動(dòng)蜂鳴器工作。(3)生成HTML 網(wǎng)頁(yè)

      將驅(qū)動(dòng)蜂鳴器工作后的結(jié)果動(dòng)態(tài)生成HTML 網(wǎng)頁(yè),通過(guò)Web 服務(wù)器回送給用戶瀏覽器,因?yàn)橛脩魹g覽器要接收的必須是HTML 網(wǎng)頁(yè)。

      5.1.3蜂鳴器CGI程序

      (1)獲得Web 服務(wù)器傳遞的信息 data = getenv(“QUERY_STRING”);

      Web 服務(wù)器將一些關(guān)鍵性信息,如請(qǐng)求方法(GEG、POST 等)、請(qǐng)求頁(yè)類(lèi)型、用戶主機(jī)地址等設(shè)置為相應(yīng)的環(huán)境變量。在CGI 程序中,調(diào)用系統(tǒng)函數(shù)getenv(),讀取這些環(huán)境變量,獲得Web 服務(wù)器傳遞的信息。(2)獲取占空比

      sscanf(data,“beep_control=%d”,&beep_control);從Web 服務(wù)器傳遞的信息中獲取占空比值并保存在beep_contro中。(3)驅(qū)動(dòng)蜂鳴器工作

      set_duty(fd_beep, beep_control);調(diào)用該函數(shù)使蜂鳴器以占空比beep_control對(duì)應(yīng)的頻率發(fā)出聲音,fd_beep是驅(qū)動(dòng)設(shè)備文件的文件描述符。

      voidset_duty(intfd, int duty){ ioctl(fd, PWM_IOCTL_SET_TCNTB, 1000);

      ioctl(fd, PWM_IOCTL_SET_TCMPT, duty);

      ioctl(fd, PWM_IOCTL_START);} 其中,ioctl是驅(qū)動(dòng)中的函數(shù),實(shí)現(xiàn)對(duì)PWM的一些控制,設(shè)置定時(shí)器計(jì)數(shù)值1000,占空比duty。

      #define PWM_IOCTL_START

      _IO(PWM_MAGIC, 0)#define PWM_IOCTL_SET_TCNTB _IOW(PWM_MAGIC, 1, int)#define PWM_IOCTL_SET_TCMPT

      _IOW(PWM_MAGIC, 2, int)這三個(gè)CMD分別為啟動(dòng)PWM定時(shí)器、第二個(gè)為設(shè)置PWM中TCNTB寄存器的值用于設(shè)定定時(shí)器的計(jì)數(shù)值、第三個(gè)為設(shè)置PWM中TCMPT的值用于設(shè)定占空比。(4)生成HTML 網(wǎng)頁(yè)

      cgiHeaderContentType(“text/html”);//CGI響應(yīng)內(nèi)容格式

      fprintf(cgiOut, “”);fprintf(cgiOut, “Beep CGI”);

      fprintf(cgiOut, “”);fprintf(cgiOut, “

      Control beep

      ”);fprintf(cgiOut, “
      ”);printf(“set the duty of beep is %d n”, beep_control);fprintf(cgiOut, “
      ”);fprintf(cgiOut, “ ”);

      //添加返回按鈕 fprintf(cgiOut, "

      下載基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn).word格式文檔
      下載基于ARM-Linux的嵌入式HTTPS服務(wù)器與實(shí)現(xiàn)..doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦