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

正文內(nèi)容

基于s3c2440的嵌入式linux操作系統(tǒng)移植-資料下載頁(yè)

2024-11-17 21:47本頁(yè)面

【導(dǎo)讀】ARM920T核的CPU,外部有64M的SDRAM、64M的NandFlash以及2M的NorFlash。比較高的一款開(kāi)發(fā)板,適合研究學(xué)習(xí)網(wǎng)絡(luò),智能終端等技術(shù)。而探討和分析了Linux交叉開(kāi)發(fā)環(huán)境及內(nèi)核的移植過(guò)程。論文首先提出了在QQ2440V3平臺(tái)。析,包括:安裝交叉編譯工具、配置串口控制臺(tái)工具、配置主機(jī)TFTP和NFS服務(wù)等。探討了BootLoader的啟動(dòng)方式和啟動(dòng)過(guò)程,并給出了vivi和U-Boot兩種啟動(dòng)引導(dǎo)代碼Boot. Loader的編譯移植方案。分析了嵌入式Linux的體系結(jié)構(gòu)、設(shè)備驅(qū)動(dòng)的配置以及如何定制。配置和移植,為QQ2440V3平臺(tái)提供了操作系統(tǒng)的支持,從而達(dá)到了學(xué)習(xí)和研究的目的。QQ2440V3開(kāi)發(fā)板硬件資源.......

  

