内核编译按照硬件检查选项

虽然make localmodconfig 很好

但是lsmod的模块并不是我们都需要的,我的就有kvm模块和snd_usb_audio模块。

所以要去掉usb声卡对应的模块。


关于make mrproper 我倾向于重新编译的话一定要运行一遍。

sudo cp .config /home/config.bak

sudo make mrproper

sudo cp /home/config.bak .config

这样就能节省很多时间。


1.如果不需要拨号上网(pppoe,电信,铁通等的上网方式),就把EXPERIMENTAL前的勾去>掉。
如果需要pppoe,现去掉EXPERIMENTAL前的勾,然后保存并推出;然后重启xconfig,勾上EXPERIMENTAL,然后勾上pppoe(这样做是为了只选上pppoe,而去掉其他development and/or incomplete code/drivers)
2.打开hardinfo,查看你的cpu的family,然后在processor family里把你的cpu的family选>上。
3.如果没有4G内存,勾上NOHIGHMEM;
如果想加快gui程序响应,勾上HZ_1000
4.如果不是上个世纪的硬件,去掉APM


usb键盘鼠标需要CONFIG_HID  CONFIG_USB_HID

CONFIG_INPUT_KEYBOARD=y

上面这一个键盘有关。

CONFIG_INPUT_MOUSE=y   CONFIG_INPUT_MOUSEDEV=y

上面两个和鼠标有关。


CONFIG_HID HID(human interface device)总线及通用HID层.要使用HID设备就必须开启.[提示]PS/2接口的鼠标和键盘不是HID设备,USB或蓝牙接口的才是HID设备.

声卡驱动

一般是pci声卡,可以用lspci看是否有声卡,如果有。

则把usb声卡 isa声卡都去掉。

网络驱动

CONFIG_ISDN 选n

CONFIG_PHYLIB数据链路层芯片简称为MAC控制器,物理层芯片简称之为PHY,通常的网卡把MAC和PHY的功能做到了一颗芯片中,但也有一些仅含PHY的"软网卡".此选项就是对这些"软网卡"的支持.请根据实际情况选择其下的子项.

常见的硬网卡型号:
Realtek(瑞昱)的RTL81**系列都为硬网卡,例如:RTL8111B、RTL8101E、RTL8100C、RTL8111E等。
Marvell(马威)的88E8053。
VIA(威盛)的VT6105。
常见的软网卡型号:
Realtek(瑞昱)的RTL8201CL。
Marvell(马威)的88E1116。
VIA(威盛)的VT6103L。
VITESSE(威特士)的VSC8201RX

文件系统CONFIG_NTFS_FS选项no set 为什么还能访问windows分区?因为有ntfs-3g

CONFIG_FUSE_FSFUSE允许在用户空间实现一个全功能的文件系统,还有一个与之对应的libfuse2库和相关工具.详见"Documentation/filesystems/fuse.txt"文档.如果你打算开发一个自己的文件系统或者使用一个基于FUSE的文件系统(例如NTFS-3G或ZFS-FUSE),可以选"Y".

显卡:

CONFIG_AGP 图形界面的需要选Y,非图形界面的选N

CONFIG_DRM 图形界面的需要选Y,非图形界面的选N

CONFIG_FB  图形界面的需要选Y,非图形界面的选N

CONFIG_DRM_RADEON a卡开源驱动,闭源驱动的选N。

u盘:

CONFIG_USB_STORAGEUSB存储设备(U盘,USB硬盘,USB软盘,USB光盘,USB磁带,记忆棒,数码相机,读卡器等等).

该选项依赖于CONFIG_SCSI和CONFIG_BLK_DEV_SD选项.选"Y",除非你确实知道自己在干什么.




WARNING: modpost: Found 1 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
  CC      /mnt/hgfs/share/work/lcmxo2-2000hc/cpld_lcmxo2-2000hc.mod.o
  LD [M]  /mnt/hgfs/share/work/lcmxo2-2000hc/cpld_lcmxo2-2000hc.ko
make[2]: warning:  Clock skew detected.  Your build may be incomplete.
make[1]: Leaving directory `/home/thy/ltib/rpm/BUILD/linux-2.6.35.3'

解决办法:
执行:
$ make CONFIG_DEBUG_SECTION_MISMATCH=y

你可能感兴趣的:(源代码,分析,内核编译)