成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

基于Bootsplash嵌入式Linux啟動畫面定制

開發
在基于linux的嵌入式仿真平臺開發中,終端的美觀和可定制是一個重要的問題。開機時滾動在屏幕上的字符串和單調的penguin圖標,使嵌入式設備仍然脫離不了pc的痕跡,linux控制臺上單調的“白紙黑字”型表現方式可謂大煞風景。改造linux控制臺使之美觀可定制地展示開機信息和logo成為基于嵌入式linux應用的一項重要工作。

在基于linux的嵌入式仿真平臺開發中,終端的美觀和可定制是一個重要的問題。開機時滾動在屏幕上的字符串和單調的penguin圖標,使嵌入式設備仍然脫離不了pc的痕跡,linux控制臺上單調的“白紙黑字”型表現方式可謂大煞風景。改造linux控制臺使之美觀可定制地展示開機信息和logo成為基于嵌入式linux應用的一項重要工作。
   
開源項目bootsplash(http://www.bootsplash.org/)為解決這個問題提供了一個完美的解決方案。Boot-splash通過對內核打補丁來改變linux framebuffer控制臺對圖形顯示的支持。通過用戶空間程序來定制啟動logo、設定控制臺背景和顯隱啟動時的字符信息,甚至可以支持開機畫面的動畫顯示。本文介紹利用splashboot打造啟動畫面的解決方案,涉及內核補丁、用戶空間設置等方面的具體工作。

1 內核補丁和控制工具

1.1 支持bootsplash的內核補丁
  
針對不同的內核版本,bootsplash站點上給出了相應的內核補丁。我們所使用的內核版本為2.4.23,下載并給內核打上補丁:

cd /usr/src/linux
make mrproper
  patch -Np1 -i ../bootsplash-3.0.7-2.4.23.diff
  重新編譯內核:
  make menuconfig
  選上如下的幾個參數:
  Code maturity level options --->
  Prompt for development and/or incomplete code/drivers
  Block devices ---> RAM disk support
  Block devices ---> Initial RAM disk (initrd) support
  Console drivers ---> Video mode selection support
  Console drivers ---> Frame-buffer support --->
  Support for frame buffer devices
  VESA VGA graphics console
  Use splash screen instead of boot logo
  然后編譯內核:
  make dep && make bzImage
  再把生成的內核拷貝到/boot下:
  cp arch/i386/boot/bzImage /boot/linux-bootsplash
  這樣我們得到的新內核bzImage就是支持bootsplash的內核了,剩下的工作就是對bootsplash的定制了。  

1.2 安裝用戶空間程序
   
  下載bootsplash工具,解壓安裝:
  tar –zxf bootsplash-3.0.7.tar.gz
  cd  bootsplash-3.0.7/Utilities
  make
  cp fbresolution fbmngplay fbtruetype splash /sbin/

這樣完成了對用戶空間工具的安裝,其實bootsplash分別利用如下的四個程序:splash程序是將需要在framebuffer下顯示的圖片資源制作成啟動ram盤的工具;fbmngplay讀mng文件,播放動畫;fbtruetype顯示truetype字體;fbresolution檢查分辨率。后面提到的腳本,只是以不同參數來讀取配置文件,調用上面的這幾個程序。

2 開機LOGO的定制

2.1 設置splash屏幕的主題
   
前面安裝好的splash用戶空間程序中有一個程序splash,它需要一個配置文件來指明使用哪個圖片、要不要隱藏文本信息的輸出等。可以看出“theme”就是splash工具需要的配置文件、圖片和其他所需要的文件的集合。有很多已經準備好的theme可供挑選,我們也可以定制theme。為了方便起見,我們下載theme-Linux.tar.bz2并以它為theme。
   
建立目錄/etc/bootsplash/themes,解壓Theme- Linux.tar.bz2到這個目錄下,現在的目錄結構應該是:
/etc/bootsplash/themes/Linux
   
讀者朋友可以看看該目錄下的bootsplash-1024x768.cfg來觀察配置文件的格式。這個簡單的文件包含的選項不多,事實上它只是清楚地表明應該顯示哪幅圖片、控制臺顯示文本的顏色和背景色以及文本信息輸出的位置區域。另外,不要忘了它還可以分別指定verbose和silent模式下顯示文件的位置。Silent模式禁止顯示啟動信息,代之以一個可選的進度條(這需要關于A外包腳本的更多設置)。基于這個配置文件,你可以自己修改以顯示自己喜歡的圖片和采用自己喜歡的模式。

2.2 利用splash小工具安裝splash主題到initrd
   
在系統啟動的早期階段,內核還不能讀寫硬盤。這個階段要顯示圖片,那么圖片放在什么地方那?答案是把圖片寫到ramdisk里,這樣在啟動的時候才能讀到,因為這時候還沒有加載分區呢。當然不用擔心initrd的制作,splash小工具能輕松搞定。Splash小工具能根據基于你選擇的配置文件(theme)來自動產生一個initrd。所要做的就是執行如下命令:
   
   splash -s -f /etc/bootsplash/themes/arch/config /arch-1024-boot.cfg  /boot/initrd.splash
  生成的initrd.splash就是一個新的initrd。在GRUB或LILO中加入它就可以了。
  按如下的方法修改GRUB或LILO:
  在GRUB中加入或修改下面的行:
  kernel (hd0,3)/boot/vmlinuz−2.4.21−melenas root=/dev/hda4 vga=791 splash=silent
  initrd (hd0,3)/boot/initrd.splash
  在LILO中加入或修改下面的行:
  vga=791
  initrd=/boot/initrd.splash
  append=splash=silent
  來看看這幾行的意義:
  vga=791: boot splash 將在1024x768 分辨率和65000 色 (16 位色)下顯示。Framebuffer的設定要根據我們所使用的theme的分辨率和顏色深度來選擇。
  splash=silent: 在silent模式下顯示boot splash. 如果你希望用vebose模式,只需刪除此行即可。Verbose模式是缺省模式。
  initrd=/boot/initrd.splash: 這行將initrd.splash調入啟動ram盤(圖片存于其中)。
  
更新LILO或GRUB后,就可以看到精美的啟動畫面。

【編輯推薦】

  1. 讓Perl成為你的嵌入式開發工具
  2. 嵌入式設備上的 Linux 系統開發
  3. 幾種Linux下嵌入式開發環境的簡單介紹
責任編輯:張燕妮 來源: cnemb.com
相關推薦

2018-02-09 10:20:47

2009-02-17 15:07:47

嵌入式Linux啟動信息注釋

2011-01-14 13:13:23

嵌入式Linux開發

2009-12-17 10:33:05

嵌入式Linux

2009-12-16 15:41:40

嵌入式Linux入門

2009-12-09 10:12:28

嵌入式Linux

2009-05-27 19:28:20

Linux磁場設計

2022-05-04 17:50:51

Linux

2010-09-25 15:05:49

LINUXJVM

2022-01-04 22:19:38

Linux開發嵌入式

2009-12-24 17:21:38

嵌入式Linux

2022-01-03 23:33:40

Linux組件系統

2021-12-19 22:34:45

Linux容器系統

2009-12-23 16:52:26

Linux自學嵌入式

2009-12-09 10:50:53

嵌入式Linux

2009-12-23 11:27:24

2014-09-02 09:45:57

Linux

2009-04-11 15:22:24

Linux 2.6內核應用

2020-06-15 07:00:00

Linux嵌入式系統

2017-11-27 15:40:28

Linux內核崩潰錯誤跟蹤
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩欧美专区 | 久久se精品一区精品二区 | 国产精品一区二区在线播放 | 在线一区视频 | 国产精品久久久久久福利一牛影视 | 99久久久无码国产精品 | 欧美国产精品 | 三级av在线 | 色婷婷亚洲一区二区三区 | 国产精品久久视频 | 蜜桃视频在线观看www社区 | 91网站在线观看视频 | 韩国精品在线观看 | 99热国产在线播放 | 日韩欧美精品一区 | xxxxx免费视频 | 久久久久国产精品www | 亚洲久草 | av在线免费观看网址 | 日韩一区二区在线视频 | 久久综合伊人一区二区三 | 国产中文字幕网 | 欧美中文字幕在线观看 | 国产精品久久久久一区二区三区 | 国产精品久久久久久久久久 | 亚洲国产精品久久久 | 成人国产精品久久久 | 中文字幕1区2区 | 蜜桃视频在线观看免费视频网站www | 天天干视频 | 色女人天堂 | 久久y | 亚洲码欧美码一区二区三区 | 国产精品成人一区二区 | 国产亚洲精品久久午夜玫瑰园 | 国产精品久久久久久婷婷天堂 | 成人影视网 | 精品国产一区二区三区日日嗨 | xxx.在线观看 | 成人欧美一区二区三区黑人孕妇 | 美女久久久久久久 |