|
BabyLinux制作过程详解(二)(5) Amateur Radio support IrDA (infrared) support ISDN subsystem Old CD-ROM drivers (not SCSI,not IDE) Input core support 全部选择N.
接下来的Charcter devices是很重要的一项,他和Bloack devices一样重要,我将重点讲述. 除了Virtual terminal和Support for console on terminal两项,其他全选N.
Virtual terminal 即虚拟终端,这是一般linux必备选项.否则你的linux启动后,在屏幕看不到任何东西.另外还负责键盘输入信息等等.只有在某些嵌入式linux应用场合才会不要这个选项,因为这些linux通常都不用操作.
Support for console on terminal 在虚拟终端上的控制台.他支持在终端上各种信息的输出,这也是必备的.
接下来的几个大项: Multimedia devices Crypto Hardware support 全部选择N.
再接下来的那部分File sytems可是重头戏喔. 这部分不用我太罗嗦了吧,自己需要支持什么就选什么. 但是其中有三个是你必需选的: /proc file system support 缺了他,很多命令和软件就不能运行. Second extended fs support BabyLinux的基本文件系统. ISO 9660 CDROM filesytem support 除非你不想用光盘. 另外,诸如磁盘限额(Quota support),Reiserfs的DEBUG模式(Enable reiserfs debug mode) 等就不用编译进去了.这些东西意义不大,确要无端的增大内核大小.请牢记一点:编译出来的内核大小不要超过900K.
Tip:是不是看的很累啊,我写得更累,别急,内核配置部分马上要好了.
最后一个Console drivers 这是支持linux在字符模式下高分辨率显示的内核模块.前面三个全部选择Y, Frame-buffer support按钮是灰色的不能选,别急,回到第一个大选项: Code maturity level options 选择Y,就可以激活这个按钮了.
下面几个选项需要选择Y: Support for framebuffer devices VESA VGA graphics console 你也可以选择其他的显卡驱动,比如nVidia的,但是VESA和VGA是通用性最好的,只要不是几十年前的黑白显卡(我只听说过,没见过),都兼容VESA和VGA,因此,为了制作好的BabyLinux的通用性,请选择这个驱动.
Support only 8 pixels wide fonts 这个一定要选,否当你给内核传递vga=788参数,让linux在字符界面下高分辨率显示的时候,系统会因为找不到合适的小字体而返回到低分辨率模式.
好了!所有内核的配置工作到这里就全部完成了,剩下的几个大项全部选N就行了. 保存后退出,配置程序会自动生成一个隐藏的配置文件.config
下面是我配置好的.config文件内容.如果你懒的自己去配置,那么直接把这个.config拷贝到你的源代码目录下就能直接用了.(已经去掉了#开头的注释行)
CONFIG_X86=y CONFIG_UID16=y CONFIG_EXPERIMENTAL=y CONFIG_M586=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_L1_CACHE_SHIFT=5
|