- 在线时间
- 63 小时
- 最后登录
- 2019-5-3
- 注册时间
- 2004-5-10
- 听众数
- 443
- 收听数
- 0
- 能力
- -250 分
- 体力
- 10122 点
- 威望
- -12 点
- 阅读权限
- 150
- 积分
- -516
- 相册
- 6
- 日志
- 10
- 记录
- 10
- 帖子
- 2003
- 主题
- 1253
- 精华
- 43
- 分享
- 8
- 好友
- 1292

复兴中华数学头子
TA的每日心情 | 开心 2011-9-26 17:31 |
|---|
签到天数: 3 天 [LV.2]偶尔看看I
- 自我介绍
- 数学中国网站(www.madio.cn)是目前中国最大的数学建模交流社区
群组: 越狱吧 群组: 湖南工业大学数学建模同盟会 群组: 四川农业大学数学建模协会 群组: 重庆交通大学数学建模协会 群组: 中国矿业大学数学建模协会 |
2#
发表于 2004-9-27 14:18
|只看该作者
|
|邮箱已经成功绑定
内核开发和调试的启动时参数
+ T2 r& p3 n' y9 `9 \1 ], @* n4 r: h) B8 Y0 [# r3 l8 Y! i& m
这些参数主要用在内核的开发和调试上,如果你不进行类似的工作,你可以简单的跳过本小节。
; @2 W6 v7 e% z4 R1、debug
6 P, X8 h! J2 Z& i6 F, |: D: glinux的日志级别比较多(详细信息可以参看linux/kernel.h),一般地,日志的守护进程klogd只把比DEBUG级别高的日志写进磁盘;如果使用该选项,klogd也把内核的DEBUG信息写进日志。 5 V0 I0 {2 n! B" W% b, I& x4 n, a
2、profile=N
: T, o% H/ d' f( {. k在做内核开发的时候,如果想清楚的知道内核在什么地方耗用了多少CPU的时钟周期,可以使用核心的分析函数设置变量prof_shift为非0值,有两种方式可以实现:一种是在编译时指定,另一种就是通过“profile=”来指定; 他给出了一个相当于最小单位--即时钟周期;系统在执行内核代码的时候, profile[address >> prof_shift]的值就会累加,你也可以从 /proc/profile得到关于它的一些信息。
* d5 |8 e+ s& F K8 y( I3、swap=N1,N2,N3,N4,N5,N6,N7,N8 ) _* \7 P. h/ H6 O( u( m1 ~. G
设置内核交换算法的八个参数:max_page_age, page_advance, page_decline,page_initial_age, age_cluster_fract, age_cluster_min, pageout_weight,bufferout_weight。 9 H3 w; r, @; H, }' |1 _
4、buff=N1,N2,N3,N4,N5,N6 5 U2 A3 N S- U( w. W; P" w
设置内核缓冲内存管理的六个参数:max_buff_age, buff_advance, buff_decline,buff_initial_age, bufferout_weight, buffermem_grace。
" m6 O" m* a3 ]9 | s9 c+ @
4 y/ S: H1 [! C" t使用 RAMDISK的参数 6 b5 F- u* j1 W4 T
9 a, N' \# r4 J4 L* Y
(仅当内核配置并编译了 CONFIG_BLK_DEV_RAM)。一般的来说,使用ramdisk并不是一件好事,系统自己会更加有效的使用可用的内存;但是,在启动或者制作启动盘时,使用ramdisk可以很方便的装载软盘等设备上的映象(尤其是安装程序、启动过程中),因为在正真使用物理磁盘之前,必须要加载一些必要的模块,比如文件系统模块,scsi驱动等(可以参见我的initrd-x.x.x.img文件分析-制作安装程序不支持的根文件系统)。
, C! m* _( P' [$ f/ c早期的ramdisk(比如1.3.48的核心)是静态分配的,必须以ramdisk=N来指定ramdisk的大小;现在ramdisk可以动态增加。一共有四个参数,两个布尔型,两个整形。
# [: }, v. i4 U+ o+ g( W4 E1、load_ramdisk=N 6 n) F7 v9 s3 d2 M5 L; z$ D4 s
如果N=1,就加载ramdisk;如果N=0,就不加载ramdisk;默认值为0。
9 u' s4 P/ i. O: M% M2 N2、prompt_ramdisk=N
4 @! P9 w3 E A7 eN=1,提示插入软盘;N=0,不提示插入软盘;默认为1。 * l# [; ]2 c, h2 E, G5 u
3、ramdisk_size=N或者ramdisk=N
1 H2 B$ O; @3 U; c7 G设定ramdisk的最大值为N KB,默认为4096KB。 + ~7 S; y* A z" [8 D, L& N
4、ramdisk_start=N
4 B: j$ f' E; s* Z8 l; E2 J设置ramdisk的开始块号为N,当ramdisk有内核的映象文件是需要这个参数。
3 |: U+ P" U% w" r5、noinitrd
|* k4 U/ u5 v! v' m(仅当内核配置了选项 CONFIG_BLK_DEV_RAM和CONFIG_BLK_DEV_INITRD)现在的内核都可以支持initrd了,引导进程首先装载内核和一个初始化的ramdisk,然后内核将initrd转换成普通的ramdisk,也就是读写模式的根文件系统设备。然后linuxrc执行,然后装载真正的根文件系统,之后ramdisk被卸载,最后执行启动序列,比如/sbin/init。 # d9 k# G- ]0 W7 J; q
选项noinitrd告诉内核不执行上面的步骤,即使内核编译了initrd,而是把initrd的数据写到 /dev/initrd,只是这是一个一次性的设备。 |
|