色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>嵌入式開發>嵌入式Linux系統構造解析

嵌入式Linux系統構造解析

2017-11-04 | rar | 0.3 MB | 次下載 | 1積分

資料介紹

目前嵌入式系統的應用越來越廣泛,一臺通用PC的外部設備就有5~10個嵌入式微處理器,如鍵盤、軟驅、硬盤、顯示器、打印機、掃描儀、USB接口等均是由嵌入式處理器控制的。在制造工業、過程控制、通信電視、儀器儀表、汽車船舶、航空航天、消費類產品均是嵌入式系統的應用領域。嵌入式系統目前主要有:Windows CE、VxWorks、QNX等,它們都具較好的實時性,系統可靠性,任務處理隨機性等優點。但是它們的價格普遍偏高,很多開發商承受不起。因而,Linux操作系統成為嵌入式操作系統的首選,原因如下:
  在精簡內核在編譯內核之前,首先要明確需要那些驅動和模塊,然后只選擇需要的驅動和模塊,例如,如果系統不需要網絡支持,則可以去掉網絡模塊。內核一般是以壓縮方式存放的,在系統啟動時會自行解壓。內核都是常駐內存的,當需要調用應用程序時,再把需要的程序從磁盤
  調入內存運行。
  構建內核常用的命令包括:
  ◆ make config:內核配置,調用 。/scripts/Configure 按照 arch/i386/config.in 來進行配置。
  ◆ make dep:尋找依賴關系。
  ◆ make clean:清除以前構建內核所產生的所有目標文件、模塊文件、以及一些臨時文件等。
  ◆ make rmproper:刪除所有因構建內核過程中產生的所有文件,把內核恢復到最原始的狀態。
  ◆ make:構核,通過各目錄的Makefile 文件將會在各個目錄下產生許多目標文件。如果內核沒有錯誤,將產生文件vmlinux,這就是構建的內核。
  ◆ make zImage:在make 的基礎上產生壓縮的內核映象文件。/arch/$(ARCH)/boot/zImage 以及在 。/arch/$(ARCH)/boot/compresed/目錄下產生臨時文件。
  ◆ make bzImage:在make 的基礎上產生壓縮比例更大的內核映象文件。/arch/$(ARCH)/boot/bzImage 以及在 。/arch/$(ARCH)/boot/compresed/目錄下產生臨時文件。
  ◆ make modules:編譯模塊文件,在make config 時所配置的所有模塊將在這時編譯,形成模塊目標文件,并把這些目標文件存放在modules 目錄中。
  ◆ make modules_install:把上面編譯好的模塊目標文件放置在目錄 。/lib/modules/$KERNEL_VERSION/ 中。上面的編譯內核是在沒有改變源代碼的情況下實現的,如果覺得源代碼提供的功能在某些方面不能滿足要求,就要修改源代碼了。源代碼中主要有以下幾個關鍵部分:有關進程管理的task_struct 結構,這個結構幾乎包括了與進程有關的所有文件內容,還有任務隊列、時鐘管理和中斷管理,各種進程間的通信機制,內存管理中各種內存分配函數的實現,虛擬文件系統。
  系統啟動
  引導啟動程序主要包括以下三個文件:bootsect.s,head.s和setup.s 這三個文件雖然都是匯編程序,但確使用了兩種語法格式。bootsect.s和setup.s 采用了近似于Intel的匯編語言語法,需要使用Intel 8086 匯編器和連接器 as86和ld86。head.s 則使用了GUN的匯編格式,并且運行在保護模式下,需要用GUN的as 進行編譯。這是一種AT&T語法的匯編語言格式。 Bootsect.s代碼時磁盤引導塊程序,駐留在磁盤的第一個扇區中,在PC機加電ROM-BIOS自檢后,引導扇區由BIOS加載到內存0x7C00處,然后將自己移動到內存0x90000處。該程序的主要作用是首先將setup模塊(由setup.s編譯的)從磁盤加載到內存緊接著bootsect的后面位置(0x90200),然后利用BIOS中斷0x13取磁盤參數表中當前啟動引導盤的參數,接著在屏幕上顯示“Loading system.。.”字符串。再將system模塊從磁盤上加載到內存0x10000開始的地方。隨后確定根文件系統的設備號。
  Setup程序的作用主要是利用ROM-BIOS中斷讀取機器系統數據,并將這些數據保存到0x90000開始的位置(覆蓋了bootsect程序所在的地方)。然后setup程序將system模塊從0x10000整塊向下移動到內存絕對地址0x0000處,接下來加載中斷描述符表寄存器idtr)和全局描述表寄存器(gdtr)。開啟A20地址線,重新設置兩個中斷控制芯片8259A,將硬件中斷號重新設置為0x20-0x2f。最后設置CPU的控制寄存器CR0(也稱機器狀態字),從而進入32位保護模式進行,并跳轉到位于system模塊最前面部分的head.s程序繼續運行。 Head.s程序在被編譯后,會被連接成system模塊的最前面開始部分,即頭部(head)程序。從這里開始,內核完全都是在保護模式下運行了。這段程序實際上處于內存絕對地址0處開始的地方。這個程序功能比較單一,首先是加載各個數據段寄存器,重新設置中斷描述符表idt,共256項。然后重新設置中斷描述符表gdt,接下來檢測A20地址線是不是開啟了,再檢測PC機是否含有數學協處理器芯片,然后設置管理內存的分頁處理機制,最后利用返回指令將預先放置在堆棧中的/init/main.c程序的入口地址彈出,去運行main()內核初始化程序。
  設備驅動程序
  設備驅動程序在Linux內核中扮演著特殊的角色,它們是一個個獨立的“黑盒子”,使某個特定的硬件響應一個定義良好的內部編程接口,同時完全隱藏了設備的工作細節。用戶操作通過一組標準化的調用完成,而這些調用是和特定的驅動程序無關的。設備驅動程序提供的功能是同外設進行數據傳送。設備包括三種類型:字符設備、塊設備和網絡接口。每個模塊通常實現其中一種類型,相應地,模塊可分為字符模塊(char module)、塊模塊(block module)和網絡模塊(network module)三種。然而這種分類方式并不是十分嚴格,程序員可以構建一個大的模塊,在其中實現不同類型的設備驅動程序。三種類型的設備如下:
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統的設計與實現
  10. 0.61 MB  |  2次下載  |  免費
  11. 6基于FPGA的C8051F單片機開發板設計
  12. 0.70 MB  |  2次下載  |  免費
  13. 751單片機窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21548次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537796次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191185次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 神马影院午夜伦理限级| 国产乱妇乱子在线播视频播放网站| 最近韩国HD免费观看国语| BT7086福利二区最新| 国产免费网站看v片在线| 免费看美女的网站| 亚洲精品高清中文字幕完整版| 99国内精精品久久久久久婷婷| 国产亚洲精品久久综合阿香蕉| 欧美性情video sexo视频| 伊人影院久久| 国模孕妇模特季玥之粉红| 色噜噜视频| 99re2.久久热最新地址| 黑色丝袜在线观看| 熟妇的味道HD中文字幕| 91久久偷偷做嫩草影院免| 精品第一国产综合精品蜜芽| 天堂网久久| 俄罗斯破处| 琪琪电影午夜理论片77网| 2017日日干| 空姐厕所啪啪啪| 在线观看国产精美视频| 国产午夜精品久久理论片小说| 视频一区国产| 高H黄暴NP辣H一女多男| 欧美日韩精品| qvod播放电影| 欧美巨大xxxx做受孕妇视频| 91黄色影院| 蜜桃传媒在线观看入口| 91chinesevideo| 美女被男人撕衣舔胸| 中文字幕日本一区| 久久久久久久久免费视频| 亚洲在线无码免费观看| 精品在线观看一区| 一级毛片直接看| 妈妈的朋友6未删减版完整在线| 综合人妻久久一区二区精品|