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

正文內(nèi)容

系統(tǒng)引導(dǎo)程序的設(shè)計與實現(xiàn)(留存版)

2024-09-07 04:08上一頁面

下一頁面
  

【正文】 保安設(shè)備、無線通信、智能手機(jī)等多個領(lǐng)域。 ARM處理器ARM(Advanced RISC Machines),既可以認(rèn)為是一個公司的名字,也可以是對一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字?! RM7系列微處理器的主要應(yīng)用領(lǐng)域為:工業(yè)控制、Internet設(shè)備、網(wǎng)絡(luò)和調(diào)制解調(diào)器設(shè)備、移動電話等多種多媒體和嵌入式應(yīng)用?!?5級整數(shù)流水線,指令執(zhí)行效率更高?!?全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統(tǒng)。ARM主要使用32位的RISC指令,但是指令代碼利用率低,ARM為了彌補(bǔ)此不足,在新型ARM構(gòu)架(V4T版本以上)定義了16位的Thumb指令集。4. 浮點部件:浮點部件是作為選件供ARM構(gòu)架使用。系統(tǒng)模式并不是通過異常過程進(jìn)入的,它和用戶模式具有完全一樣的寄存器。它包含了標(biāo)志位、中斷禁止位、當(dāng)前處理器模式標(biāo)志以及其它的一些控制和狀態(tài)位。這些字節(jié)單元的地址是一個無符號的32位數(shù)值,其取值范圍為0到232-1?!? Thumb指令 ARM在有的版本支持16位Thumb指令?!? 當(dāng)異常中斷發(fā)生時,系統(tǒng)執(zhí)行完當(dāng)前指令后,將跳轉(zhuǎn)到相應(yīng)的異常中斷處理程序處執(zhí)行。但是,這并不防礙對許多概念的解釋,其本質(zhì)在任何操作系統(tǒng)中都是一致的,所不同的僅僅是實現(xiàn)形式。啟動加載模式:這種模式也稱為“自主”模式,即bootloader從目標(biāo)機(jī)上的某個固體存儲設(shè)備上將操作系統(tǒng)加載到RAM中運行,整個過程沒有用戶的介入。(3)創(chuàng)建內(nèi)核參數(shù)列表(針對linux操作系統(tǒng),推薦)。通過提供一套完整的通用系統(tǒng)外設(shè),S3C2440A減少整體系統(tǒng)成本和無需配置額外的組件。分為兩個階段的原因是因為:(1)基于編程語言的考慮。mrs r0,cpsr bic r0,r0,0x1f orr r0,r0,0xd3 msr cpsr,r0 (2)通過宏定義方式定義各寄存器。}(3) 條件編譯初始化NAND Flash設(shè)備。 i = getenv_r (ethaddr, tmp, sizeof (tmp))。/* main_loop() can return to retry autoboot, if so just run it again. */ for (。L inux嵌入式系統(tǒng)BootLoader的研究與設(shè)計[J]. 計算機(jī)應(yīng)用與軟件, ~99[9] 齊欣,張家棟,[J].微型機(jī)與應(yīng)用, ~60[10] 馮進(jìn)文,[J].中國測試技術(shù),~103[11] amp。但是,一個真正的通用bootloader,應(yīng)該有更多的擴(kuò)展功能來適應(yīng)更多的應(yīng)用。e, 16) : 0。 /* MAC Address */ { int i。void mem_malloc_init (ulong dest_addr){ mem_malloc_start = dest_addr。模式的轉(zhuǎn)換設(shè)計主要在階段2中實現(xiàn)。一般地,GNU工具地開發(fā)流程如下:(1)編寫C、C++或者匯編源程序(2)用相關(guān)編譯器生成目標(biāo)文件(3)編寫連接腳本(4)用連接器生成最終文件(elf格式)(5)用二進(jìn)制轉(zhuǎn)換工具生成可下載的二進(jìn)制代碼。S3C2440A的最大特點是其核心處理器(CPU)是一個由Advanced RISC Machines有限公司設(shè)計的16/32位ARM920T的RISC處理器。至于涉及到具體的設(shè)計與實現(xiàn),可以參看第5章的具體內(nèi)容,并根據(jù)自己的硬件系統(tǒng)進(jìn)行移植,也不是一件困難的事情。通常多階段的bootloader能提供更為復(fù)雜的功能,以及更好的可移植性。 ARM最小系統(tǒng)描述對于任何一個系統(tǒng),都希望不是一個虛擬系統(tǒng),也就是說系統(tǒng)都希望是特定系統(tǒng),即有具體的CPU,有具體的存儲芯片以及有各種具體的外圍控制模塊。對于具體的指令集,可以參考相關(guān)文檔?!? 靈活的第二操作數(shù) ARM指令的另一個重要的特點是數(shù)據(jù)處理類指令有靈活的第二操作數(shù)operand2(位與程序代碼的位0-11)。T:對于ARMv4以及更高的版本的T系列的ARM處理器 T=0表示執(zhí)行ARM指令T=1表示執(zhí)行Thumb指令 對于ARMv5以及更高版本的非T系列的ARM處理器★ T=0表示執(zhí)行ARM指令★ T=1表示強(qiáng)制下一條執(zhí)行的指令產(chǎn)生為定義指令中斷 Modes位控制處理器模式,在這不再贅述。由于ARM采用了流水線機(jī)制,當(dāng)正確讀取了PC的值時,該值為當(dāng)前指令地址加8個字節(jié)。當(dāng)需要進(jìn)行處理器模式的切換時,應(yīng)用程序可以產(chǎn)生異常處理,在異常處理過程中進(jìn)行模式的切換。1. ALU:它由兩個操作數(shù)鎖存器、加法器、邏輯功能、結(jié)果以及零檢測邏輯構(gòu)成。RISC結(jié)構(gòu)優(yōu)先選取使用頻率最高的簡單指令,避免復(fù)雜指令;將指令長度固定,指令格式和尋址方式種類減少;以控制邏輯為主,不用或少用微碼控制等措施來達(dá)到上述目的?!?6級整數(shù)流水線,指令執(zhí)行效率更高?! RM9系列微處理器包含ARM920T、ARM922T和ARM940T三種類型,以適用于不同的應(yīng)用場合?!?代碼密度高并兼容16位的Thumb指令集。目前據(jù)不完全統(tǒng)計,全世界嵌入式處理器的品種總量已經(jīng)超過1000多種,流行體系結(jié)構(gòu)有30多個系列。針對嵌入式系統(tǒng)的各種微處理器遍布各個角落。 BootloaderABSTRACT 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。它對軟硬件的體積大小、成本、功耗和可靠性都提出了嚴(yán)格的要求。在這良好的經(jīng)濟(jì)環(huán)境下,嵌入式系統(tǒng)領(lǐng)域得到進(jìn)一步的拓寬與發(fā)展。應(yīng)該說,ARM無處不在。1991年ARM公司成立于英國劍橋,主要出售芯片設(shè)計技術(shù)的授權(quán)?! RM7系列微處理器包括如下幾種類型的核:ARM7TDMI、ARM7TDMIS、ARM720T、ARM7EJ?!?支持32位ARM指令集和16位Thumb指令集。★ 支持?jǐn)?shù)據(jù)Cache和指令Cache,具有更高的指令和數(shù)據(jù)處理能力★ 主頻最高可達(dá)400MIPS。Thumb指令集比通常的8位和16位RISC/CISC處理器具有更好的代碼密度,而芯片面積只增加6%,可使程序存儲器更小。FPA10浮點加速器是作為協(xié)處理方式與ARM相連,并通過協(xié)處理指令的解釋來執(zhí)行。但是系統(tǒng)模式屬于特權(quán)模式,可以訪問所有的系統(tǒng)資源,也可以直接進(jìn)行處理器模式的切換,它主要供操作系統(tǒng)任務(wù)使用。每一種處理器異常模式下都有一個專用的物理狀態(tài)寄存器,稱為SPSR(備份程序狀態(tài)寄存器)。ARM的地址空間也可以看作是230個32位的字單元。Thumb指令集的整體執(zhí)行速度比ARM32位指令集快,而且提高了代碼密度。在異常中斷處理程序執(zhí)行完成后,程序返回到發(fā)生中斷的指令的下一條指令處執(zhí)行。 Bootloader的基本概念一個嵌入式Linux系統(tǒng)從軟件的角度看通常可以分為四個層次:引導(dǎo)加載序、Linux內(nèi)核、文件系統(tǒng)、用戶應(yīng)用程序。這種模式是bootloader的正常工作模式,因此當(dāng)以嵌入式產(chǎn)品發(fā)布的時候,bootloader必須工作在這種模式下。(4)啟動內(nèi)核鏡像(必需):根據(jù)內(nèi)核鏡像保存的存儲介質(zhì)不同,可以有兩種啟動方式:FALSH啟動以及RAM啟動;但是無論是哪種啟動方式,下面的系統(tǒng)狀態(tài)必須得到滿足:★ CPU寄存器的設(shè)置:R0=0; R1=機(jī)器類型; R2=啟動參數(shù)標(biāo)記列表在RAM中的起始地址; 這三個寄存器的設(shè)置是在最后啟動內(nèi)核時通過啟動參數(shù)來傳遞完成的。S3C2440A微處理器體系結(jié)構(gòu)特征如下:★ 為手持設(shè)備和通用嵌入式應(yīng)用提供片上系統(tǒng)解決方案。階段1主要用匯編語言,它主要進(jìn)行與CPU核以及存儲設(shè)備密切相關(guān)的處理工作,進(jìn)行一些必要的初始化工作,是一些依賴于CPU體系結(jié)構(gòu)的代碼,為了增加效率以及因為涉及到協(xié)處理器的設(shè)置,只能用匯編編寫,這部分直接在FLASH中執(zhí)行;階段2用一般的C語言,來實現(xiàn)一般的流程以及對板級的一些驅(qū)動支持,這部分會被拷貝到RAM中執(zhí)行。if defined(CONFIG_S3C2400) define pWTCON 0x15300000 define INTMSK 0x14400008 /* InteruptController base addresses */ define CLKDIVN 0x14800014 /* clock divisor register */elif defined(CONFIG_S3C2410) define pWTCON 0x53000000 define INTMOD 0X4A000004 define INTMSK 0x4A000008 /* InteruptController base addresses */ define INTSUBMSK 0x4A00001C define CLKDIVN 0x4C000014 /* clock divisor register */endif(3)關(guān)閉watchdog定時器,清中斷位。if (CONFIG_COMMANDS amp。 s = (i 0) ? tmp : NULL。) { main_loop ()。L inux嵌入式系統(tǒng)BootLoader的研究與設(shè)計[J].計算機(jī)應(yīng)用與軟件,~99 致 謝四年的讀書生活在這個季節(jié)即將劃上一個句號,對于我的人生卻只是一個逗號,我將面對又一次征程的開始。除了bootloader基本的加載內(nèi)核鏡像的功能,還增加了對串口(使用XMODEM協(xié)議)的支持。 ++reg) { gdbdbi_enet1addr[reg] = s ? simple_strtoul (s, amp。endif /* CONFIG_VFD */ /* IP Address */ gdbdbi_ip_addr = getenv_IPaddr (ipaddr)。(2) 進(jìn)行內(nèi)存初始分配。為了在兩者之間做到兼顧,本課題既支持啟動加載模式,也支持下載模式,具體思路為:在bootloader做完一些硬件初始化工作后,而在加載內(nèi)核鏡像之前,先在一定的時間內(nèi)等待有沒有用戶有鍵盤輸入,如果沒有,則為啟動加載模式,直接加載內(nèi)核鏡像進(jìn)行啟動;如果有,則進(jìn)入命令行格式,這時開發(fā)者就可以根據(jù)自己的需要以及bootloader的支持情況,做一些其他的工作。GNU的編譯器功能非常強(qiáng)大,共有上百個操作選項,不過在本課題實際開發(fā)中只需要用到有限的幾個,大部分采用缺省選項。它采用了新的總線架構(gòu)Advanced Micro controller Bus Architecture (AMB
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1