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

正文內(nèi)容

系統(tǒng)引導(dǎo)程序的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)說(shuō)明書(shū)(存儲(chǔ)版)

  

【正文】 LILO 或者 GRUB)一起組成。 Bootloader 的啟動(dòng)過(guò)程可以是單階段的,也可以是多階段的。從主機(jī)下載的文件通常首先被 bootloader 保存到目標(biāo)機(jī)的 RAM 中,然后被bootloader 寫(xiě)到目標(biāo)機(jī)上的 FLASH 類(lèi)固態(tài)存儲(chǔ)設(shè)備中。但是,我們還是可以根據(jù) ARM 的體系結(jié)構(gòu),從理論上總結(jié)出一些 ARM 系統(tǒng) bootloader 實(shí)現(xiàn)的共性,而這僅僅局限于理論上。 ★ Cache 和 MMU 的設(shè)置: MMU 必須關(guān)閉; 數(shù)據(jù) cache 必須關(guān)閉; 23 指令 cache 可以關(guān)閉也可以開(kāi)啟; Bootloader 中所有對(duì)地址的操作都是使用物理地址,是實(shí)在的實(shí)地址,不存在虛擬地 址,因此 MMU 必須關(guān)閉。它采用了新的總線(xiàn)架 構(gòu) Advanced Micro controller Bus Architecture 25 (AMBA)。 ★ 加強(qiáng)的 ARM 體系結(jié)構(gòu) MMU 用于支持 WinCE, EPOC 32和 Linux。 GNU 的編譯器功能非常強(qiáng)大,共有上百個(gè)操作選項(xiàng),不過(guò)在本課題實(shí)際開(kāi)發(fā)中只需要用到有限的幾個(gè),大部分采用缺省選項(xiàng)。 地址規(guī)劃設(shè)計(jì) 當(dāng) bootloader 階段設(shè)計(jì) 好之后,需要考慮的是鏡像存儲(chǔ)的地址分配:總鏡像保存在什么地方,階段 2 對(duì)應(yīng)的鏡像會(huì)被拷貝到什么地方;內(nèi)核鏡像原先存放在什么地方, bootloader 會(huì)把它又重新加載到什么地方;如何進(jìn)行準(zhǔn)確的地址規(guī)劃以保證沒(méi)有相互沖突等等,這些都是本節(jié)需要考慮的范疇。為了在兩者之間做到兼顧,本課題既支持啟動(dòng)加載模式,也支持下載模式,具體思路為:在 bootloader 做完一些硬件初始化工作后,而在加載內(nèi)核鏡像之前,先在一定的時(shí)間內(nèi)等待有沒(méi)有用戶(hù)有鍵盤(pán)輸入,如果沒(méi)有,則為啟動(dòng)加載模式,直接加載內(nèi)核鏡像進(jìn)行啟動(dòng) ;如果有,則進(jìn)入命令行格式,這時(shí)開(kāi)發(fā)者就可以根據(jù)自己的需要以及 bootloader 的支持情況,做一些其他的工作。 ( 5)清空 TLB, Caches 以及寫(xiě)緩沖區(qū),當(dāng)系統(tǒng)冷啟動(dòng)時(shí)所有的保留數(shù)據(jù)都以無(wú)效處理,因此都要清空,況且 cache 都已經(jīng)關(guān)閉。 ( 3)關(guān)閉 watchdog 定時(shí)器,清中斷位。所以bootloader 在啟動(dòng)時(shí)以及加載內(nèi)核時(shí)通常要考慮這一點(diǎn)。階段 1 主要用匯編語(yǔ)言,它主要進(jìn)行與 CPU核以及存儲(chǔ)設(shè) 備密切相關(guān)的處理工作,進(jìn)行一些必要的初始化工作,是一些依賴(lài)于 CPU 體系結(jié)構(gòu)的代碼,為了增加效率以及因?yàn)樯婕暗絽f(xié)處理器的設(shè)置,只能用匯編編寫(xiě),這部分直接在 FLASH 中執(zhí)行;階段 2 用一般的 C 語(yǔ)言,來(lái)實(shí)現(xiàn)一般的流程以及對(duì)板級(jí)的一些驅(qū)動(dòng)支持,這部分會(huì)被拷貝到 RAM 中執(zhí)行。 ( 3) 編譯環(huán)境 本文所使用的編譯工具均為 GNU 的編譯工具。 S3C2440A 微處理器體系結(jié)構(gòu)特征如下: ★ 為手持設(shè)備和通用嵌入式應(yīng)用提供片上系統(tǒng)解決方案。 S3C2440A 采用了 ARM920T 的內(nèi)核, 的 CMOS 標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。 ( 4) 啟動(dòng)內(nèi)核鏡像(必需):根據(jù)內(nèi)核鏡像保存的存儲(chǔ)介質(zhì)不同,可以有兩種啟動(dòng)方式: FALSH 啟動(dòng)以及 RAM 啟動(dòng);但是無(wú)論是哪種啟動(dòng)方式,下面的系統(tǒng)狀態(tài)必須得到滿(mǎn)足: ★ CPU 寄存器的設(shè)置: R0= 0; R1=機(jī)器類(lèi)型; R2=啟動(dòng)參數(shù)標(biāo)記列表在 RAM 中的起始地址; 這三個(gè)寄存器的設(shè)置是在最后啟動(dòng)內(nèi)核時(shí)通過(guò)啟動(dòng)參數(shù)來(lái) 傳遞完成的。 22 ARM Bootloader 的共性 從上面 bootloader 的基本概念可以看出, bootloader 的設(shè)計(jì)與實(shí)現(xiàn)是與具體 的 CPU 以及具體的硬件系統(tǒng)緊密相關(guān)的,從上一章的實(shí)現(xiàn)就可以看出,要實(shí)現(xiàn)一個(gè)通用的 ARM bootloader,即要適合所有的 ARM 處理器以及硬件系統(tǒng),是不太可能的事情。這種模式是 bootloader 的正常工作模式,因此當(dāng)以嵌入式產(chǎn)品發(fā)布的時(shí)候, bootloader 必須工作在這種模式下。不同的體系結(jié)構(gòu)需求的 bootloader 是不同的;除了體系結(jié)構(gòu), bootloader 還依賴(lài)于具 體的 21 嵌入式板級(jí)設(shè)備的配置。 Bootloader 的基本概念 一個(gè)嵌入式 Linux 系統(tǒng)從軟件的角度看通??梢苑譃樗膫€(gè)層次:引導(dǎo)加載序、 Linux 內(nèi)核、文件系統(tǒng)、用戶(hù)應(yīng)用程序。 ★ 設(shè)置當(dāng)前的程序狀態(tài)寄存器 CPSR 中相應(yīng)的位,包括設(shè)置 CPSR 中的位,使處理器進(jìn)入相應(yīng)的執(zhí)行模式;設(shè)置 CPSR 中的位,禁止 IRQ 中斷,當(dāng)進(jìn)入 FIQ模式時(shí),禁止 FIQ 模式。在異常中斷處理程序執(zhí)行完成后,程序返回到發(fā)生中斷的指令的下一條指令處執(zhí)行。 ★ Rd 位 12- 15,目標(biāo)寄存器編碼。 Thumb 指令集的整體執(zhí)行速度比ARM32 位指令集快,而且提高了代碼密度。標(biāo)準(zhǔn)的 ARM 指令每條都是 32 位,有些ARM 核還可以執(zhí)行 16 位的 Thumb 指令集。 ARM 的地址空間也可以看作是 230個(gè) 32 位的字單元。 CPSR 的低 8 位稱(chēng)為控制位,當(dāng)異常中斷發(fā)生時(shí)這些位發(fā)生改變。每一種處理器異常模式下都有一個(gè)專(zhuān)用的物理狀態(tài)寄存器,稱(chēng)為 SPSR(備份程序狀態(tài)寄存器)。當(dāng)通過(guò)跳轉(zhuǎn)指令調(diào)用子程序時(shí), R14 被設(shè)置為該子程序的返回地址;在子程序中 ,把R14 的指賦值到程序計(jì)數(shù)器 PC 中時(shí),子程序返回 。但是系統(tǒng)模式屬于特權(quán)模式,可以訪(fǎng)問(wèn)所有的系統(tǒng)資源,也可以直 接進(jìn)行處理器模式的切換,它主要供操作系統(tǒng)任務(wù)使用。其中,除系統(tǒng)模式外,其他 5 種特權(quán)模式又稱(chēng)為異常模式。 FPA10 浮點(diǎn)加速器是作為協(xié)處理方式與 ARM 相連,并通過(guò)協(xié)處理指令的解釋來(lái)執(zhí)行。 ARM core 描述 盡管本本文實(shí)現(xiàn)主要涉及軟件上的開(kāi)發(fā),但是軟件上代碼的實(shí)現(xiàn)更多的都涉及芯片構(gòu)架,因此在這里簡(jiǎn)要介紹一下一般 ARM core 構(gòu)架。 Thumb指令集比通常的 8 位和 16 位 RISC/CISC 處理器具有更好的代碼密度,而芯片面積只增加 6%,可使程序存儲(chǔ)器更小。 RISC 指令集 傳統(tǒng)的 CISC( Complex Instruction Set Computer,復(fù)雜指令集計(jì)算機(jī))結(jié)構(gòu)有其固有的缺點(diǎn),即隨著計(jì)算機(jī)技術(shù)的發(fā)展而不斷 引入新的復(fù)雜的指令集,為支持這些新增的指令,計(jì)算機(jī)的體系結(jié)構(gòu)會(huì)越來(lái)越復(fù)雜,然而,在 CISC 指令集的各種指令中,其使用頻率卻相差懸殊,大約有 20%的指令會(huì)被反復(fù)使用,占整個(gè)程序代碼的 80%。 ★ 支持?jǐn)?shù)據(jù) Cache 和指令 Cache,具有更高的指令和數(shù)據(jù)處理能力 ★ 主頻最高可達(dá) 400MIPS。 ARM9E 系列微處理器包含 ARM926EJS、 ARM946ES 和 ARM966ES 三種類(lèi)型,以適用于不同的應(yīng)用場(chǎng)合。 ★ 支持 32 位 ARM 指令集和 16 位 Thumb 指令集。 ★ MPU 支持實(shí)時(shí)操作系統(tǒng)。 ARM7 系列微處理器包括如下幾種類(lèi)型的核: ARM7TDMI、 ARM7TDMIS、ARM720T、 ARM7EJ。 ARM7 微處理器系列具有如下特點(diǎn): ★ 具有嵌入式 ICE- RT 邏輯,調(diào)試開(kāi)發(fā)方便。 1991 年 ARM 公司成立 于英國(guó)劍橋,主要出售芯片設(shè)計(jì)技術(shù)的授權(quán)。因此,在真正的開(kāi)發(fā)環(huán)節(jié)上,本課題主要基于 ARM 920T 體系構(gòu)架的S3C2440A 處理器,很具有代表性,并由此在理論上擴(kuò)展到整個(gè) ARM 系統(tǒng)。應(yīng)該說(shuō), ARM 無(wú)處不在。簡(jiǎn)單的嵌入式系統(tǒng)根本沒(méi)有操作系統(tǒng),而只是一個(gè)控制循環(huán)。在這良好的經(jīng)濟(jì)環(huán)境下,嵌入式系統(tǒng)領(lǐng)域得到進(jìn)一步的拓寬與發(fā)展。 在實(shí)踐 平臺(tái)上,本課題硬件上采用了 ARM9 系列的 S3C2440A 作為處理器,具有一定的代表性,并以此來(lái)搭建課題的硬件實(shí)踐平臺(tái),軟件上以 Linux 作為操作系統(tǒng)。它對(duì)軟硬件的體積大小、成本、功耗和可靠性都提出了嚴(yán)格的要求。盡我所知,除文中特別加以標(biāo)注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過(guò)的研究成果,也不包含我為獲得 及其它教育機(jī)構(gòu)的學(xué)位或?qū)W歷而使用過(guò)的材料。 相應(yīng)地,這也給處理器提出了要求。 Bootloader III ABSTRACT With the popularity of mobile devices and development of embedded systems has bee a hot is not a recent emergence of new technology, but with the microelectronics and puter technology, more and more microcontrol chip functions, and embedded microcontroller chip devices and systems more and more, making this technology moreand more volume of its hardware and software size, cost, power consumption and reliability have made stringent powerful embedded systems to achieve more and more plex, the resulting reliability is greatly more recent trend is a powerful embedded systems usually require an operating system to support this operating system is already mature and stable, can be embedded Linux, WINCE and so on. Accordingly, it also made a request to the , many semiconductor manufacturers are producing generic architecture based on ARM microprocessing chip, ARM technology has in today39。嵌入式系統(tǒng)廣泛地應(yīng)用在信息終端、工業(yè)控制和信息 家電等領(lǐng)域。針對(duì)嵌入式系統(tǒng)的各種微處理器遍布各個(gè)角落。然而,如何進(jìn)行加載操作系統(tǒng)這個(gè)問(wèn)題卻很少有人提出。目前據(jù)不完全統(tǒng)計(jì),全世界嵌入式處理器的品種總量已經(jīng)超過(guò) 1000 多種,流行體系結(jié)構(gòu)有 30 多個(gè)系列。世界各大半導(dǎo)體生產(chǎn)商從 ARM 公司購(gòu)買(mǎi)其設(shè)計(jì)的 ARM 微處理 器核,根據(jù)各自不同的應(yīng)用領(lǐng)域,加入適當(dāng)?shù)耐鈬娐?,從而形成自己?ARM 微處理器芯片進(jìn)入市場(chǎng)。 ★ 代碼密度高并兼容 16 位的 Thumb 指令集。具有以下特點(diǎn): ★ 5 級(jí)整數(shù)流水線(xiàn),指令執(zhí)行效率更高。 ARM9 系列微處理器包含 ARM920T、 ARM922T 和 ARM940T 三種類(lèi)型,以適用于不同的應(yīng)用場(chǎng)合。 ★ 全性能的 MMU,支持 Windows CE、 Linux、 Palm OS 等多種主流嵌入式操作系統(tǒng)。 ★ 6 級(jí)整數(shù)流水線(xiàn),指令執(zhí)行效率更高。 ARM10E 系列微處理器包含 ARM1020E、 ARM1022E 和 ARM1026EJS 三種類(lèi)型,以適用于不同的應(yīng)用場(chǎng)合。 RISC 結(jié)構(gòu)優(yōu)先選取使用頻率最高的簡(jiǎn)單指令,避免復(fù)雜指令;將指令長(zhǎng)度固定,指令格式和尋址方式種類(lèi)減少;以控制邏輯為主,不用或少用微碼控制等措施來(lái)達(dá)到上述目的。 低功耗 由于 ARM 架構(gòu)的處理器主要用于手持式嵌入式系統(tǒng)之中,因此 ARM 構(gòu)架在設(shè)計(jì)中十分注意低電壓、低功耗這一點(diǎn),因而在手持式嵌入式系統(tǒng)得到廣泛的應(yīng)用。 1. ALU:它 由 兩個(gè)操作數(shù)鎖存器、加法器、邏輯功能、結(jié)果以及零檢測(cè)邏輯構(gòu)成。 不同的 ARM core 可能還有所不同。當(dāng)需要進(jìn)行處理器模式的切換時(shí),應(yīng)用程序可以產(chǎn)生異常處理,在異常處理過(guò)程中進(jìn)行模式的切換。任意時(shí)刻(也就是任意的處理器模式下),可見(jiàn)的寄存器包括 15 個(gè)通用寄存器( R0- R14)、一個(gè)或者兩個(gè)狀態(tài)寄存器以及程序計(jì)數(shù)器( PC)。由于 ARM 采用了流水線(xiàn)機(jī)制,當(dāng)正確讀取了PC 的值時(shí),該值為當(dāng)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1