亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人


Linux內核移植的簡介

分享到:
           

    所謂移植就是把程序代碼從一種運行環境轉移到另一種運行環境。對于內核移植來說,主要是從一種硬件平臺轉移到另一種硬件平臺上運行。

    在一個目標板上Linux內核的移植包括3個層次,分別為體系結構級別的移植、SoC級別的移植和主板級別的移植。

    體系結構級別的移植是指在不同體系結構平臺上Linux內核的移植,例如,在ARM、MIPS、PPC等不同體系結構上分別都要對每個體系結構進行特定的移植工作。一個新的體系結構出現就需要進行這個層次上的移植。

    SoC級別的移植是指在具體的SoC處理器平臺上Linux內核的移植,例如,ARM920T IP核的兩個處理器S3C2410和AT91RM9200等平臺都分別要進行SoC特定的移植工作。

    主板級別的移植是指在具體的目標主板上Linux內核的移植,例如,在FS2410目標板上,需要進行主板特定的移植工作。

    在這里討論主板級別的移植,主要是添加開發板初始化和驅動程序的代碼。這部分代碼大部分是與體系結構相關的,在arch目錄下按照不同的體系結構管理。

    Linux 2.6內核已經支持S3C2410處理器的多種硬件板,例如,SMDK2410、Simtec-BAST、IPAQ-H1940、Thorcom-VR1000等。我們可以參考SMDK2410參考板來移植開發板的內核。

    S3C2410屬于片上系統,處理器芯片具備串口、LCD等外圍接口的控制器。這樣,參考板上的設備驅動程序多數可以直接使用。但并不是所有的外部設備都相同,不同的開發板可以使用不同的SDRAM、Flash、以太網接口芯片等。這就需要根據硬件修改或者開發驅動程序。

    例如,串口驅動程序是典型的設備驅動程序之一,這個驅動程序幾乎不需要任何改動。然而,如果用2.4內核的配置使用方式,是不能得到串口控制臺信息的。在2.6的內核中,串口設備在/dev目錄下對應的設備節點為/dev/ttySAC0、/dev/ttySAC1等。所以,再使用過去的串口設備ttyS0,就得不到控制臺打印信息了。現在可以很簡單地解決這個問題,把內核命令行參數的控制臺設置修改為console = ttySAC0,115200。

    在內核已經支持S3C2410處理器以后,基本上無須改動代碼就可以讓內核運行起來。但是,在有些情況下,我們必須針對不同的設備進行驅動級的移植,至少硬件地址和中斷號可能會不同。例如,有時需要移植網絡芯片和Nand Flash芯片等外設的驅動程序。

    本文選自華清遠見嵌入式培訓教材《從實踐中學嵌入式Linux應用程序開發》。更多linux內核移植學習可以參考華清遠見《嵌入式Linux系統開發班》課程大綱。

   熱點鏈接:

   1、Linux內核配置與編譯
   2、Linux內核結構介紹
   3、Linux內核主要功能介紹
   4、Linux內核模塊程序結構
   5、如何分析Linux內核源碼

更多新聞>> 

主站蜘蛛池模板: 日韩久久久精品首页 | 国内精品伊人久久久影视 | 精品久久久久免费极品大片 | 欧美九九| 色八区 | 青青操免费在线视频 | 麻豆小视频 | 国产在线观看a | 婷婷久久综合九色综合九七 | 中文字幕一区二区三区在线观看 | 99国产成人高清在线视频 | 欧美在线免费 | 激情6月丁香婷婷色综合 | 国产一区二区三区久久 | xxxx日日摸夜夜添夜夜添视频 | 久久综合九色综合97欧美 | 精品久草 | 国内一区亚洲综合图区欧美 | 日日操夜夜骑 | 久久久久久久岛国免费播放 | 国产精品jizz在线观看免费 | 国产综合色在线视频区色吧图片 | 久久精品国产99国产精偷 | 国内精品久久国产大陆 | 男女污污黄无遮挡免费 | 三级三级三级a三级三级 | 69精品视频 | 毛片爱爱 | 免费看www视频| 免费国外b站不收费 | 日本狠狠操 | 欧美在线一区二区三区欧美 | 国产欧美日韩在线观看精品 | 人皮交易在线观看高清 | 国产丝袜在线 | 国产成人综合在线观看网站 | 一级做a毛片在线看 | 久久天堂夜夜一本婷婷麻豆 | 在线aaa| 性xxxx免费观看视频 | 日本 黄 a |