linux内核学习起步

linux内核学习起步

ID:34493870

大小:1.45 MB

页数:29页

时间:2019-03-06

linux内核学习起步_第1页
linux内核学习起步_第2页
linux内核学习起步_第3页
linux内核学习起步_第4页
linux内核学习起步_第5页
资源描述:

《linux内核学习起步》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linux内核学习起步albcamusLastUpdate:2007年12月06日1,编译内核=========================1.0获取内核压缩------------------在http://www.kernel.org/pub/linux/kernel/v2.6/能看到一系列的文件,如ChangeLog-2.6.xx、linux-2.6.xx.tar.{gz

2、bz2}和patch-2.6.xx.{gz

3、bz2},你应该下载linux-2.6.23.tar.bz2这样的压缩包。1.1

4、找一个旧的.config作参考-------------------------------安装内核开发包(以FC8为例,是kernel-devel-2.6.23.1-42.fc8.i686.rpm),则/lib/modules//build目录下会有.config文件。#cdlinux-2.6.24-rc3#cp/lib/modules/2.6.23.1-42.fc8/build/.config.1.2配置、编译和安装-----------------------配置:#makemenuconfig/gconfig/xcon

5、fig/oldconfig/defconfig/allyesconfig/allmodconfigFYI:一般用menuconfig比较多,如果你喜欢GUI风格,也可以选择基于Qt的xconfig或基于Gtk+的gconfig。FYI:可以用O=指定编译生成的文件放在哪个目录.举例来说,如果我的内核源代码目录是/usr/src/linux-2.6.23,编译内核时指定了:makeO=/home/arc/build/linux-2.6.23那么/lib/modules/2.6.23下的`source'和`build

6、'这两个符号链接就分别指向了源代码和目标代码目录:#ls-l/lib/modules/2.6.23/sourcelrwxrwxrwx1rootroot2111-2213:35/lib/modules/2.6.23/source->/usr/src/linux-2.6.23#ls-l/lib/modules/2.6.23/buildlrwxrwxrwx1rootroot2811-2213:35/lib/modules/2.6.23/build->/home/arc/build/linux-2.6.23编译:#makeFYI:V=1/*verbos

7、e模式,把每一部执行的命令都打印出来。*一个小技巧就是,把标准输出重定向到一个文件中,*这样以后查找模块之间的依赖关系就很方便了*/C=1/*需要安装sparse程序,进行严格的静态C语法检查。*一般开发者会通过它来预防BUG*/安装:#makemodules_install#makeinstallFYI:正常情况下makeinstall会根据你机器的配置为你定制initrd文件,并更新grub.conf文件中的内容。但如果重新引导时发现无法启动,注意手工mkinitrd。例如:#mkinitrd-v–preloadlibata.ko–with

8、=ext3/boot/initrd-2.6.24-rc3.img2.6.24-rc3其中—preload指定的模块会在/etc/modprobe.conf之前加载,而--with指定的模块会在这之后加载。1.3文档---------#makehtmldocs//你也可以不用htmldocs指令HTML格式,而指定pdfdocs或//psdocs#makemandocs//为kernelAPI生成man手册#makeinstallmandocs/*将kernelAPI的手册页安装到man程序能找到的*目录中,这样就可以mancopy_from_u

9、ser了*/FYI:执行makehtmldocs/pdfdocs/psdocs之后,在O=指定的目录(如果没使用O=则是源代码目录)的Documentation/DocBook/下,会生成几份很重要的文档:kernelapi:内核开发的API手册usb:USBhost端的API手册gadget:USBdevice端的API手册kernellocking:内核加锁的HOWTO文档kernelhacking:内核开发的一些注意事项FYI:内核源代码目录的Documentation目录:kernel-parameter.txt:内核参数,加在一个gr

10、ubentry的kernel指令后面filesystems/vfs.txt:Linux虚拟文件系统的深入介绍memory-barriers:关于bar

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。