【正文】 /usr/local/arm目錄下。 然后,在環(huán)境變量 PATH 中添加路徑 然后我們直接在命令行中輸入 GCC 編譯工具 我們看到 armlinuxgcc 工具鏈已經(jīng)安裝,并且可以正常使用了。但是我們前邊設(shè)置的環(huán)境變量是臨時(shí)的,在下次啟動(dòng)機(jī)器 ,就會(huì)丟失。我們可以在 etc 目錄下的 profile 文件中,添加如下語(yǔ)句 Export PATH=$PATH:/usr/local/arm/這樣我們不必在每次重啟機(jī)器后再重設(shè) PATH 變量了。 主機(jī)交叉環(huán)境配置 串口控制臺(tái)工具 Windows 操作系統(tǒng)下有功能非常強(qiáng)大超級(jí)終端 (Hyperterminal)工具,而對(duì)于 Linux操作系統(tǒng)下可以使用 mini工具。 mini不是圖形窗口的界面,相較于 windows 下的超級(jí)山東工商學(xué)院 2020 屆畢業(yè) 論文 15 終端配置比較麻煩,配置過(guò)程如下。 在 Shell 下執(zhí)行 “mini s”命令。出現(xiàn)如圖 所示的配置菜單 圖 mini配置菜單 選擇 Serial port setup 進(jìn)入串行口設(shè)置,我們把其中的 Serial Device 選項(xiàng)更改為 /dev/ttyS0 把 Bps/Par/Bits 更改為 115200 8N1 如下圖 所示,其中 ttyS0 表示使用串口 1, 115200 是波特率, 8 表示數(shù)據(jù)為是八位,N 表示不使用奇偶校驗(yàn), 1 表示停止位。 圖 mini串行口配置 配置主機(jī)的 TFTP 服務(wù) TFTP 全稱(chēng)為 Trivial File Transfer Protoeol 及簡(jiǎn)單文件傳輸協(xié)議。它具有實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單的優(yōu)點(diǎn)?,F(xiàn)在我們配置 TFTP 服務(wù),在 SHELL執(zhí)行 山東工商學(xué)院 2020 屆畢業(yè) 論文 16 vi /etc/這里我們把 tftpboot 目錄作為輸出目錄,其具體配置如下 配置完成后需要執(zhí)行 /etc/。 配置主機(jī)的 NFS 服務(wù) NFS 服務(wù)主要提供文件共享服務(wù),它可以把目錄共享到網(wǎng)絡(luò)上以供其他設(shè)備掛載訪問(wèn)。可以通過(guò)對(duì) /etc/exports 的配置來(lái)對(duì)輸出目錄進(jìn)行設(shè)置,這里我們采用的配置如下 : export/home/2440 *(rw,sync,no_root_squash) /home/2440 表示 nfs 共享目錄,我們這里把它作為開(kāi)發(fā)板的根文件系統(tǒng),可以通過(guò) nfs 掛接; * 表示所有的客戶機(jī)都可以掛接此目錄 rw 表示掛接此目錄的客戶機(jī)對(duì)該目錄有讀寫(xiě)的權(quán)力 no_root_squash 表示允許掛接此目錄的客戶機(jī)享有該主機(jī)的 root 身份 接下來(lái)我們要啟動(dòng)服務(wù) 或者我們也可以使用如下命令來(lái)啟動(dòng) NFS服務(wù),但是我 們要注意,應(yīng)該先啟動(dòng) portmap服務(wù),否則會(huì)提示無(wú)法注冊(cè)服務(wù) 啟動(dòng) nfs 服務(wù)以后,可以可以輸入以下命令檢驗(yàn) nfs 該服務(wù)是否啟動(dòng)。 我們可以看到 /mnt/cdrom目錄中的內(nèi)容和 /home/2440 的內(nèi)容是一致的,這說(shuō)明我們的 nfs 服務(wù)已經(jīng)正確啟動(dòng)。 山東工商學(xué)院 2020 屆畢業(yè) 論文 17 第四章 Boot Loader 及移植 Boot Loader負(fù)責(zé)硬件平臺(tái)的最基本的初始化 , 并引導(dǎo) Linux內(nèi)核的啟動(dòng)。它的作用就相當(dāng)于 Windows中的 BIOS( Basic Input Output System) 。 Boot Loader Boot Loader是操作系統(tǒng)運(yùn)行之前的一段小程序,它主要負(fù)責(zé)初始化硬件設(shè)備,建立內(nèi)存空間的映射表等,將操作系統(tǒng)映像裝載到內(nèi)存中,然后跳轉(zhuǎn)到操作系統(tǒng)所在的空間,啟動(dòng)操作系統(tǒng)運(yùn)行。 Boot Loader是基于特定的硬件平臺(tái)來(lái)實(shí)現(xiàn)的,所以嵌入式系統(tǒng)不可能建立一個(gè)通用的Boot Loader,它不僅依賴(lài)于 CPU的體系結(jié)構(gòu),而且依賴(lài)于嵌入式系統(tǒng)板級(jí)設(shè)備的配置。但是大部分的 Boot Loader又具有很多的共性,某些 Boot Loader也能夠支持多種體系結(jié)構(gòu)的嵌入式系統(tǒng),本論文要進(jìn)行移植到 UBoot就 能同時(shí)支持 Power PC, ARM, MIPS和 X86等體系結(jié)構(gòu),并且能夠支持百種以上的板子。 Boot Loader的啟動(dòng)過(guò)程是多階段的,這使得它既能提供復(fù)雜的功能,又有很好的可移植性。 Boot Loader 的種類(lèi) 隨著嵌入式系統(tǒng)的發(fā)展, Boot Loader 的種類(lèi)也不斷的增多,對(duì)于其種類(lèi)的劃分也有多種方式,可以按處理器體系結(jié)構(gòu)來(lái)劃分,還可以按照復(fù)雜程度的不同來(lái)劃分。與 Boot Loader 功能類(lèi)似的還有 Monitor,但是與 Boot Loader 不同的是,除了引導(dǎo)設(shè)備,執(zhí)行主程序外,還提供了更多的 命令行接口,可以進(jìn)行調(diào)試,讀寫(xiě)內(nèi)存,燒寫(xiě) flash,配置環(huán)境變量等。 Monitor 可以在嵌入式系統(tǒng)開(kāi)發(fā)過(guò)程中提供很好的調(diào)試功能,開(kāi)發(fā)完成以后就設(shè)置成“Boot Loader”,所以通常意義上可以把 Monitor 和 Boot Loader 統(tǒng)稱(chēng)為 Boot Loader。 對(duì)于每種體系結(jié)構(gòu),都有一系列的開(kāi)放源碼的 Boot Loader 可以選用。表 列出了現(xiàn)有的比較常用的 Boot Loader。 表 開(kāi)放源碼的 Linux引導(dǎo)程序 Boot Loader Monitor 描述 x86 ARM PowerPC LILO 否 Linux磁盤(pán)引導(dǎo)程序 是 否 否 GRUB 否 GNU的 LILO替代程序 是 否 否 Loadin 否 從 DOS引導(dǎo) Linux 是 否 否 ROLO 否 從 ROM引導(dǎo) Linux而不需要 BIOS 是 否 否 Etherboot 否 通過(guò)以太網(wǎng)卡啟動(dòng) Linux系統(tǒng)的固件 是 否 否 LinuxBIOS 否 完全替代 BUIS的 Linux引導(dǎo)程序 是 否 否 山東工商學(xué)院 2020 屆畢業(yè) 論文 18 BLOB 否 LART等硬件平臺(tái)的引導(dǎo)程序 否 是 否 Uboot 是 通用引導(dǎo)程序 是 是 是 RedBoot 是 基 于 eCos的引導(dǎo)程序 是 是 是 Boot Loader 的操作模 式 大多數(shù)的 Boot Loader 都包含有 2 種不同的操作模式,本地加載模式和遠(yuǎn)程下載模式。 啟動(dòng)加載( Boot loading)模式 這種模式也稱(chēng)為 自主 ( Autonomous)模式。也即 Boot Loader 從目標(biāo)機(jī)上的某個(gè)固態(tài)存儲(chǔ)設(shè)備上將操作系統(tǒng)加載到 RAM 中運(yùn)行,整個(gè)過(guò)程并沒(méi)有用戶的介入。這種模式是 Boot Loader 的正常工作模式,在發(fā)布的嵌入式產(chǎn)品中, Boot Loader 都應(yīng)該工作在這種模式下。 下載( Downloading)模式 在這種模式下,目標(biāo)機(jī)上的 Boot Loader 將通過(guò)串口連接或網(wǎng)絡(luò)連接等通信手段從主機(jī)( Host)下載文件,比如:下載內(nèi)核映像和根文件系統(tǒng)映像等。從主機(jī)下載的文件通常首先被 Boot Loader 保存到目標(biāo)機(jī)的 RAM 中,然后再被 Boot Loader 寫(xiě)到目標(biāo)機(jī)上的FLASH 類(lèi)固態(tài)存儲(chǔ)設(shè)備中。 Boot Loader 的這種模式通常在第一次安裝內(nèi)核與根文件系統(tǒng)時(shí)被使用;此外,以后的系統(tǒng)更新也會(huì)使用 Boot Loader 的這種工作模式。工作于這種 模式下的 Boot Loader 通常都會(huì)向它的終端用戶提供一個(gè)簡(jiǎn)單的命令行接口。 Boot Loader 的啟動(dòng)方式 系統(tǒng)啟動(dòng)后,所有的 CPU都會(huì)從處理器設(shè)定的復(fù)位地址開(kāi)始執(zhí)行, ARM 處理器在復(fù)位時(shí)從地址 0x00000000 取第一條指令,所以嵌入式系統(tǒng)的開(kāi)發(fā)板的 ROM 或 Flash都要映射到這個(gè)地址,把 Boot Loader 程序設(shè)置在相應(yīng)的 Flash位置,系統(tǒng)加電后,就會(huì)首先執(zhí)行它。 Boot Loader 引導(dǎo)系統(tǒng)有多種啟動(dòng)方式,如網(wǎng)絡(luò)啟動(dòng)方式,硬盤(pán)啟動(dòng)方式, Flash啟動(dòng)方式等。 網(wǎng)絡(luò)啟 動(dòng)方式 網(wǎng)絡(luò)啟動(dòng)方式不需要開(kāi)發(fā)板配置較大的存儲(chǔ)介質(zhì),類(lèi)似于無(wú)盤(pán)工作站,但是需要在啟動(dòng)之前,把 Boot Loader 安裝到板上的 EPROM 或者 Flash中, Boot Loader 通過(guò)以太網(wǎng)接口遠(yuǎn)程下載 Linux內(nèi)核映像或文件系統(tǒng)。 開(kāi)發(fā)板的傳輸接口有串口,以太網(wǎng)接口, USB 口等,其中以太網(wǎng)接口因?yàn)樗俾士?,傳輸?jiǎn)單等優(yōu)點(diǎn)成為最為普遍的網(wǎng)絡(luò)啟動(dòng)接口。 山東工商學(xué)院 2020 屆畢業(yè) 論文 19 以以太網(wǎng)連接方式為例,首先,需要在服務(wù)器上配置啟動(dòng)相關(guān)的網(wǎng)絡(luò)服務(wù),利用 DHCP/BOOTP 服務(wù)為Boot Loader 分配 IP 地址,配置網(wǎng)絡(luò)參數(shù),開(kāi)啟 TFTP服務(wù) ,把內(nèi)核映像和其他文件放在 /tftpboot 目錄下,Boot Loader 客戶端通過(guò)簡(jiǎn)單的 TFTP 協(xié)議遠(yuǎn)程下載內(nèi)核映像到開(kāi)發(fā)板內(nèi)存。 具體過(guò)程如圖 所示。 磁盤(pán)啟動(dòng)方式 傳統(tǒng)的 Linux系統(tǒng)運(yùn)行在臺(tái)式機(jī)和服務(wù)器上,這樣的系統(tǒng)是使用 BIOS 引導(dǎo),且使用磁盤(pán)作為存儲(chǔ)介質(zhì),進(jìn)入 BIOS 設(shè)置菜單,設(shè)置 BIOS 從軟盤(pán),光盤(pán)或者某塊硬盤(pán)啟動(dòng),在硬盤(pán)的主引導(dǎo)分區(qū),還需要安裝 Boot Loader, Boot Loader 負(fù)責(zé)從磁盤(pán)文件系統(tǒng)中把操作系統(tǒng)引導(dǎo)起來(lái)。 傳統(tǒng)的 Linux引導(dǎo)程序有 LILO,之后又出現(xiàn) 了 GRUB。它們 都可以引導(dǎo)操作系統(tǒng)。 Flash 啟動(dòng)方式 大多數(shù)嵌入式系統(tǒng)都使用 Flash 存儲(chǔ)介質(zhì),有些 Flash 可以支持隨機(jī)訪問(wèn)(如 NOR Flash),所以代碼可以直接在 Flash上執(zhí)行的, Boot Loader 一般存儲(chǔ)在 Flash芯片上。這種情況下通常需要把 Flash分區(qū)使用,圖 是 Boot Loader 和內(nèi)核映像以及文件系統(tǒng)的分區(qū)表。 Boot Loader 是根據(jù)處理器的復(fù)位向量設(shè)置,而放在 Flash 的底端或者頂端。使 Boot Loader 得入口位于處理器上電執(zhí)行第一條指令的位置。 接下來(lái)是參數(shù)區(qū),這里作為Boot Loader 的參數(shù)保存區(qū)。 參數(shù)去后邊內(nèi)核映像區(qū), Boot Loader 引導(dǎo) Linux內(nèi)核,就是從這個(gè)地方把內(nèi)核映像解壓到 RAM 中去,然后跳轉(zhuǎn)到內(nèi)核映像入口執(zhí)行。 然后是文件系統(tǒng)區(qū),如果使用 Ramdisk文件系統(tǒng),則需要 Boot Loader把它解壓到 RAM中,如果使用 JFFS2 文件系統(tǒng),將直接掛載為文件系統(tǒng)。 Boot loader 參數(shù) 內(nèi)核映像 文件系統(tǒng) 圖 HOST TARGET BIOS 內(nèi)核映像 目標(biāo)板文件系統(tǒng) 啟動(dòng)內(nèi)核 以太網(wǎng)連接 BOOTP TFTP NFS 圖 以太網(wǎng)連接方式 山東工商學(xué)院 2020 屆畢業(yè) 論文 20 Boot Loader 的啟動(dòng)過(guò)程 從操作系統(tǒng)的角度看, Boot Loader 的總目標(biāo)就是正確地調(diào)用內(nèi)核來(lái)執(zhí)行。 由于 Boot Loader 的實(shí)現(xiàn)依賴(lài)于 CPU的體系結(jié)構(gòu),因此大多數(shù) Boot Loader 都分為 stage1 和 stage2 兩大部分。依賴(lài)于 CPU體系結(jié)構(gòu)的代碼,比如設(shè)備初始化代碼等,通常都放在 stage1 中,而且通常都用匯編語(yǔ)言來(lái)實(shí)現(xiàn),以達(dá)到短小精悍的目的。而 stage2 則通常用 C 語(yǔ)言來(lái)實(shí)現(xiàn),這樣可以實(shí)現(xiàn)給復(fù)雜的功能,而且代碼會(huì)具有更好的可讀性和可移植性。 Boot Loader 的 stage1 Boot Loader 的 stage1 通常包括以下步驟 (以執(zhí)行的先后順序 ): (1)硬件設(shè)備初始化。這是 Boot Loader 一開(kāi)始就執(zhí)行的 操作,其目的是為 stage2 的執(zhí)行以及隨后的 kernel 的執(zhí)行準(zhǔn)備好一些基本的硬件環(huán)境。 — 屏蔽所有的中斷??梢酝ㄟ^(guò)寫(xiě) CPU的中斷屏蔽寄存器或狀態(tài)寄存器來(lái)完成。 — 設(shè)置 CPU的速度和時(shí)鐘頻率。 — RAM 初始化。包括正確地設(shè)置系統(tǒng)的內(nèi)存控制器的功能寄存器等。 — 初始化 LED。典型地,通過(guò) GPIO 來(lái)驅(qū)動(dòng) LED,其目的是表明系統(tǒng)的狀態(tài)。 — 關(guān)閉 CPU內(nèi)部指令/數(shù)據(jù) cache。 (2)為加載 Boot Loader 的 stage2 準(zhǔn)備RAM 空間。雖然嵌入式系統(tǒng)的內(nèi)核映像和根文件系統(tǒng)映 像也可以在直接在 ROM 和 Flash這樣的固態(tài)存儲(chǔ)設(shè)備中直接運(yùn)行,但這是以犧牲運(yùn)行速度為代價(jià)的,所以一般情況下,為了獲取更快的執(zhí)行速度,通常把 stage2加載到 RAM 來(lái)執(zhí)行。因此必須為加載 stage2 準(zhǔn)備好一段可用的 RAM空間。由于 stage2 通常是 C 語(yǔ)言執(zhí)行代碼,因此在考慮空間大小時(shí),除了 stage2 可執(zhí)行映像的大小外,還必須把堆棧stage1 為 stage2 可執(zhí)行映像準(zhǔn)備的 RAM 地址范圍 RAM 地址空間 ... (blank) ... (blank) Ramdisk ... (blank) Boot loader的 stage2可執(zhí)行映像可能的最大大小: 64KB 內(nèi)核映像 Boot loader的 stage2可執(zhí)行映像大?。?1KB 0x00010000( 64KB) 0x00000400(
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1