• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            君子性非異也,善假于物也。

            如有恒,何須三更起,半夜眠;最怕莫,三天打魚兩天曬網,竹籃打水一場空!
            posts - 31, comments - 23, trackbacks - 0, articles - 30
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            從軟件的角度看嵌入式 Linux 系統

            Posted on 2006-11-02 23:02 neter 閱讀(226) 評論(0)  編輯 收藏 引用 所屬分類: 探索嵌入式開發
            在專用的嵌入式板子運行 GNU/Linux 系統已經變得越來越流行。一個嵌入式 Linux 系統從軟件的角度看通常可以分為四個層次:

            1. 引導加載程序。包括固化在固件(firmware)中的 boot 代碼(可選),和 Boot Loader 兩大部分。

            2. Linux 內核。特定于嵌入式板子的定制內核以及內核的啟動參數。

            3. 文件系統。包括根文件系統和建立于 Flash 內存設備之上文件系統。通常用 ram disk 來作為 root fs。

            4. 用戶應用程序。特定于用戶的應用程序。有時在用戶應用程序和內核層之間可能還會包括一個嵌入式圖形用戶界面。常用的嵌入式 GUI 有:MicroWindows 和 MiniGUI 懂。

            引導加載程序是系統加電后運行的第一段軟件代碼。回憶一下 PC 的體系結構我們可以知道,PC 機中的引導加載程序由 BIOS(其本質就是一段固件程序)和位于硬盤 MBR 中的 OS Boot Loader(比如,LILO 和 GRUB 等)一起組成。BIOS 在完成硬件檢測和資源分配后,將硬盤 MBR 中的 Boot Loader 讀到系統的 RAM 中,然后將控制權交給 OS Boot Loader。Boot Loader 的主要運行任務就是將內核映象從硬盤上讀到 RAM 中,然后跳轉到內核的入口點去運行,也即開始啟動操作系統。

            而在嵌入式系統中,通常并沒有像 BIOS 那樣的固件程序(注,有的嵌入式 CPU 也會內嵌一段短小的啟動程序),因此整個系統的加載啟動任務就完全由 Boot Loader 來完成。比如在一個基于 ARM7TDMI core 的嵌入式系統中,系統在上電或復位時通常都從地址 0x00000000 處開始執行,而在這個地址處安排的通常就是系統的 Boot Loader 程序。
            人人狠狠综合久久亚洲88| 伊人久久大香线蕉av不卡| 精品999久久久久久中文字幕| 老色鬼久久亚洲AV综合| 成人久久精品一区二区三区| 999久久久国产精品| 日韩va亚洲va欧美va久久| 日产精品久久久久久久| 久久精品成人| 国产精品久久久久9999高清| 久久综合一区二区无码| 国产精品美女久久久| 无码8090精品久久一区| 国产精品久久网| 国产精品美女久久福利网站| 亚洲国产精品人久久| 国产精品久久午夜夜伦鲁鲁| 国产精品久久婷婷六月丁香| 国产成人精品久久亚洲| 久久综合九色综合网站| 久久精品视频一| 久久综合成人网| 国产农村妇女毛片精品久久| jizzjizz国产精品久久| 亚洲精品高清国产一线久久| 久久天天躁狠狠躁夜夜2020老熟妇| 久久久精品人妻一区二区三区四| 亚洲精品国产第一综合99久久| 国产激情久久久久影院| 久久99免费视频| 精品久久久久久亚洲| 国产精品女同久久久久电影院| 国产亚洲美女精品久久久2020| 久久亚洲精品国产亚洲老地址| 久久久久久A亚洲欧洲AV冫| 久久精品亚洲精品国产欧美| 办公室久久精品| 久久一区二区免费播放| 亚洲国产综合久久天堂 | 亚洲AV无码1区2区久久| 精品久久久中文字幕人妻|