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

正文內(nèi)容

基于s3c2440的linux操作系統(tǒng)移植本科畢業(yè)設(shè)計論文-免費閱讀

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

下一頁面
  

【正文】 ? SMP 機(jī)器其余 cpu(除當(dāng)前引導(dǎo) cpu)初始化(對于沒有配置 SMP 的內(nèi)核,此函數(shù)為空, smp_init())。 ? 軟中斷初始化( softirq_init())。 c 語言代碼階段 執(zhí)行 init/,以完成內(nèi)核初始化全部工作、最后調(diào)用 restinit 函數(shù)啟動基于 S3C2440 的 Linux 操作系統(tǒng)移植 32 init 進(jìn)程。 .config .config:在配置內(nèi)核后生成。 (8) 目錄: 包含各種不同網(wǎng)卡雨網(wǎng)絡(luò)規(guī)劃的設(shè)備驅(qū)動程序。 (3) mm 目錄: mm 目錄中的文件為核心實現(xiàn)內(nèi)存管理體系結(jié)構(gòu)無關(guān)的部分。內(nèi)核中必須提供系統(tǒng)中可能要操作的每一種外設(shè)的驅(qū)動。內(nèi)存管理部分代碼可分為硬件無關(guān)部分和硬件有關(guān)部分:硬件無關(guān)部分實現(xiàn)進(jìn)程和 內(nèi)存之間的地址映射等功能 。操作系統(tǒng)就是完成這個控制的軟件,在 linux 系統(tǒng)術(shù)語中稱之為“內(nèi)核”。 (8) 修改 board/smdk2440/ 文件。因為修改的文件很多,大致介紹一下操作流程。 ? fs: uboot 所支持的文 件系統(tǒng)。命令: armlinuxgcc –v。 移植實現(xiàn) 建立交叉編譯環(huán)境 因為我們是使用通用計算機(jī) X86 來編譯 Uboot,但是運(yùn)行是在 ARM 開發(fā)板上,這就需要建立一個交叉編譯環(huán)境。 ? 初始化本階段使用的硬件設(shè)備。 ? 為加載 Bootloader 的第二階段代碼準(zhǔn)備 RAM 空間。因為儲存 Bootloader 的存儲器不同,Bootloader 的執(zhí)行過程也不同。 成本低,單位密度高,擦除速度快。 寫操作之前需要進(jìn)行擦除操作。 (4) 支持 SDRAM 的自刷新和掉電模式。 ? AC97 編街碼器接口。 ? 8 通道的 10 位 A/D 轉(zhuǎn)換器,提供觸摸屏接口。主要特點有一下幾點: ? 具有 16KB 指令高速緩沖儲存器、 16KB 數(shù)據(jù)高速緩沖儲存器和內(nèi) 存管理單元 MMU。 CortexM 系列的處理器有 CortexM CortexM CortexM0 和最新的CortexM4 架構(gòu)。他針對小型便攜式基于 S3C2440 的 Linux 操作系統(tǒng)移植 16 Java 是設(shè)備,如 3G 手機(jī)和 PDA 應(yīng)用而。 ARM9E 處理器系列 ARM9E 系列的處理器基于 ARM9ES 架構(gòu),這個內(nèi)核是 ARM9 內(nèi)核帶有E 擴(kuò)展的一個可綜合版本,包括 ARM946ES 和 ARM966ES 兩個變種。內(nèi)核有一條 3 級流水線,執(zhí)行 ARMv4 指令集。 V5 結(jié)構(gòu)的 ARM 處理器提升了 ARM 和 Thumb 兩種指令的交互能力,同時有了 DSP 指令 — V5E 結(jié)構(gòu), JAVA 指令 — V5 結(jié)構(gòu)的支持。 ARM 體系 結(jié)構(gòu)的發(fā)展 體系結(jié)構(gòu),定義了指令集和基于這一體系結(jié)構(gòu)下處理器的編程模型。有時我們想從網(wǎng)絡(luò)上的某臺主機(jī)上下載文件,可是又不知道那臺主機(jī)是否開著,就需要使用 ping 命令查看。如果不使用 u user 的話,就是表示設(shè)定自己的時程表。 Umount 命令: umount 命令的作用是卸載一個文件系統(tǒng),它的使用權(quán)限是超級用戶或/etc/fstab 中允許的使用者。 chown 命令: 更改某個文件或目錄的屬主和屬組。如果用戶想和其他用戶建立即時通訊,比如使用 talk 命令,那么首先要確定的就是該用戶確實在線上不然 talk 進(jìn)程就無法建立起來。這種操作實際上是給系統(tǒng)中已有的某個文件指定另外一個可用于訪問它的名稱。 pwd 命令: 該命令顯示整個路徑名。 rmdir 命令: 刪除空目錄。安裝、刪除安裝、升級 RPM軟件包使用簡短的命令就可完成。因為 vi編輯器不是圖形化的軟件,所以一定程度上受到了其他文本編輯器的挑戰(zhàn)。如圖 : 圖 系統(tǒng)自動安裝進(jìn)度 (6) 安裝完成后,登陸配置網(wǎng)絡(luò)。目前流行的虛擬機(jī)軟件是 VMware, VirtualBox 和VirualPC,他們都能在 Wondows 系統(tǒng)上虛擬個計算機(jī)。 Linux 內(nèi)核支持 IPalias、 PPP 和IPtunneling,這些功能可用于建立虛擬服 務(wù)、 VPN(虛擬專用網(wǎng) ) 、虛擬主機(jī)等。這對于受時間限制 ,經(jīng)費的研究與項目開發(fā)是很有幫助的、 Linux 采用統(tǒng)一的標(biāo)準(zhǔn)對硬件進(jìn)行管理,應(yīng)用層屏蔽系統(tǒng)層,系統(tǒng)層的改動與平臺改動有關(guān),于應(yīng)用無關(guān)。T公司成立了 USG 將 UNIX 變成商品化的產(chǎn)品。由于 Linux 的開源和可移植性高的特性,以及 ARM 處理器,性能好價格低廉的特點,本文將會在 S3C2440 的 tq2440 上進(jìn)行系統(tǒng)移植,主要包括:嵌入式系統(tǒng) Linux 介紹、 Bootloader 原理分析和移植、操作系統(tǒng)內(nèi)核的移植、文件系統(tǒng)的分析和制作、內(nèi)核驅(qū)動。 driver. 基于 S3C2440 的 Linux 操作系統(tǒng)移植 III 前 言 通信網(wǎng)絡(luò)技術(shù)和集成電路設(shè)計的高速發(fā)展使 嵌入式系統(tǒng)已成為了 IT 業(yè)的一個焦點。之后幾章分別介紹嵌入式開發(fā)的幾個主要流程,包括 Bootloader、內(nèi)核、文件系統(tǒng)、驅(qū)動。將 Uboot 移植到 tq2440上,然后移植最小系統(tǒng),使開發(fā)板能夠正常啟動,最后是構(gòu)建根文件系統(tǒng)、在內(nèi)核中加入串口、 LCD 驅(qū)動,這樣就可以建立一個完整的嵌入式系統(tǒng),本文除了理論基礎(chǔ)知識的講解還有具體的操作,系統(tǒng)的完成了嵌入式設(shè)計的開發(fā)流程。回顧嵌入式技 術(shù)的發(fā)展過程,早期的嵌入式系統(tǒng)被認(rèn)為是人們熟知的單片機(jī)?;?S3C2440 的 Linux 操作系統(tǒng)移植 1 1 嵌入式 linux 簡介 本課題移植 的是 Linux 操作系統(tǒng)內(nèi)核,這里簡單介紹 Linux 的特點,以及開發(fā)平臺的建立使用。 這種商業(yè)態(tài)度,讓當(dāng)時許多 UNIX 愛好者和軟件開發(fā)者感到痛心疾首和憂慮,他們覺得這種限制不利于產(chǎn)品的長期發(fā)展,于是一個叫做 Richard Stallman 的領(lǐng)軍人物站了出來,他倡導(dǎo)開源概念,認(rèn)為如果大家能將自己所學(xué)貢獻(xiàn)出來,這個系統(tǒng)會更加優(yōu) 秀,之后他創(chuàng)立 GUN,開發(fā)了一套與 UNIX 兼容的軟件,然后又創(chuàng)立自由軟件基金會( FSF)為 GUN 計劃提供技術(shù),法律以及財政支持。 (3) 可定制內(nèi)核 Linux 具有獨特的內(nèi)核模塊動態(tài)裁剪機(jī)制,它可以根據(jù)用戶的需求, 實時的將某些模塊插入或者刪除內(nèi)核,實現(xiàn)動態(tài)的的改變。主要運(yùn)行于 Linux 之上的 ApacheWeb 服務(wù)器。本課程安裝的是 VMware ,安裝步驟如下: (1) 雙擊下載好的 VMware 軟件打開安裝程序,如 圖 : 基于 S3C2440 的 Linux 操作系統(tǒng)移植 4 圖 虛擬機(jī)安裝界面 (2) 進(jìn)入 圖 所示界面。并安裝虛擬機(jī)工具。但是 vi 編輯器出色的靈活性和強(qiáng)大的功能使它得以廣泛應(yīng)用。 RPM 維護(hù)一個已安裝軟件包和它們文件的數(shù)據(jù)庫,因此,可以在系統(tǒng)上使用功能強(qiáng)大的查詢和校驗。 rm 命令: 在 linux 中創(chuàng)建文件很容易,系統(tǒng)中隨時會有文件變得過時且毫無用處。 ls 命令: ls 是英文單詞 list 的簡寫,其功能為列出目錄的內(nèi)容。對于這個新的文件名,我們可以為之指定不同的訪問權(quán)限,以控制對信息的共享和安全性的問題。又如,系統(tǒng)管理員希望監(jiān)視每個登錄的用戶此時此刻的所作所為,也要使用 who 命令。這個命令也很常用。 Exit 命令: exit 命令的作用是退出系統(tǒng),它的使用權(quán)限是所有用戶。 kill 命令: 殺死僵死的進(jìn)程。 mail 功能: 讀取及發(fā)郵件?;谕N體系結(jié)構(gòu)可以有多種處理器,所面向的應(yīng)用領(lǐng)域不同,每個處理器性能也就不同,但每個的實現(xiàn)都要遵守這一體系結(jié)構(gòu)。 V6 體系結(jié)構(gòu)包含 ARM 體系結(jié)構(gòu)中所有的 4 種特殊指令集: Thumb 指令( T) ,DSP 指令( E) ,Java 指令( J)和 Media 指令。 ARM7 系列處理器主要用于對功耗要求比較苛刻的消費類產(chǎn)品。兩者都執(zhí)行 V5TE 架構(gòu)指令。 ARM926EJS 是第一個包含 Jazelle技術(shù),可加速 Java 字節(jié)碼執(zhí)行的 ARM 處理器內(nèi)核。 CortexM3 處理器結(jié)合了執(zhí)行 Thumb2 指令的 32 位哈佛微體系結(jié)構(gòu)和系統(tǒng)外設(shè)。 ? 外部儲存器控制器、可擴(kuò)展 8組,每組 128MB,總?cè)萘窟_(dá) 1GB。 ? 具有 130 個通用 I/O 口和 24 通道的外部中斷源。 ? CMOS 攝像頭接口。 (5) 支持大小端(軟件選擇)。 寫入、擦除速度慢,讀取速度較快,單位密度低、成本較高。 基于 S3C2440 的 Linux 操作系統(tǒng)移植 21 3 Bootloader 原理分析和移植 前面介紹了有關(guān)軟件硬件方面的基礎(chǔ)知識,下面幾章將進(jìn)行正式的移植,Bootloader 是操作系統(tǒng)運(yùn)行前首先運(yùn)行的一段代碼,本章將介紹 Bootloader 的原理、啟動過程以及移植過程。嵌入式系統(tǒng)中廣泛 采取的非易失存儲器通常是Flash,而 Flash 又分為 Nor Flash 和 Nand Flash 兩種。 基于 S3C2440 的 Linux 操作系統(tǒng)移植 22 ? 復(fù)制 Bootloader 的第二階段代碼到 RAM 空間。 ? 檢查系統(tǒng)的內(nèi)存映射 (menmory map)。本課題使用 的交叉編譯器,使用的 Uboot 的版本基于 S3C2440 的 Linux 操作系統(tǒng)移植 23 為 ,開發(fā)板使用 S3C2440 中的 如下 : (1) 命令 :cd /opt 使用解壓命令: tar xvfj /mnt/hgfs/Linux/ –C / 如圖 : 圖 解壓后 總共解壓出來 的編譯器, 的編譯器和制作文件系統(tǒng)的mkyaffsimage 等工具。如圖 : 基于 S3C2440 的 Linux 操作系統(tǒng)移植 24 圖 顯示版本信息 (5) 如圖所示安裝成功。 ? include:系統(tǒng)的頭文件。 (1) 在 board 下新建一個目錄 embedsky,將 sansung/smdk2410 目錄復(fù)制到embedsky 目錄下,并將文件夾改成 smdk2440。 (9) 修改 include/configs/ 如下。 Linux 內(nèi)核的主要模塊分為以下幾個部分:儲存管理、文件系統(tǒng)、設(shè)備管理和驅(qū)動、網(wǎng)絡(luò)通信、以及 系統(tǒng)的初始化、系統(tǒng)的調(diào)用。硬件有關(guān)部分實現(xiàn)不同體系結(jié)構(gòu)的內(nèi)存管理相關(guān)功能并為內(nèi)存管理提供與硬件無關(guān)的虛擬接口。 (5) 網(wǎng)絡(luò)管理:內(nèi)核支持各種網(wǎng)絡(luò)標(biāo)準(zhǔn)協(xié)議和網(wǎng)絡(luò)設(shè)備。這個目錄包含 換頁及內(nèi)存的分配和釋放的函數(shù),還有允許用戶進(jìn)程將內(nèi)存區(qū)間映射到它們的地址空間的各種技術(shù)。 內(nèi)核文件類型 Makefile Makefile 的作用是根據(jù)配置的情況,構(gòu)造出需要編譯的源文件列表,然后分別編譯,并把目標(biāo)代碼鏈接在一起,最終形成 Linux 內(nèi)核可執(zhí)行的二進(jìn)制文件。根據(jù) .config 來決定使用哪些 Makefile。 第一部分:在主函數(shù)中 startkernel()中調(diào)用了一些列的初始化函數(shù),以完成 kernel 本身的設(shè)置。 ? 時間、定時器初始化(包括讀取 CMOS 時鐘、估測主頻,初始化定時器中斷等 time_init())。 ? 啟動 init 過程(創(chuàng)建第一個核心線程,調(diào)用 init()函數(shù),元執(zhí)行序列調(diào)用 cpu_idle()等待調(diào)度 init())。 相關(guān) cache 初始化()。 ? 核心進(jìn)程調(diào)度器初始化(包括初始化幾個缺省的 Bottonhalf, sched_int())。執(zhí)行命令 make conig 如圖 : 基于 S3C2440 的 Linux 操作系統(tǒng)移植 30 圖 字符配置界面 Xwindows 圖形界面,執(zhí)行命令 make xconfig,圖 : 基于 S3C2440 的 Linux 操作系統(tǒng)移植 31 圖 Xwindows 界面配置單 Ncurses 圖形配置界面,執(zhí)行命令 make menuconfig,如圖 : 圖 Ncurses 配置界面 Linux 內(nèi)核啟動過程 匯編代碼執(zhí)行階段 Linux 內(nèi)核啟動后首先執(zhí)行三個匯編代碼: arch/arm/kernel/ arch/arm/kernel/ arch /arm/mm/ 主要功能是檢查內(nèi)核是否支持當(dāng)前處理器架構(gòu)和開發(fā)板、禁止 Cache,使能 MMU、設(shè)置棧指針、調(diào)用 startkernel。至于到底進(jìn)入哪些子目錄,取決于內(nèi)核基于 S3C2440 的 Linux 操作系統(tǒng)移植 29 的配置。 (7) driver: 包括各種塊設(shè)備與字符設(shè)備的驅(qū)動程序。包括調(diào)度程序,進(jìn)程控制,模塊化,其它操作。除了處理器、內(nèi)存等少數(shù)的硬件資源之外任何一種設(shè)備控制操作都由設(shè)備特定的驅(qū)動代碼來進(jìn)行。內(nèi)核使得多個進(jìn)程安全而合理的共享內(nèi)存資源,為每個進(jìn)程在有限的物理資源上建立一個虛擬地址空間。但是沒有軟件來控制或操作它,自身是不能工作的。 (7) 在 board/smdk2440/目錄下加入 NandFlash 讀取函數(shù)。我們通過修改部分文
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1