基于Mini6410的USB虛擬存儲
發(fā)布時間:2020-08-02 20:55
【摘要】:本文是在實習期間,以公司的實際產(chǎn)品為背景,設(shè)計的一種基于無線網(wǎng)絡的虛擬存儲設(shè)備。設(shè)計的開發(fā)平臺是Mini6410,所用的主控制芯片是S3C6410,主機和目標機的軟件開發(fā)平臺均是Linux下的編輯,編譯環(huán)境。 虛擬存儲技術(shù)是一種邏輯存儲技術(shù),它把人們對虛擬存儲系統(tǒng)進行的各種操作鏡像到另一個物理存儲系統(tǒng)上,也就是虛擬存儲技術(shù)通過軟技術(shù)來間接達到對物理存儲設(shè)備的管理和控制。而無線局域網(wǎng)的發(fā)展尤其是Wifi技術(shù)的廣泛應用使虛擬存儲的實現(xiàn)變得更加靈活。 論文從系統(tǒng)的設(shè)計目標,設(shè)計流程和系統(tǒng)設(shè)計框圖等方面對系統(tǒng)做了總體說明。虛擬存儲設(shè)備的實現(xiàn)方案包括接口電路單元,主控制器單元,網(wǎng)絡收發(fā)單元等三個部分。 論文介紹了嵌入式開發(fā)環(huán)境,并搭建了本設(shè)計的開發(fā)環(huán)境平臺。主要工作包括在主機上安裝Vmware,Fedora9以及開發(fā)工具,選用和配置目標機上的Bootloader,嵌入式根文件系統(tǒng)和內(nèi)核,最后實現(xiàn)下載內(nèi)核等。 論文還進行了開發(fā)板端的程序設(shè)計部分。文中介紹了USB協(xié)議的基礎(chǔ)知識,包括USB規(guī)范,設(shè)備描述符,設(shè)備請求命令和傳輸機制。論文介紹了Linux下的網(wǎng)絡編程的基礎(chǔ)知識。在介紹USB協(xié)議和Linux網(wǎng)絡編程之后,論文介紹了Mini6410作為Mass-storage類的USB設(shè)備被枚舉的過程,以及Linux下無線通信的網(wǎng)絡編程實現(xiàn)。最后對整個工作進行了總結(jié)。
【學位授予單位】:華中科技大學
【學位級別】:碩士
【學位授予年份】:2011
【分類號】:TP333
【圖文】:
16圖 3-5 Gcc 安裝成功效果圖如果出現(xiàn)如圖 3-5 最后一行 gcc version 4.5.1 這樣的信息,說明安裝成功。3.2.2 解壓安裝源代碼及其他工具這里需要解壓安裝的源代碼及工具有:Linux 內(nèi)核源代碼,busybox-1.17 源代碼,U-boot 源代碼,目標文件系統(tǒng)目錄,目標文件系統(tǒng)映象制作工具【14】。首先在 Fedora9 中創(chuàng)建工作目錄/opt/FriendlyARM/mini6410/linux在命令行執(zhí)行#mkdir p /opt/FriendlyARM/mini6410/linux先進入此目錄,運行命令:#cd /opt/FriendlyARM/mini6410/linux然后依次執(zhí)行以下命令:
Linux 內(nèi)核將空間分為兩部分,高處稱為“內(nèi)核空間”,低處稱為間”。用戶空間和內(nèi)核空間的代碼是不能進行互訪的的,但有時候為了某種用戶空間的代碼進入內(nèi)核空間,這時就需要系統(tǒng)調(diào)用。而圖中的 GNU C Llibc)正是實現(xiàn)連接用戶程序和內(nèi)核系統(tǒng)調(diào)用的接口【22】。我們編譯內(nèi)核使用配置文件是缺省的 config_n43 。首先運行命令:#cp config_mini6410_n43 .config然后執(zhí)行 make menuconfig,出現(xiàn)配置內(nèi)核菜單選項界面(如圖 3-7),添ifi 模塊和 USB gadget 驅(qū)動,然后執(zhí)行#make zImage,開始編譯內(nèi)核,編譯會在 arch/arm/boot 目錄下生成 linux 內(nèi)核映象文件 zImage。
這個值包含在發(fā)送回主機的設(shè)備描述符內(nèi)的第 8 字節(jié)。所以主機首先使用GetDescriptor 命令詢問設(shè)備就是為了得到這個值。一旦主機檢測到這個數(shù),它復位USB 線并開始枚舉過程【35】。下面的包跟蹤展示第一件事是主機向從機發(fā)送設(shè)備描述符命令到設(shè)備的端口 0(EP0)(如圖 4-2),從機返回它的設(shè)備描述符。
【學位授予單位】:華中科技大學
【學位級別】:碩士
【學位授予年份】:2011
【分類號】:TP333
【圖文】:
16圖 3-5 Gcc 安裝成功效果圖如果出現(xiàn)如圖 3-5 最后一行 gcc version 4.5.1 這樣的信息,說明安裝成功。3.2.2 解壓安裝源代碼及其他工具這里需要解壓安裝的源代碼及工具有:Linux 內(nèi)核源代碼,busybox-1.17 源代碼,U-boot 源代碼,目標文件系統(tǒng)目錄,目標文件系統(tǒng)映象制作工具【14】。首先在 Fedora9 中創(chuàng)建工作目錄/opt/FriendlyARM/mini6410/linux在命令行執(zhí)行#mkdir p /opt/FriendlyARM/mini6410/linux先進入此目錄,運行命令:#cd /opt/FriendlyARM/mini6410/linux然后依次執(zhí)行以下命令:
Linux 內(nèi)核將空間分為兩部分,高處稱為“內(nèi)核空間”,低處稱為間”。用戶空間和內(nèi)核空間的代碼是不能進行互訪的的,但有時候為了某種用戶空間的代碼進入內(nèi)核空間,這時就需要系統(tǒng)調(diào)用。而圖中的 GNU C Llibc)正是實現(xiàn)連接用戶程序和內(nèi)核系統(tǒng)調(diào)用的接口【22】。我們編譯內(nèi)核使用配置文件是缺省的 config_n43 。首先運行命令:#cp config_mini6410_n43 .config然后執(zhí)行 make menuconfig,出現(xiàn)配置內(nèi)核菜單選項界面(如圖 3-7),添ifi 模塊和 USB gadget 驅(qū)動,然后執(zhí)行#make zImage,開始編譯內(nèi)核,編譯會在 arch/arm/boot 目錄下生成 linux 內(nèi)核映象文件 zImage。
這個值包含在發(fā)送回主機的設(shè)備描述符內(nèi)的第 8 字節(jié)。所以主機首先使用GetDescriptor 命令詢問設(shè)備就是為了得到這個值。一旦主機檢測到這個數(shù),它復位USB 線并開始枚舉過程【35】。下面的包跟蹤展示第一件事是主機向從機發(fā)送設(shè)備描述符命令到設(shè)備的端口 0(EP0)(如圖 4-2),從機返回它的設(shè)備描述符。
【引證文獻】
相關(guān)碩士學位論文 前1條
1 沈f
本文編號:2779051
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2779051.html
最近更新
教材專著