Chinaunix

标题: [火星]刚刚知道有些时候不用编译内核的…… [打印本页]

作者: 995636    时间: 2008-03-02 20:09
标题: [火星]刚刚知道有些时候不用编译内核的……
一般编译内核对大家而言有两种作用:
1 添加一些参数,使系统(启动时)能多支持一些功能。
2 裁减不必要的一些驱动。

如果是第一种需求,其实不用重新编译内核的。

例:
如果要求命令行界面支持高分辩率(比如100x37),一般fb默认是不支持的。用vidcontrol -i mode就可以看出。以前我都用重新编译内核的办法来解决这个问题(加入options vesa 和 options SC_PIXEL_MODE),实际上大可不必。这些东西实际上只是没有编进内核,但模块还是有的,用kldload vesa就可以加载这个模块了。如果想让其开机就运行,可以把相关内容vesa_load="YES"加入/boot/loader.conf,相关格式可以看/boot/default/loader.conf。

欢迎大家指正。

[ 本帖最后由 995636 于 2008-3-2 20:11 编辑 ]
作者: shzxxx    时间: 2008-03-02 20:14
受用 顶了
作者: bestwc    时间: 2008-03-03 08:48
kld可加载内核模块确实很方便,你可以将一些代码编译成可加载的模块再使用KLD加载入内核。

但另一方面这样做也有一些弊端,比如ipfw可以用kld加载,但缺少了编译内核加载方式中的DUMMYNET,对于有些人这个功能是很重要的。

具体情况具体分析吧。
作者: 995636    时间: 2008-03-03 12:37
原帖由 bestwc 于 2008-3-3 08:48 发表
kld可加载内核模块确实很方便,你可以将一些代码编译成可加载的模块再使用KLD加载入内核。

但另一方面这样做也有一些弊端,比如ipfw可以用kld加载,但缺少了编译内核加载方式中的DUMMYNET,对于有些人这个功 ...


嗯。我举的例子里,如果没有重新编译内核,SC_PIXEL_MODE的效果是出不来的。但主要功能还是有的。这种差异有点类似pkg_add 和ports安装的差异。
作者: 盛世唐朝    时间: 2008-03-03 19:20
恩不错
顶一下




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2