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

正文內(nèi)容

基于arm9的linux系統(tǒng)移植畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-07-02 10:58本頁(yè)面

【導(dǎo)讀】題目:基于ARM9的Linux系統(tǒng)移植。哈爾濱理工大學(xué)畢業(yè)設(shè)計(jì)(論文)評(píng)語(yǔ)。學(xué)生姓名:吳祥飛學(xué)號(hào):1104010223. 任務(wù)起止時(shí)間:20xx年3月1日至20xx年6月20日。答辯委員會(huì)評(píng)定,該生畢業(yè)設(shè)計(jì)(論文)成績(jī)?yōu)椋骸4疝q委員會(huì)主席簽名:職稱(chēng):。1.基于ARM嵌入式系統(tǒng)接口技術(shù),北京:清華大學(xué)出版社,20xx. 2.匯編語(yǔ)言及接口技術(shù),北京:機(jī)械工業(yè)大學(xué)出版社,20xx. 物聯(lián)網(wǎng)時(shí)代的到來(lái)即將再次迎來(lái)一次技術(shù)革命,而物聯(lián)網(wǎng)的核心恰恰。靈魂,對(duì)嵌入式系統(tǒng)的研究對(duì)于嵌入式的發(fā)展有著至關(guān)重要的作用。式系統(tǒng)必須具體到一個(gè)詳細(xì)的實(shí)施過(guò)程。本課題是基于飛凌公司的。BootLoader的移植過(guò)程的詳細(xì)步驟,對(duì)Linux源碼及目錄文件進(jìn)行了簡(jiǎn)要。的分析,對(duì)特定于該開(kāi)發(fā)板的Linux內(nèi)核編譯作簡(jiǎn)要的解讀,最后實(shí)現(xiàn)。Linux內(nèi)核和文件系統(tǒng)移植到開(kāi)發(fā)板上。

  

