更换Linux启动logo的总结

  • 参考过如下资料,对此非常感谢:

    • https://www.linuxidc.com/Linux/2010-12/30224.htm
    • https://blog.csdn.net/gengshenghong/article/details/8648577

下面这两篇博客,讲述的很深入:

  • http://blog.csdn.net/luoshengyang/article/details/7691321/

Linux logo 显示流程

  • https://www.cnblogs.com/pengdonglin137/p/12179500.html

  • 使用的Linux版本

      采用的Linux 内核版本为:4.1.15版本
    
  • 嵌入式Linux显示原理

    • 嵌入式Linux是直接在FrameBuffer的基础上。直接显示一个ppm格式的图象。
    • 需要ppm图像的数据格式是 ASCII格式的,如果你使用其他格式,在编译内核的时候,会提示需要一个 ASCII数据格式的文件。
    • 它 kernel/drivers/video/fbcon.c中的fbcon_show_logo()完成,最大颜色支持224色而不常见的255色。
    • 默认的logo文件是 drivers/video/logo/logo_linux_clut224.ppm.
  • PPM文件的制作

    • PPM格式的文件是没有压缩的,相对比较大,但是由于图片格式简单,一般作为图片处理的中间文件(不会丢失文件信息),或者作为简单的图片格式保存。
    • 制作方式有两种:
      1.在Linux的平台下进行制作,这样的制作方法可以在其他博客查找的到,有很多博客都有描述。因为我使用并没有在Linux 平台下进行,因此就不在这里记录这种方法。
      2.在window是平台下进行制作:
      a.首先下载GIMP软件进行安装,这是一个很强大的图片处理软件。
      b.将要制作logo的图片使用 GIMP打开,本次使用的版本是2.10.8版本
      c.选择: 图像->模式->索引 ,将 最大颜色数量 从 255改成 224.
      d.可以通过: 图像->缩放 ,来设置照片的 分辨率来调整PPM文件的大小。PPM文件的存储大小也会变化,暂时只是找到这一种方式来修改PPM文件的存储大小。
      e.然后导出PPM文件(见有的说另存为 这种方式也是可以的):文件->导出为… :选择PPM文件格式,数据格式选择 ASCII,修改文件名为 logo_linux_clut224.ppm。
      f.最后,将制作的 logo_linux_clut224.ppm.ppm文件,替换Linux下的PPM文件,删除原本的logo_linux_clut224.ppm.c 和 logo_linux_clut224.ppm.o文件, 再次编译内核,理论上再次打开显示的就是自己制作的logo了。
  • 踩坑记录:

    • 制作的PPM文件需要注意文件大小问题,文件太大会导致logo不显示。
    • 目前来看,1.8M的图片可以显示。
    • 制作的PPM的分辨率不要大于 RGB的分辨率。
    • 确认 bootup support 的那三个选项是选中的。表明linux是支持logo显示的。
    • windows上安装的gimp有区别,我一张22k的图片,经过它一转,直接到了2.8M,后面没办法裁剪了大小一部分,才到1.8M。其它减小的办法还没有找到
  • 去除显示光标:

    • 在内核的当前目录进入到drivers/video/console/fbcon.c 文件
    • 将static void fb_flashcursor(void *private) 和 static void fbcon_cursor(struct vc_data *vc, int mode) 里的内容注释掉,使之变成空函数 。

更换Linux启动logo的总结相关推荐

  1. 玩转mini2440开发板之【制作和修改linux启动logo图片】

    今天玩一玩linux启动logo图片的修改和制作. 对于我手头的mini2440开发板,其实厂家友善之臂原本是有配一个转换工具的,用起来会比较简单.但是,它那个工具仅针对32位的Fedora 9系统开 ...

  2. linux logo程序,生成linux启动logo脚本

    一.生成linux启动logo脚本 #!/bin/sh pngtopnm logo.png | ppmquant -fs 224 | pnmtoplainpnm > logo_linux_clu ...

  3. linux logo持续时间,LINUX 启动logo 总结

    LINUX 启动logo 总结 近在imx6上需要调试linux下启动logo.其实linux启动logo 以前没少调,但这次弄了好久,也发现以前调过的没有积累. 之所以这次logo弄了很久是因为fs ...

  4. 修改 linux启动logo

    修改目标:用自定义的ppm图片替代 /drivers/video/logo/logo_linux_clut224.ppm 同时删除 logo_linux_clut224.c logo_linux_cl ...

  5. linux启动logo修改 bootlogo

    改目标:用自定义的ppm图片替代/drivers/video/logo/logo_linux_clut224.ppm 同时删除 logo_linux_clut224.c logo_linux_clut ...

  6. zynq嵌入式linux显示logo,如何定制嵌入式linux 启动logo(小企鹅)

    我的嵌入式ARM-Linux是基于2.4.2内核,支持framebuffer,所以我想用工具软件 fblogo(0.5.2版本)将启动小企鹅logo改为自己的logo.png.现在遇到以下几个问 题, ...

  7. 制作.ppm格式Linux内核启动logo

    在做的产品中,采用默认的小企鹅做logo肯定是不行的,所以一定要替换个像样的企业logo图片! 以前做过Linux启动Logo,时间太久,给忘了,所以再从新研究下. 经过在网上的搜索,和实际验证,制作 ...

  8. linux系统中怎样抓logo,linux启动成功修改logo

     1:获得.png图片,可以截图获得,千万注意图片不能大于lcd屏幕,最好小点,大了有时显示不了.我几次没有显示就是图片原因. 2 使用Linux命令将图片转换为ppm图片:也可以使用logoma ...

  9. 嵌入式Linux kernel LOGO的更换方法

    http://blog.csdn.net/dong_zhihong/article/details/8651119 嵌入式Linux kernel LOGO的更换方法 标签: LINUX 2013-0 ...

最新文章

  1. 应用层网关调研与基础测试
  2. 新能源汽车会是一阵风吗
  3. 深入全面探究有未经处理的异常: 0xC00000FD: Stack overflow(栈溢出)问题!
  4. Spring Boot 应用如何提高服务吞吐量?
  5. 云未来、新可能 - 绿色、无处不在、可信的计算
  6. WebApplicationContext初始化
  7. linux下载安装fastdfs和fastdfs与nginx整合、springboot访问fastdfs
  8. leetcode43. 字符串相乘
  9. 华为麦芒5云空间升级_云+AI+5G 华为云联手中软国际引爆线下门店智能化升级
  10. 代码意识流——花朵数问题(一)
  11. 其实,我只想安静的写写代码...
  12. python全栈测试开发_实践docker化的Python全栈自动化测试开源解决方案
  13. Android平台中实现对XML的三种解析方式
  14. PoisonApple:针对macOS的持久化工具
  15. 直接加QQ好友的链接或会话的方法
  16. 阿里云远程桌面不能复制粘贴到本地解决办法
  17. 小学计算机课老师能教什么,小学信息技术试讲教案怎么写?抽到理论课怎么讲?...
  18. CodeForces - 558DGuess Your Way Out! II(map 扫描线)
  19. ZROI 2018 ZYB和售货机(goods)
  20. Python - 装机系列2 Ubuntu(云)

热门文章

  1. 跟随小米等手机厂商的 IoT 步伐,OPPO 推出子品牌“智美心品”...
  2. 《菅销在移动互联网时代》智慧树知到章节测试答案
  3. jquery post html字符串,jquery的post请求
  4. 大型专利公司岗位设计,工作内容及其人才要求标准
  5. 关于jQurey的分页createPage
  6. Python格式化输出之format
  7. C语言揭秘:01 准备工作
  8. The Structure of Positive Interpersonal Relations in Small Groups 1
  9. Android Q 存储新特性适配脑壳疼?指南来了!
  10. 蔚来汽车提前批智能座舱C++开发笔试复盘