本文转载自:http://blog.csdn.net/hunanchenxingyu/article/details/40992947

1-1、制作logo的方法:
 首先选择一个自己喜欢的图片,png 或是bmp格式,这里选用这两个格式作为说明,
  然后将该图片传入到装有Linux PC比如(ubuntu),按照以下顺序你就可以制作一个你喜欢logo
  你必须安装以下的工具(pngtopnm,pnmquant,pnmtoplainpnm)
   ubuntu中这样安装:     apt-get install netpbm
$ pngtopnm linuxlogo.png > linuxlogo.pnm 
$ pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm 
$ pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

或者

$bmptoppm pic.bmp > temp1.ppm //生成ppm
$ppmquant 224 temp1.ppm > temp2.ppm //转换成224色彩
$pnmnoraw temp2.ppm > linuxlogo224.ppm //转换成ascii格局

如许您制作的logo就已经胜利了,将linuxlogo224.ppm 
拷贝到/drivers/video/logo白件夹中的依据您的平台详细利用的哪个logo进行命名,
这里使用的是 logo_linux_clut224.ppm 那么替换这个即可,这里注意图片的大小对kernel image大小的影响。
然后编译kernel即可。
  
1-2、配置kernel的logo选项
 在内核路径下执行make menuconfig(make xconfig)
 a、选择虚拟控制台为控制台显示驱动做准备
   Device Drivers  --->Character devices  ---> Virtual terminal
   [*]   Support for console on virtual terminal
 b、选择虚拟控制台显示驱动
   Device Drivers  --->Graphics support  --->下有这个选项Console display driver support  --->
   根据你的硬件选择由Framebuffer还是VGA
      [*] Framebuffer Console support或者
      [*] VGA text console
 c、Device Drivers  --->Graphics support  --->
   <*> Support for frame buffer devices  
     <*> MXC Framebuffer support下选择是VGA还是TVOUT
            [*] tvout CH7024 on MX27 //TVOUT
            [*]support VGA daughter //VGA
  当然以上的配置选项,因平台而异会有些小的差别。
  做好以上两个步骤,你就可以重新编译内核,将其烧到开发板,接VGA或者TVOUT显示。
  这样你可以看到你自己制作的logo,你可以发现在logo的左下角有一个闪动的光标,接下来我们说说如何将这个光标去除。

2-1、如何将开机logo中的光标去除
 在内核的当前目录进入到drivers/video/console/fbcon.c文件
 将static void fb_flashcursor(void *private)和static void fbcon_cursor(struct vc_data *vc, int mode)制成空函数如下

static void fb_flashcursor(void *private)

{

.................

}

static void fb_flashcursor(void *private)

{

#if 0

.................

#endif

}

另外:

static void fbcon_cursor(struct vc_data *vc, int mode)
{ 
......................

}

static void fbcon_cursor(struct vc_data *vc, int mode)
{ 
#if 0

#endif

}

2-2、第二种方式:

drivers/video/console/Makefile
#obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o softcursor.o
obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o
 
编译会遇到soft_cursor没有定义的问题,注释掉代码:
drivers/video/console/bitblit.c
//ABING
//      if (err)
//              soft_cursor(info, &cursor);
 
光标成功禁止。

*****************************************************************************

可以肯定的是这两种方法都没有深究下去,对于第一种如果我的logo是一个屏分辨率的logo那么启动到logo时就是黑屏,屏显示被翻页了,并且在进入到filesystem后仍然显示鼠标,第二种问题更多,需要修改的地方很多,一般都与 soft_cursor()有关;

那么如何实现呢?唯有从源头查起,继续。。。。。

