免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1310 | 回复: 0
打印 上一主题 下一主题

linux内核源代码阅读的步骤? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-27 11:22 |只看该作者 |倒序浏览

                直接阅读源代码特别是比较大的程序应该遵循一定的步骤进行
第一了解程序的功能框架
第二使用源代码阅读器source insight 按照程序执行流程,入口点,实参,形参逐次阅读、
linux内核的源码结构:
arch    ---
            不同的处理器类型
                    arm
                         boot     
                                    linux/arch/arm/boot/compressed/head.S                                        head.s 自引导的代码 解压内核
                         kernel   head.s       Kernel startup code
                         lib
                         match-不同的板子  针对不同类型的板子进行的初始化代码
                              match-3sc2410
                                          gpio.c                                          irq.c  clock.c cpu.c devs.c
block
crypto
documents                  文档
drivers                    驱动代码
fs                         文件系统
include                    内核头文件
init          main.c  内核初始化 包含start-kernel(),restinit(),init()等初始化函数
ipc                             进程通信的程序
kernle                          内核
lib                             库函数   
mm                              关于内存处理
net                             关于网络
scripts                         脚本用来编译内核的
security                        安全  
sound                           声音
usr                             用户
这样可以按照从arch/arm/boot head.s ->   arch/arm/kernle/head.s -> init/main.c startkernel() 这样的顺寻读
第三可以从功能模块读起,单独的模块很多驱动模块,文件模块,网络模块。
最好先阅读一些中文的资料对内核的工作有所了解以后再读内核,比如要阅读驱动模块,最好是先把驱动的有关知识学一下,linux内核是怎么管理设备的,怎么写驱动,怎么注册设备,有了大概的了解以后,找一个简单驱动程序入手。
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/94887/showart_1911870.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP