600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Linux源码手机 Linux操作系统源代码详细分析

Linux源码手机 Linux操作系统源代码详细分析

时间:2022-10-04 23:02:23

相关推荐

Linux源码手机 Linux操作系统源代码详细分析

对于内核的进一步讨论将超出本章的既定范围,因此在这个问题上我们到此为止。然而本书中也包括了其他必需的内核代码。在读完第4章和第5章之后,也许你会希望再次仔细研读一下这部分内容。有关这个问题的两个文件是include/linux/module.h(从15529行开始)和/kernel/module.c(从24476行开始)。和sys_create_module(24586行)、sys_init_module(24637行)、sys_delete_module(24860行)和sys_query_module(25148行)四个函数需要特别注意一样,struct module(15581行)也要特别引起注意。这些函数实现了modprobe及insmod、lsmod和rmmod所使用的系统调用,以完成模块的装载、定位和卸载。

内核触发直接回调内核程序的现象看起来很令人奇怪。但是,实际上进行的工作不止于此。例如,modprobe必须实际访问磁盘以搜寻要装载的模块。而且更为重要的一点是,这种方法赋予root对内核模块系统更多的控制能力。这主要是因为root也可以运行modprobe及相关程序。因此,root既可以手工装载、查询、卸载模块,也可以由内核自动完成。

2.3 配置与编译内核

你可能仅仅研读、欣赏而并不修改Linux内核源代码。但是,更普遍的情况是,用户有强烈的愿望去改进内核代码并完成相应的测试,这样我们就需要知道如何重建内核。本节就是要告诉你如何实现这一点,而最终则归结于如何把你所做的修改发行给别人,以使得每个人都能从你的工作中受益。

2.3.1 配置内核

编译内核的第一步就是配置内核,这是增加或者减少对内核特性的支持及修改内核的一些特性的必要步骤。例如,你可以要求内核为自己的声卡指定一个不同的DMA通道。如果内核配置和你的需要相同,那么你可以直接跳过本节,否则请继续阅读以下内容。

为了完成内核的配置,请先切换到root用户,然后转入如下内核源程序目录:

cd /usr/src/linux

接着敲入如下命令组:

make config

make menuconfig

make xconfig

这三条命令都可以用来配置内核,但它们发挥作用的方式各不相同:

* make config—三种方法中最简单也是最枯燥的一种。但是最基本的一点是,它可以适应任何情况。通过为每一个内核支持的特性向用户提问的方式来决定在内核中需要包含哪些特性。对于大多数问题,你只要回答y(yes,把该特性编译进内核中)、m(作为模块编译)或者n(no,根本不对该特性提供支持)。在决定之前用户应该考虑清楚,因为这个过程是不可逆的。如果你在该过程中犯了错误,就只能按Ctrl+C退出。你也可以敲入?以获取帮助。图2-1显示了这种方法在X终端上运行的情况。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。