修改linux内核的启动logo和禁用启动光标【转】的更多相关文章

  1. 修改linux内核启动顺序

    修改linux内核启动顺序 # 修改内核启动顺序x86_64 centos:cat /boot/grub2/grub.cfg |grep "menuentry" grub2-set ...

  2. 修改Linux内核参数提高Nginx服务器并发性能

    当linux下Nginx达到并发数很高,TCP TIME_WAIT套接字数量经常达到两.三万,这样服务器很容易被拖死.事实上,我们可以简单的通过修改Linux内核参数,可以减少Nginx服务器 的TI ...

  3. 修改Linux内核参数提高Nginx服务器在高的时候的性能

    并发 Linux下高并发的Nginx服务器,当TCP TIME_WAIT套接字数量经常达到两.三万,服务器很容易被拖死.通过修改Linux内核参数,可以减少Nginx服务器的TIME_WAIT套接字数 ...

  4. 修改linux内核启动logo及显示位置

    转载于:http://blog.chinaunix.net/uid-28458801-id-3484269.html 在此基础上我又添加了我的一些不同的地方,仅供参考 内核版本: 2.6.35.3 l ...

  5. 修改linux内核开机logo并居中全屏显示【转】

    本文转载自:http://blog.csdn.net/xuezhimeng2010/article/details/49299781 1.准备图片  使用ubuntu自带的绘图软件GIMP是最为快捷的 ...

  6. 修改Linux内核参数,减少TCP连接中的TIME-WAIT

    一台服务器CPU和内存资源额定有限的情况下,如何提高服务器的性能是作为系统运维的重要工作.要提高Linux系统下的负载能力,当网站发展起来之后,web连接数过多的问题就会日益明显.在节省成本的情况下, ...

  7. Linux 内核超时导致虚拟机无法正常启动

    问题描述 当 Linux 虚拟机启动时,通过串口输出或者启动日志, 观察到超时的报错.导致虚拟机无法正常启动和连接. 问题分析 常见的超时报错范例如下: 复制 INFO: task swapper:1 ...

  8. 修改linux内核加载顺序

    修改内核启动顺序:1.查看当前系统所有的内核# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/gr ...

  9. linux内核中默认logo的具体位置

    /driver/logo/... 以下这个目录下对应的是logo的设置

随机推荐

  1. xcode制作越狱后ipa安装文件

    正常情况下发布测试版给用户需要问到对方设备ID并添加到开发者证书里去感觉有点麻烦,如果是已越狱过的机器可以使用xcode制作ipa文件,并直接用itunes同步进去,这样方便多了. 将运行目标选为iO ...

  2. Spring Cloud (2) 服务消费者-基础

    LoadBalancerClient 使用Spring Cloud提供的负载均衡器客户端来实现服务的消费. 首先创建一个服务消费者工程,命名为com.david.consumer,并在pom.xml中 ...

  3. elasticearch 归并策略

    归并线程配置 segment 归并的过程,需要先读取 segment,归并计算,再写一遍 segment,最后还要保证刷到磁盘.可以说,这是一个非常消耗磁盘 IO 和 CPU 的任务.所以,ES 提供 ...

  4. Vue蚂蜂窝Vue-cli+webpack做的

    先来看下效果 项目地址  喜欢star一下哦

  5. javascript中计算点击多少次

    点击事件:onclick <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  6. 安卓代码迁移:ActionBarActivity: cannot be resolved to a type

    参考链接:http://stackoverflow.com/questions/18830736/actionbaractivity-cannot-be-resolved-to-a-type in e ...

  7. MVC POST请求后执行javascript代码

    [HttpPost] public ActionResult PostTest() { //你的业务代码 //...... //要执行的js string js = "window.loca ...

  8. 去掉二级页面 tabs 菜单, 修改返回按钮

    imports: [ /*引入的模块 依赖的模块*/ BrowserModule, ComponentsModule, IonicModule.forRoot(MyApp,{ tabsHideOnSu ...

  9. java操作Excel的poi的字体设置

    package com.java.poi; import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.use ...

  10. HLPP算法 一种高效的网络最大流算法

    #include <algorithm> #include <cstdio> #include <cctype> #include <queue> #d ...