【正文】 nux 目錄是源代碼的主目錄,在該主目錄中除了包括所有的 14 個(gè) 子目錄以外,還含有唯一的一個(gè) makefile 文件。 boot 目錄中含有 3 個(gè)匯編語(yǔ)言文件,是內(nèi)核源代碼文件中最先被編譯的程序。 fs 是文件系統(tǒng)實(shí)現(xiàn)程序的目錄,共包含 17 個(gè) C 語(yǔ)言程序。 include 頭文件目錄中總共有 32 個(gè) .h 頭文件。體系結(jié)構(gòu)相關(guān)頭文件子目錄 include/asm 這些頭文件主要定義了一些與 CPU 體系結(jié)構(gòu)密切相關(guān)的數(shù)據(jù)結(jié)構(gòu)、宏函數(shù)和變量。 Linux 內(nèi)核專(zhuān)用頭文件子目錄 include/linux。系統(tǒng)專(zhuān)用數(shù)據(jù)結(jié)構(gòu)子目錄 include/sys。內(nèi)核初始化程序目錄 init,該目錄中僅包含一個(gè) 文件 。內(nèi)核程序主目錄 kernellinux/kernel 目錄中共包含 12 個(gè)代碼文件和一個(gè) Makefile 文件,另外還有 3 個(gè)子目錄。塊設(shè)備驅(qū)動(dòng)程序子目錄 kernel/blk_dev。字符設(shè)備驅(qū)動(dòng)程序子目錄 kernel/chr_dev。協(xié)處理器仿真和操作程序子目錄kernel/math。內(nèi)核庫(kù)函數(shù)目錄 lib。內(nèi)存管理程序目錄 mm。編譯內(nèi)核工具程序目錄 tools 等。 內(nèi)核編譯代碼修改 1. 修改機(jī)器碼。進(jìn)入內(nèi)核目錄,修改機(jī)器碼跟 bootloader 的機(jī)器碼一致( FL2440 為 193) 。 cd ../ vi arch/arm/tools/machtypes 首先刪除以下行: s3c2410 ARCH_S3C2410 S3C2410 182 然后將以下行: s3c2440 ARCH_S3C2440 S3C2440 362 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 25 修改為: s3c2440 ARCH_S3C2440 S3C2440 193 2. 指定目標(biāo)板 machine、編譯器和編譯器路徑。修改 Makefile 文件,將 CROSS_COMPILE 對(duì)應(yīng)到系統(tǒng)中交叉編譯器地址 。 vi Makefile 將兩行: ARCH ?= $(SUBARCH) CROSS_COMPILE ?= 修改為以下兩行: ARCH ?= arm CROSS_COMPILE ?=/usr/local/arm/3. 增加 devfs 文件管理器的支持。 vi fs/Kconfig 找到以下行: menu Pseudo filesystems 在此行后面增加以下內(nèi)容: config DEVFS_FS bool /dev file system support (OBSOLETE) default y config DEVFS_MOUNT bool Automatically mount at boot default y depends on DEVFS_FS 4. 修改晶振頻率。 修改文件 arch/arm/machs3c2440/ vi arch/arm/machs3c2440/ 將如下行: s3c24xx_init_clocks(16934400)。 修改為: s3c24xx_init_clocks(120xx000)。 打開(kāi)文件 arch/arm/plats3c24xx/,必須跟 bootloader 分區(qū)一樣,文件系統(tǒng) fs_yaffs 必須在第 4 個(gè)分區(qū),即索引號(hào)為 3。 5. 修改 nandflash 驅(qū)動(dòng),支持 K9F1G08 的 nandflash。文件為:drivers/mtd/nand/。 vi drivers/mtd/nand/ 將以下兩個(gè)部分進(jìn)行修改 static struct nand_bbt_descr largepage_memorybased = { .options = 0, .offs = 0, .len = 1, //原始值為 2,改成 1 .pattern = scan_ff_pattern 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 26 }。 static struct nand_bbt_descr largepage_flashbased = { .options = NAND_BBT_SCAN2NDPAGE, .offs = 0, .len = 2, //原始值為 2,改成 1 .pattern = scan_ff_pattern }。 6. 配置內(nèi)核, make menuconfig。 配置 CPU 選項(xiàng) System Type S3C2440 Machines [*] SMDK2440 [*] SMDK2440 with S3C2440 CPU module 7. 配置 yaffs2 選項(xiàng) 。 File systems [*] Miscellaneous filesystems * YAFFS2 file system support * 512 byte / page devices * 2048 byte (or larger) / page devices [*] Autoselect yaffs2 format [*] Cache short names in RAM 8. 移植 USB host 驅(qū)動(dòng),僅僅需要修改配置即可 。 make menuconfig Device Drivers [*] USB support {*} Support for Hostside USB [*] USB device filesystem (DEPRECATED) [*] USB device classdevices (DEPRECATED) * OHCI HCD support * USB Mass Storage support [*] HID Devices {*} Generic HID support [*] /dev/hidraw raw HID device support SCSI device support * SCSI device support [*] legacy /proc/scsi/ support * SCSI disk support * SCSI tape support 9. 移植 RTC 驅(qū)動(dòng) 。 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 27 make menuconfig Device Drivers * Real Time Clock [*] Set system time from RTC on startup and resume (rtc0) RTC used to set the system time [ ] RTC debug support *** RTC interfaces *** [*] /sys/class/rtc/rtcN (sysfs) [*] /proc/driver/rtc (procfs for rtc0) [*] /dev/rtcN (character devices) * Samsung S3C series SoC RTC 10. 配置內(nèi)核 。 make menuconfig Device Drivers * Sound card support * Advanced Linux Sound Architecture * OSS Mixer API * OSS PCM (digital audio) API [*] OSS PCM (digital audio) API Include plugin system [*] Support old ALSA API [*] Verbose procfs contents [*] Verbose printk [*] Generic sound devices * ALSA for SoC audio support * SoC Audio for the Samsung S3C24XX chips * SoC I2S Audio support UDA134X wired to a S3C24XX 本章小結(jié) 本章主要介紹了 Linux 的來(lái)源以及其源碼目錄安排并簡(jiǎn)要的介紹了個(gè)目錄的作用和包含的文件,然后詳細(xì)的介紹了 Linux 編譯的版本及所需文件和編譯步驟,最后敘述了基于該開(kāi)發(fā)板對(duì)源碼的修改、配置和增加的驅(qū)動(dòng)代碼。 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 28 第 5章 Linux 內(nèi)核 及文件系統(tǒng)移植 內(nèi)核移植 連接好串口線(xiàn)、 USB 線(xiàn)、電源線(xiàn)。將開(kāi)發(fā)板上電,按任意鍵停在‘ select menu’下,如圖 51。 圖 51 選擇菜單 功能 [0]:通過(guò) USB DEVICE 下載程序,并運(yùn)行 功能 [1]:通過(guò) USB DEVICE 下載程序,下載完后會(huì)自動(dòng)寫(xiě)入 NAND FLASH 功能 [2] :通過(guò)串口下載 程序, BIOS 內(nèi)部固定了下載地址為0x30400000 功能 [3]:?jiǎn)?dòng)無(wú)操作系統(tǒng)應(yīng)用程序 (),即分區(qū) 4 中的程序 功能 [4]:?jiǎn)?dòng) LINUX 操作系統(tǒng) 功能 [5]:?jiǎn)?dòng) WINCE 操作系統(tǒng) 功能 [6]:擦除 NAND FLASH 分區(qū) 功能 [7]:配置一些系統(tǒng)參數(shù)和 Linux 啟動(dòng)參數(shù) 選擇‘ 1’(不 用按回車(chē))進(jìn)入如下圖 52 所示界面。 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 29 圖 52 NAND FLASH 菜單 選擇‘ 4’(不用按回車(chē))先燒寫(xiě)內(nèi)核文件( zImage ),插好 USB 線(xiàn),會(huì)顯示如圖 53。 圖 53 燒寫(xiě)內(nèi)核菜單 查看下載地址, DNW 的‘ Configuration— Options’ ,配置情況如圖54。 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 30 圖 54 配置 DNW 在 USB 下拉菜單點(diǎn)‘ Transmit’,如圖 55。 圖 55 傳輸文件 哈爾濱理工大學(xué)學(xué)士學(xué)位論文 31 選擇內(nèi)核的映像文件( zImage) ,進(jìn)度條完畢之后會(huì)出現(xiàn)以下圖 56。 圖 56 燒寫(xiě)成功 內(nèi)核燒寫(xiě) 成功后會(huì)出現(xiàn)“ Progran nand flash partition success” 。 文件系統(tǒng)移植 Yaffs( Yet Another Flash File System)文件系統(tǒng)是專(zhuān)門(mén)針對(duì) NAND 閃存設(shè)計(jì)的嵌入式文件系統(tǒng),目前有 YAFFS 和 YAFFS2 兩個(gè)版本,兩個(gè)版本的主要區(qū)別之一在于 YAFFS2 能夠更好的支持大容量的 NAND FLASH芯片。 這也就是系統(tǒng)加載 YAFFS2 時(shí)給切換到 YAFFS1 的原因, YAFFS文件系統(tǒng)會(huì)根據(jù) NAND Flash 的頁(yè)面的大小來(lái)主動(dòng)的配置是使用 YAFFS1還是 YA FFS2。 目前支持 FLASH 的文件系統(tǒng)還有 JFFS 和 JFFS2, JFFS 和 JFFS2 對(duì)NOR Flash 的支持還是非常好的,是基于日志的文件系統(tǒng)。具體的介紹請(qǐng)查看相關(guān)文件。與 NOR 相比, NAND 不是完全可靠的,每塊芯片出廠時(shí)都有一定比例的壞塊存在對(duì)數(shù)據(jù)的存取不是使用地址映射而是通過(guò)寄存器的操作,串行存取數(shù)據(jù) [20]。 NAND Flash 上的 YAFFS 文件系統(tǒng)主要包含兩個(gè)部分,一個(gè)部分是 NAND Flash 上的 MTD 的驅(qū)動(dòng),另一個(gè)是 YAFFS 文件系統(tǒng)的支持。其中 YAFFS 的文件系統(tǒng)與硬件的相關(guān)性比較小,我們先完成內(nèi)核對(duì) YA
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1