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

正文內(nèi)容

基于s3c2440的linux操作系統(tǒng)移植本科畢業(yè)設(shè)計(jì)(論文)-預(yù)覽頁

2025-08-10 11:28 上一頁面

下一頁面
 

【正文】 . 46 設(shè)備驅(qū)動(dòng)程序的開發(fā)流程 .................................................... 46 模塊化驅(qū)動(dòng)程序設(shè)計(jì) ........................................................... 47 串口驅(qū)動(dòng)移植 .................................................................................... 48 LCD 驅(qū)動(dòng)移植 .................................................................................... 49 結(jié) 論 .................................................................................................................. 54 致謝 .................................................................................................................... 55 參考文獻(xiàn) ............................................................................................................ 56 基于 S3C2440 的 Linux 操作系統(tǒng)移植 I 基于 S3C2440 的 Linux 操作系統(tǒng)移植 摘要 隨著電子產(chǎn)業(yè)的發(fā)展和智能時(shí)代的到來,嵌入式產(chǎn)品以其個(gè)性化定制的特點(diǎn)已經(jīng)深入發(fā)展到各個(gè)領(lǐng)域。之后幾章分別介紹嵌入式開發(fā)的幾個(gè)主要流程,包括 Bootloader、內(nèi)核、文件系統(tǒng)、驅(qū)動(dòng)。 內(nèi)核移植 。 driver. 基于 S3C2440 的 Linux 操作系統(tǒng)移植 III 前 言 通信網(wǎng)絡(luò)技術(shù)和集成電路設(shè)計(jì)的高速發(fā)展使 嵌入式系統(tǒng)已成為了 IT 業(yè)的一個(gè)焦點(diǎn)。隨著嵌入式與網(wǎng)絡(luò)技術(shù)的結(jié)合,手機(jī)、 PDA、路由器、Modem 等復(fù)雜的高端嵌入式應(yīng)用不斷涌現(xiàn),這使得人們需要設(shè)計(jì)更加復(fù)雜的嵌入式系統(tǒng)。由于 Linux 的開源和可移植性高的特性,以及 ARM 處理器,性能好價(jià)格低廉的特點(diǎn),本文將會(huì)在 S3C2440 的 tq2440 上進(jìn)行系統(tǒng)移植,主要包括:嵌入式系統(tǒng) Linux 介紹、 Bootloader 原理分析和移植、操作系統(tǒng)內(nèi)核的移植、文件系統(tǒng)的分析和制作、內(nèi)核驅(qū)動(dòng)。T) ,通用電器公司( GE)及麻省理工學(xué)院( MIT)計(jì)劃合作開發(fā)一個(gè)多用途,及時(shí)及多用戶的操作系統(tǒng),也就是 于項(xiàng)目太過復(fù)雜,幾年下來幾乎沒有取得任何成果, 1969 年貝爾實(shí)驗(yàn)室退出這個(gè)項(xiàng)目。T公司成立了 USG 將 UNIX 變成商品化的產(chǎn)品。之后越來越多的計(jì)算機(jī)愛好者,程序員通過網(wǎng)絡(luò),社區(qū),郵件,論壇參與到 linux 系統(tǒng)的不斷完善中 。這對(duì)于受時(shí)間限制 ,經(jīng)費(fèi)的研究與項(xiàng)目開發(fā)是很有幫助的、 Linux 采用統(tǒng)一的標(biāo)準(zhǔn)對(duì)硬件進(jìn)行管理,應(yīng)用層屏蔽系統(tǒng)層,系統(tǒng)層的改動(dòng)與平臺(tái)改動(dòng)有關(guān),于應(yīng)用無關(guān)。 (4) 性能優(yōu)異 Linux 系統(tǒng)內(nèi)核精簡(jiǎn),用于網(wǎng)站服務(wù)器高效而且穩(wěn)定穩(wěn)定,能夠充分發(fā)揮硬件的功能,用于個(gè)人計(jì)算機(jī),功能豐富,界面友好易操作,因此它比其它操作系統(tǒng)的運(yùn)行效率更高。 Linux 內(nèi)核支持 IPalias、 PPP 和IPtunneling,這些功能可用于建立虛擬服 務(wù)、 VPN(虛擬專用網(wǎng) ) 、虛擬主機(jī)等。 (4) 桌面和辦公應(yīng)用。目前流行的虛擬機(jī)軟件是 VMware, VirtualBox 和VirualPC,他們都能在 Wondows 系統(tǒng)上虛擬個(gè)計(jì)算機(jī)。 (6) 到這里虛擬機(jī)安裝完成,工作界面 如圖 : 基于 S3C2440 的 Linux 操作系統(tǒng)移植 6 圖 安裝完成界面 .2 Linux 安裝 啟動(dòng)虛擬機(jī)后接著就是安裝 Linux 系統(tǒng),本課題選擇的是安裝 Fedora10。如圖 : 圖 系統(tǒng)自動(dòng)安裝進(jìn)度 (6) 安裝完成后,登陸配置網(wǎng)絡(luò)。還可以將其他圖形化桌面程序中的文本剪切和粘貼到編輯器中。因?yàn)?vi編輯器不是圖形化的軟件,所以一定程度上受到了其他文本編輯器的挑戰(zhàn)。 RPM 軟件包管理器是開放打包系統(tǒng),任何人都可以使用。安裝、刪除安裝、升級(jí) RPM軟件包使用簡(jiǎn)短的命令就可完成。這是使用普通的 .文件所無法達(dá)到的。 rmdir 命令: 刪除空目錄。對(duì)于鏈接文件,只是刪除了鏈接,原有文件均保持不變。 pwd 命令: 該命令顯示整個(gè)路徑名。 cp 命令: 該命令的功能是將給出的文件或目錄拷貝到另一文件或目錄中,就如同DOS 下的 copy 命令一樣,功能非常強(qiáng)大。這種操作實(shí)際上是給系統(tǒng)中已有的某個(gè)文件指定另外一個(gè)可用于訪問它的名稱。 cat 命令: 在標(biāo)準(zhǔn)輸出上顯示文件;連接兩個(gè)或多個(gè)文件 。如果用戶想和其他用戶建立即時(shí)通訊,比如使用 talk 命令,那么首先要確定的就是該用戶確實(shí)在線上不然 talk 進(jìn)程就無法建立起來。用戶用它控制文件或目錄的訪問權(quán)限。 chown 命令: 更改某個(gè)文件或目錄的屬主和屬組。 Shutdown 命令: 基于 S3C2440 的 Linux 操作系統(tǒng)移植 11 shutdown 命令的作用是關(guān)閉計(jì)算機(jī),它的使用權(quán)限是超級(jí)用戶。 Umount 命令: umount 命令的作用是卸載一個(gè)文件系統(tǒng),它的使用權(quán)限是超級(jí)用戶或/etc/fstab 中允許的使用者。 df 命令: 顯示磁盤文件系統(tǒng)與使用狀況。如果不使用 u user 的話,就是表示設(shè)定自己的時(shí)程表。 nslookup 命令: 查詢一臺(tái)機(jī)器的 IP 地址和其對(duì)應(yīng)的 域名。有時(shí)我們想從網(wǎng)絡(luò)上的某臺(tái)主機(jī)上下載文件,可是又不知道那臺(tái)主機(jī)是否開著,就需要使用 ping 命令查看。利用 tar,用戶可以為某一特定文件創(chuàng)建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。 ARM 體系 結(jié)構(gòu)的發(fā)展 體系結(jié)構(gòu),定義了指令集和基于這一體系結(jié)構(gòu)下處理器的編程模型。不同系列的 ARM 處理器,性能差別很大,應(yīng)用范圍對(duì)象也不盡相同,但是,如果是相同的 ARM 提醒結(jié)構(gòu),那么基于它們的應(yīng)用軟件是兼容的。 V5 結(jié)構(gòu)的 ARM 處理器提升了 ARM 和 Thumb 兩種指令的交互能力,同時(shí)有了 DSP 指令 — V5E 結(jié)構(gòu), JAVA 指令 — V5 結(jié)構(gòu)的支持。 ARMv7 架構(gòu)還采用了 NEON 技術(shù),將媒體處基于 S3C2440 的 Linux 操作系統(tǒng)移植 15 理能力和 DSP 提高了近 4 倍。內(nèi)核有一條 3 級(jí)流水線,執(zhí)行 ARMv4 指令集。 ARM9 處理器系列 采用了 5 級(jí)指令流水線, ARM9 處理器能夠運(yùn)行在比 ARM7 更高的時(shí)鐘頻率上,改善了處理器的整體性能;儲(chǔ)存器系統(tǒng)根據(jù)哈佛結(jié)構(gòu)體系區(qū)分?jǐn)?shù)據(jù)總線和指令總線。 ARM9E 處理器系列 ARM9E 系列的處理器基于 ARM9ES 架構(gòu),這個(gè)內(nèi)核是 ARM9 內(nèi)核帶有E 擴(kuò)展的一個(gè)可綜合版本,包括 ARM946ES 和 ARM966ES 兩個(gè)變種。 ARM946ES 包括 TCM、 Ca 車和一個(gè) MPC。他針對(duì)小型便攜式基于 S3C2440 的 Linux 操作系統(tǒng)移植 16 Java 是設(shè)備,如 3G 手機(jī)和 PDA 應(yīng)用而。它集成了一條具有獨(dú)立的 Load/Store 和算數(shù)流水線的 8 級(jí)流水線。 CortexM 系列的處理器有 CortexM CortexM CortexM0 和最新的CortexM4 架構(gòu)。 CortexR4 處理器針對(duì) Thumb2 指令進(jìn)行最佳優(yōu)化設(shè)計(jì)此項(xiàng)特性帶來很多的好處包括:更低的時(shí)鐘速度所帶來的省電效益;更高的性能將各種多功能特色帶入移動(dòng)電話與汽車產(chǎn)品的設(shè)計(jì);更復(fù)雜的算法支持更高性能的數(shù)碼影像和內(nèi)建磁盤的系統(tǒng)。主要特點(diǎn)有一下幾點(diǎn): ? 具有 16KB 指令高速緩沖儲(chǔ)存器、 16KB 數(shù)據(jù)高速緩沖儲(chǔ)存器和內(nèi) 存管理單元 MMU。 ? 3 個(gè)通道的 UART,帶有 16 字節(jié)的 TX/RX FIFO,支持 功能。 ? 8 通道的 10 位 A/D 轉(zhuǎn)換器,提供觸摸屏接口。 ? 具有日歷功能的 RTC。 ? AC97 編街碼器接口??偣灿邪藗€(gè)存儲(chǔ)器bank(bank0bank7)bank0bank5 為固定 128MB,bank6 和 bank7 的容量可編程改變,可以是 1 3 6 128MB 最大共 1GB。 (4) 支持 SDRAM 的自刷新和掉電模式。如圖 : 圖 SDRAM 存儲(chǔ)區(qū)域分配圖 FLASH FLASH(閃存)是 ARM 上重要的存儲(chǔ)設(shè)備,由于其具有非易失性,電可擦除性、可重復(fù)編程以及高密度。 寫操作之前需要進(jìn)行擦除操作。 非線性尋址。 成本低,單位密度高,擦除速度快。通過這段程序,可以初始化硬件設(shè)備,建立系統(tǒng)的內(nèi)存空間映射圖、從而將系統(tǒng)的軟件硬 件環(huán)境帶到一個(gè)合適的狀態(tài),以便為調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。因?yàn)閮?chǔ)存 Bootloader 的存儲(chǔ)器不同,Bootloader 的執(zhí)行過程也不同。 Bootloader 功能 Bootloader 的啟動(dòng)過程可以分為兩個(gè)階段,第一階段使用匯編來實(shí)現(xiàn),它完成一些依賴于 CPU 體系結(jié)構(gòu)的初始化,并調(diào)用第二階段的代碼;第二階 段則通常使用 C 語言來實(shí)現(xiàn),這樣可以實(shí)現(xiàn)更復(fù)雜的功能,并且代碼會(huì)有更好的可讀性和可移植性。 ? 為加載 Bootloader 的第二階段代碼準(zhǔn)備 RAM 空間。 在第一階段進(jìn)行的硬件初始化一般包括:關(guān)閉 WATCHDOG、關(guān)中斷、設(shè)置 CPU 的速度和時(shí)鐘頻率、 RAM 初始化等。 ? 初始化本階段使用的硬件設(shè)備。 常用 Bootloader (1) UBoot:是德國 DENX 小組 開發(fā)的用于多種嵌入式 CPU 的 Bootloader程序,它可以運(yùn)行在 ARM,MIPS,PowerPC 等多種嵌入式平臺(tái)中。 移植實(shí)現(xiàn) 建立交叉編譯環(huán)境 因?yàn)槲覀兪鞘褂猛ㄓ糜?jì)算機(jī) X86 來編譯 Uboot,但是運(yùn)行是在 ARM 開發(fā)板上,這就需要建立一個(gè)交叉編譯環(huán)境。命令: gedit/etc/profile。命令: armlinuxgcc –v。 基于 S3C2440 的 Linux 操作系統(tǒng)移植 25 ? mon:通用命令函數(shù)。 ? fs: uboot 所支持的文 件系統(tǒng)。 ? post:上電后自檢程序。因?yàn)樾薷牡奈募芏?,大致介紹一下操作流程。 (4) 修改頂層的 makefile 文件在在 1880 行加入自己的處理器信息。 (8) 修改 board/smdk2440/ 文件。 Linux 內(nèi)核的作用 操作系統(tǒng)是一個(gè)用來管理硬件并為用戶程序提供一個(gè)接口的低級(jí)支撐軟件。操作系統(tǒng)就是完成這個(gè)控制的軟件,在 linux 系統(tǒng)術(shù)語中稱之為“內(nèi)核”。從而內(nèi)核的進(jìn)程管理活動(dòng)實(shí)現(xiàn)了多個(gè)進(jìn)程在一個(gè)或多個(gè)處理器上的抽象。內(nèi)存管理部分代碼可分為硬件無關(guān)部分和硬件有關(guān)部分:硬件無關(guān)部分實(shí)現(xiàn)進(jìn)程和 內(nèi)存之間的地址映射等功能 。 Linux 在不同物理介質(zhì)或虛擬結(jié)構(gòu)上支持?jǐn)?shù)十種文件系統(tǒng)。內(nèi)核中必須提供系統(tǒng)中可能要操作的每一種外設(shè)的驅(qū)動(dòng)。 Linux 內(nèi)核的目錄結(jié)構(gòu) Linux 內(nèi)核版本: 解壓后,如圖 所示: 圖 目錄結(jié)構(gòu) (1) arch 目錄: 內(nèi)核中與 CPU 架構(gòu)相關(guān)的代碼放在 arch,而相應(yīng)的頭文件則分別放在include/asm 目錄下。 (3) mm 目錄: mm 目錄中的文件為核心實(shí)現(xiàn)內(nèi)存管理體系結(jié)構(gòu)無關(guān)的部分。 (5) ipc 和 lib 目錄: 進(jìn)程間通信和庫函數(shù)各有一個(gè)小的專用目錄。 (8) 目錄: 包含各種不同網(wǎng)卡雨網(wǎng)絡(luò)規(guī)劃的設(shè)備驅(qū)動(dòng)程序。頂層 Makefile 讀入 .config 中的配置選擇。 .config .config:在配置內(nèi)核后生成。 kconfig 在執(zhí)行命令 make menuconfig 時(shí)會(huì)顯示如圖 : 圖 配置菜單 當(dāng)執(zhí)行 make menuconfig 時(shí)就會(huì)查找 kconfig 文件顯示相應(yīng)的信息。 c 語言代碼階段 執(zhí)行 init/,以完成內(nèi)核初始化全部工作、最后調(diào)用 restinit 函數(shù)啟動(dòng)基于 S3C2440 的 Linux 操作系統(tǒng)移植 32 init 進(jìn)程。 ? 提取并分析核心啟動(dòng)參數(shù)(從環(huán)境變量中讀取參數(shù),設(shè)置相應(yīng)標(biāo)志位等待處理,( paese_options())。 ? 軟中斷初始化( softirq_init())。 ? 延遲校準(zhǔn)(獲得時(shí)鐘 jiffoes 與 CPU 主頻 ticks 的延遲, calibrate_delay())。 ? SMP 機(jī)器其余 cpu(除當(dāng)前引導(dǎo) cpu)初始化(對(duì)于沒有配置 SMP 的內(nèi)核,此函數(shù)為空, smp_init())。過程如下 : ? 網(wǎng)絡(luò)初始化( sock_init()) 基于 S3C244
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1