freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm嵌入式系統(tǒng)的socket通信設(shè)計(jì)碩士學(xué)位論文-資料下載頁

2025-06-20 00:12本頁面
  

【正文】 nux 內(nèi)核版本的升級,內(nèi)核功能越來越強(qiáng)大,體系結(jié)構(gòu)也越來越復(fù)雜。由于存儲空間的限制,為了提高運(yùn)行性能,必須根據(jù)需要對內(nèi)核進(jìn)行精簡,定制一個符合嵌入式系統(tǒng)的操作平臺。uClinux 可以通過裁剪,把不需要的功能模塊剪掉,留下應(yīng)用需要的模塊,減少系統(tǒng)運(yùn)行的復(fù)雜想,讓系統(tǒng)更加健壯和安全。同時,嵌入式芯片的資源有限,內(nèi)存一般都比較小,裁剪后,內(nèi)核往往會更加簡練,所占用的存貯空間也會很小。由于 uClinux 的內(nèi)核采取了模塊化的設(shè)計(jì)方式,設(shè)計(jì)時可以根據(jù)自己的需要,在內(nèi)核編譯的過程中,靈活選擇所需要的模塊,節(jié)約資源,減少代碼量,提高內(nèi)核的運(yùn)行速度和效率,這也是嵌入式系統(tǒng)的一個明顯的優(yōu)勢。 uClinux 的安裝在 上下載版本為 的 uClinux 源碼包 uClinuxdist,將它復(fù)制到系統(tǒng)的目錄盤下,并進(jìn)行相應(yīng)的解壓縮:輸入指令,并運(yùn)行:tar 就會看到,在系統(tǒng)的目錄盤下,會出現(xiàn) uClinux 的源代碼目錄,也就是uClinuxdist 這個文件夾。由于本系統(tǒng)所用 SmartARM2200 開發(fā)板,這個開發(fā)板為 ARM7 的 LPC2200 芯片,是 philips 公司設(shè)計(jì)制造的。為了適應(yīng)這個芯片的特性,登陸 philips 官方網(wǎng)站,并且查找和下載以下這個文件:下載后,復(fù)制到系統(tǒng)的目錄下,輸入以下指令,并執(zhí)行:cat 執(zhí)行完成后,在編譯 uClinux 內(nèi)核是,選擇系統(tǒng)的內(nèi)核配置的時候,可以找到 LPC2200 的選項(xiàng)。 配置 uClinux安裝完成后,可以通過 make config,make xconfig 來配置 uClinux,也可以通過 make menuconfig 來配置。各命令使用范圍不一樣,但效果是相同的,各命令說明如表 所示。 西南科技大學(xué)工程碩士學(xué)位論文    第 21 頁表 uClinux 的配置方式make config 命令行方式,適用于控制臺和圖形終端make menuconfig 文本菜中方式,適用于控制臺和圖形終端make xconfig X 窗口圖形界面方式,僅適用于圖形終端文本菜單這種配置方式,可以在終端控制臺上來使用,也可以通過圖形終端進(jìn)行使用。為了使得配置具有更強(qiáng)的直觀性,系統(tǒng)設(shè)計(jì)采用了文本菜單這種配置方式。配置 uClinux 和文件系統(tǒng)具體的操作方法如下 [24]:(1)通過已經(jīng)建立的終端或者控制臺,找到 uClinux 源代碼所在的目錄,系統(tǒng)為://usr/src/uClinuxdist ,執(zhí)行命令:cd /usr/src/uClinuxdist(2)如果不是進(jìn)行第一次編譯,需要先清除以前編譯產(chǎn)生的輔助文件和目標(biāo)文件,以保證編譯的正確性。如果是第一次編譯則可省略。執(zhí)行命令:make distclean(3)通過文本菜單方式配置 uClinux執(zhí)行命令:make menuconfig執(zhí)行了 make menuconfig 語句后,將會出現(xiàn)如圖 配置內(nèi)核界面。圖 配 置 內(nèi) 核 界 面 西南科技大學(xué)工程碩士學(xué)位論文    第 22 頁界面中有提示使用“↑” “↓”選擇配置模塊,使用空格鍵選擇或者取消,使用“→” “←” ,選擇命令,最后使用回車鍵 Enter 執(zhí)行命令。第一項(xiàng)可進(jìn)行廠商/產(chǎn)品設(shè)置,選擇第二項(xiàng)則進(jìn)行內(nèi)核版本和函數(shù)庫設(shè)置,各選項(xiàng)的含義以及設(shè)置如表 所示。表 uClinux 中 各 個 選 項(xiàng) 的 描 述選項(xiàng) 描述 設(shè)置Vendor/Product 廠商/產(chǎn)品選擇 PHILIS/LPC2200Kemel 選擇版本 LinuxLibc 選擇函數(shù)庫 uClibcDefault all Settings 默認(rèn)設(shè)置 恢復(fù)默認(rèn)設(shè)置時選擇Updata Default 默認(rèn)廠商配置 根據(jù)需要選擇在設(shè)計(jì)的時候,根據(jù)系統(tǒng)需求,以及所選用的芯片廠商等信息,進(jìn)行系統(tǒng)的配置,主要是根據(jù)以上信息描述,進(jìn)行設(shè)置。進(jìn)入 Linux 內(nèi)核配內(nèi)核資源的界面,如圖 所示。圖 內(nèi) 核 資 源 界 面配置完畢后選擇 Exit,然后在提示下是否保存的時候選擇保存, 配置完畢后,選擇 Exit,在對話提示選擇保存。 西南科技大學(xué)工程碩士學(xué)位論文    第 23 頁(4)建立源代碼文件依賴關(guān)系( 第一次必須執(zhí)行)執(zhí)行命令:make dep(5)編譯內(nèi)核執(zhí)行命令: make第(4)和第(5)進(jìn)行內(nèi)核的編譯,執(zhí)行的時間會比較長。執(zhí)行結(jié)束后,會得到我們需要的兩個目錄:ROMfs 文件和 images 內(nèi)核文件。在 ROMfs 文件中存放嵌入式系統(tǒng)運(yùn)行所需要的應(yīng)用程序。Images 內(nèi)核文件主要存放那個內(nèi)核目錄。 經(jīng)過以上程序,uClinux 的內(nèi)核編譯全部完成。 構(gòu)建文件系統(tǒng)構(gòu)建文件系統(tǒng)就是在物理設(shè)備上構(gòu)建文件組織和目錄,便于系統(tǒng)進(jìn)行文件的組織和管理,它是 uClinux 系統(tǒng)處理數(shù)據(jù)的基礎(chǔ)條件。uClinux 系統(tǒng)的所有有效數(shù)據(jù),包括用程序、庫、系統(tǒng)文件和用戶文件都按照目錄存放在文件系統(tǒng)中。uClinux 系統(tǒng)的文件系統(tǒng),在組織上按照樹狀結(jié)構(gòu)的方式進(jìn)行組織,也就是頂部是根目錄,從根向下進(jìn)行分支,通常把文件系統(tǒng)的最頂端成為根目錄。uClinux 系統(tǒng)通常只有一個文件樹,這個文件樹以樹根“/”作為起點(diǎn),其它的文件和外部設(shè)備按照樹的形式,掛結(jié)在這個文件樹上 [25]。uClinux 根目錄下可以見到以下結(jié)構(gòu):/bin/home/etc/mnt/lost+found/tmp /dev/sbin /var /boot /root/lib /proc /usr設(shè)計(jì)中選擇的 ROMFS 文件系統(tǒng),主要是考慮到系統(tǒng)的存貯結(jié)構(gòu)。因?yàn)檫@種文件系統(tǒng)的內(nèi)核比較小,通常情況下只有 4000 字節(jié)左右,可以有效的節(jié)約系統(tǒng)的資源。內(nèi)核在連接的時候,只需要連接到 ROMFS 文件系統(tǒng),后面用模塊裝載工具把其它相關(guān)的模塊和文件系統(tǒng)裝載進(jìn)來,而不是所有的文件和模塊全部掛接。 ROMFS 文件系統(tǒng)的底層結(jié)構(gòu)也是非常的簡單,也可以用來進(jìn)行塊設(shè)備的操作。ROMFS 文件系統(tǒng)的構(gòu)成,它的文件系統(tǒng)頭由 16 字節(jié)組成,文件系統(tǒng)名由 4 字節(jié)組成,文件系統(tǒng)的大由 4 字節(jié)組成,其次還有 4 字節(jié)的校驗(yàn)和 4 字節(jié)的卷標(biāo)名。然后就是文件的頭和數(shù)據(jù)了,文件頭也是由 16 字節(jié)組成,開始的是文件模式信 西南科技大學(xué)工程碩士學(xué)位論文    第 24 頁息,通常占用 4 比特的,后面的 28 比特,是這樣分配的:4 字節(jié)為下后一個文件的地址偏移量,4 字節(jié)為文件的鏈接信息、4 字節(jié)為文件大小、4 字節(jié)為文件的校驗(yàn)和。從后面的第 16 字節(jié)開始,顯示的是文件名和相關(guān)其數(shù)據(jù) [26]。ROMFS 是一種只讀的文件系統(tǒng),由于它是只讀的,就決定了這個文件系統(tǒng)是非常小的。如果設(shè)計(jì)中需要一種可寫的文件系統(tǒng),那么,就需要尋找一種可以在RAM 上使用的可寫文件系統(tǒng)。在設(shè)計(jì)中,根據(jù)需要選擇了 RAMFS 文件系統(tǒng),這種文件系統(tǒng)可以用于 RAMDISK 文件系統(tǒng)的寫操作,它與 CRAMFS 的結(jié)合可以適合大多數(shù)嵌入式系統(tǒng)的需求。制作 ramdisk 具體步驟如下 [27]:一般在內(nèi)核編譯時,支持 ramdisk 的內(nèi)核選項(xiàng):CONFIG BLK DEV RAM,CONFIG RD RELEASE BLOCKS, CONFIG BLK DEV IlVITRD:同時在 PC 機(jī)上按照如下的方法來制作:(1)制作映象文件建立虛擬成塊的文件 執(zhí)行命令:dd if=/dev/zero of= bs=1024 count=500格式化生成的塊設(shè)備: 文件執(zhí)行命令:mke2fs –m0 –F (2)配置根文件系統(tǒng),將 和 加載到主機(jī)文件系統(tǒng)執(zhí)行命令:mount ram /o loop執(zhí)行命令:mount rom/o loop建立在 ramfs 中需要的目錄,也就是在 ram 目錄下建立子目錄。執(zhí)行命令:mkdir ram/bin執(zhí)行命令:mkdir ram/dev執(zhí)行命令:mkdir ram/etc執(zhí)行命令:mkdir ram/var拷貝必須的文件到 ramfs 中執(zhí)行命令:cp –a rom/etc/* ram/etc/執(zhí)行命令:cp –a rom/bin/sh ram/bin/執(zhí)行命令:cp –a rom/bin/init ram/bin/int創(chuàng)建設(shè)備節(jié)點(diǎn):執(zhí)行命令: mknod ram/dev/ttS0 c 4 64執(zhí)行命令: mknod ram/dev/console c 51執(zhí)行指令的說明:第一條指令創(chuàng)建設(shè)備 ttyS0,即第 0 個串口設(shè)備,主設(shè)備的號為 4,從設(shè)備的號為 64,第二條指令是建立字符設(shè)備 console,即控制 西南科技大學(xué)工程碩士學(xué)位論文    第 25 頁臺,主設(shè)備號為 5 從設(shè)備號為 1。最后卸載 和 的修改已經(jīng)保存。執(zhí)行命令: umount ram執(zhí)行命令: umount rom到此 RAM DISK 制作完畢。內(nèi)核編譯和文件系統(tǒng)構(gòu)建完成以后通過網(wǎng)絡(luò) FTP 的方式把 和 ramdis下載到開發(fā)板上,這樣完成了 uClinux 的移植。. PC 機(jī)上的程序設(shè)計(jì) 嵌入式 TCP /IP 分析 在目前的網(wǎng)絡(luò)協(xié)議中,TCP/IP 是應(yīng)用最廣泛的網(wǎng)絡(luò)協(xié)議。 TCP/IP 的核心是分層的思想,它可以將不同的芯片、系統(tǒng)之間通過一種標(biāo)準(zhǔn)的協(xié)議相互連接起來,做到互聯(lián)互通。需要傳輸?shù)臄?shù)據(jù)以數(shù)據(jù)包的形式進(jìn)行傳輸,這也是 TCP/IP 傳輸?shù)囊粋€基本單位。通常情況下,在嵌入式系統(tǒng)的應(yīng)用中,數(shù)據(jù)的采集和傳輸是是核心的任務(wù)和功能。對于嵌入式系統(tǒng)來說,需要根據(jù)系統(tǒng)的特點(diǎn)以及需要完成的功能,靈活選擇相應(yīng)的協(xié)議,因?yàn)榍度胧较到y(tǒng)的資源畢竟有限,處理器的速度和 PC 機(jī)相比,還是有很大的差距。同時,存貯的空間也是相對有限,需要的協(xié)議可以選擇,不需要的協(xié)議可以裁減掉,這也是嵌入式系統(tǒng)最大的特點(diǎn)。選擇了相應(yīng)的協(xié)議后,還要根據(jù)系統(tǒng)的功能和需求,進(jìn)行相應(yīng)的分析,特定問題特定處理,這也是嵌入式系統(tǒng)的一個特點(diǎn)。根據(jù)需要傳輸?shù)臄?shù)據(jù)的大小,以及傳輸?shù)乃俣鹊葐栴},可以采取特別的收發(fā)方式。嵌入式系統(tǒng)的 TCP/IP 協(xié)議棧主要包含 ARP 協(xié)議 IP 協(xié)議,ICMP 協(xié)議,TCP 協(xié)議以及 UDP 協(xié)議等。ARP 主要的功能是進(jìn)行地址的解析,獲取數(shù)據(jù)傳輸?shù)奈锢淼刂贰R驗(yàn)榍度胧较到y(tǒng)中數(shù)據(jù)是按照地址進(jìn)行存貯的,當(dāng)一個嵌入式系統(tǒng)上的 IP 地址的 ARP 被上傳到網(wǎng)絡(luò)上,就會收到一個應(yīng)答,這個應(yīng)答確認(rèn)物理地址,找到物理地址后,就會找到相應(yīng)需要傳輸?shù)臄?shù)據(jù),并進(jìn)行傳輸。也就是說,ARP 協(xié)議解決服務(wù)器端和客戶端在通信的時候 IP 地址物理地址轉(zhuǎn)換。IP 協(xié)議主要用于網(wǎng)絡(luò)之間的相互連接,規(guī)定了進(jìn)行網(wǎng)絡(luò)連接時各個系統(tǒng)之間必須相互遵守的規(guī)則。在 IP 進(jìn)行數(shù)據(jù)傳輸時,對傳輸?shù)?IP 數(shù)據(jù)包進(jìn)行定義,進(jìn)行數(shù)據(jù)包的封裝時,還包括需要傳輸數(shù)據(jù)的目的地址,數(shù)據(jù)協(xié)議的版本號等。最后還要對傳輸?shù)臄?shù)據(jù)進(jìn)行校驗(yàn),以確保數(shù)據(jù)傳輸?shù)恼_性。在 IP 協(xié)議中,給每個每臺設(shè)備一個地址,這個地址是唯一的,在傳輸過程中,相互傳輸數(shù)據(jù)的設(shè)備根 西南科技大學(xué)工程碩士學(xué)位論文    第 26 頁據(jù) IP 地址就可以找到對方,同時把 IP 包解析出來,得到需要的數(shù)據(jù)。ICMP 是一個報文協(xié)議,因?yàn)樵?TCP/IP 傳輸過程中需要傳輸一些控制信息,也就是網(wǎng)絡(luò)是否堵塞或者暢通,以及路由的相關(guān)信息等。它可以提供一個簡單易懂的網(wǎng)絡(luò)出錯的信息,通常使用的 PING 命令就是基于 ICMP 協(xié)議的。TCP 協(xié)議是傳輸層在連接過程中應(yīng)用的協(xié)議,它是整個 TCP/IP 的核心。TCP協(xié)議一般要通過“三次握手”的方式建立連接。TCP 協(xié)議起到承上啟下的作用,與底層和高層的協(xié)議進(jìn)行通訊,以確保整個系統(tǒng)能夠有效的連接并能夠和其它系統(tǒng)可以進(jìn)行數(shù)據(jù)傳輸。 嵌入式 TCP/IP 設(shè)計(jì)TCP/IP 協(xié)議比較復(fù)雜,因?yàn)榍度胧皆O(shè)備的資源和效率都是夠用就好,因此在嵌入式系統(tǒng)上面來設(shè)計(jì)一個 TCP/IP 協(xié)議要受到相應(yīng)的限制 [28]。論文在設(shè)計(jì)的TCP/IP 框架的時候,考慮到相關(guān)的技術(shù)要求和需求,設(shè)計(jì)了一個最有效的框架,它能完成特定的功能,協(xié)議框架如下圖 所示。圖 嵌入式 TCP/IP 框架對于 TCP 連接,嵌入式系統(tǒng)需要把傳遞的數(shù)據(jù)、參數(shù)等存入指定的位置中,完成一次簡單的數(shù)據(jù)服務(wù)。TCP 服務(wù)器端,通過三次握手建立連接,此時,嵌入式系統(tǒng)為被動方,功能是監(jiān)聽服務(wù)器的狀態(tài),處于被動打開后的 listen 狀態(tài),等待對方發(fā)起連接。收到 SYN 數(shù)據(jù)片后,發(fā)出 SYN+ACK 數(shù)據(jù)片并確認(rèn)收到對方的 SYN,然后,更改狀態(tài)為 SYN_ RECEIVED。最后接收到發(fā)送端返回的一個包含 ACK 西南科技大學(xué)工程碩士學(xué)位論文    第 27 頁的空數(shù)據(jù)片,至此,完成了三次握手,進(jìn)入 ESTABLISHED 狀態(tài),發(fā)送端和服務(wù)器端就可以進(jìn)行 TCP 數(shù)據(jù)通訊。嵌入式系統(tǒng)在第一次建立連接時,初始化序列號。隨后,系統(tǒng)不會記憶 TCP連接的序列號,根據(jù)發(fā)送端發(fā)包中的值來確定序列號,重復(fù)報文不能識別,對重復(fù)的報文照?;貞?yīng)。設(shè)計(jì)中,嵌入式服務(wù)器響應(yīng)客戶端的請求時,不考慮失序問題,接收一個發(fā)送一個確認(rèn)回答。
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1