• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

准备好开始读LINUX 内核了吗?

发布: 2007-7-04 12:06 | 作者: admin | 来源:  网友评论 | 查看: 9次 | 进入软件测试论坛讨论

领测软件测试网

linux 读核装备

MILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">进入C代码部分

 

第一部分 准备

1。内核代码结构

       核心从/arch/kernel/head.s跳转出来后,进如了c语言广阔的海洋。在浩如烟海的代码中有很多东西是读核心可以放弃的。对于大部分windows菜鸟来说,还是使用source-insight来读代码吧,不过如果把所有的代码都加到source-insight里去(180M180M),速度太慢。在建立工程前先瘦身。

    1,NET,(你想做一个过时的黑客吗?如果不想放弃吧)

 

    2,sound,2。6的核心居然有这么个单独的目录,我都没有仔细看就把它放弃了。

 

    3,drivers,如果想知道驱动怎么写,可以看看,linux device driver 2nd Edition,网上有英文版的,书店有中文版。没有必要乍在这里看成千上万行程序代码。

 

    4,fs,里面有太多流浪狗没有见过的文件系统,最多留下ext2ext3就可以了。当然fs/*.c还是要留下的。

 

    5,如果是完整的代码,archinclude里还有很多别的体系结构的代码,我的CPUPiii所以留下i386部分。里面还有些amd-cpu的东西,不过不太多可以留下。

 

    6,其他还有几个小目录都可以留下,不过重要的是,kernel ,mm,ipc,init,include,arch,

 

    7,打开source-insight如果觉得它字体不太适应,可以在options--preferences--syntax formatting--basics里勾上,use-only-color-formatting。其他的东西再慢慢熟悉把。

 

    8,在source-insight工程里jump to definition 和回退的快捷键分别是Ctrl+=Alt+,

       9,完成如上准备后就可以开始旅行啦,yeah!!!

 

2。阅读核心的准备。

    流浪狗也不知道阅读核心代码需要多少基础知识,不过我会列举一些我觉得会用到的知识和我喜欢的书。因为流浪狗是非计算机专业的门外汉,所以很多东西可能对计算机专业的高手不太适合。

    0,必须会使用计算机!!!

    1,C语言知识。

    2,操作系统基础知识,我比较喜欢的书是《现代操作系统》。

    3,和unix系统的一些基本知识。ext2文件结构,fork等。

    4,X86proctect-mode。可以到网上找

 

    总之,基础知识是很重要的,如果没有积累,恐怕也不可能看懂核心。比如下面几个简单的东西。如果你还不明白,想看懂核心恐怕有点难。

        进程控制块,进程扇,进程链。downup操作,生产者,消费者。。。,LRU

 

    下面是部分书和资源,还有和很多一时想不起来了。

 

    OReilly - Understanding the Linux Kernel - 2nd Edition.chm(深入理解linux kernel),流浪狗看了一遍又一遍。

 

    OReilly - linux device driver- 2nd Edition,补充对设备驱动的理解。

 

    LINUX内核源代码情景分析(上,下),有的地方讲得比较详细,不过电子版(D版)很难看。说真的我很讨厌这本书的前言。

   

    google查找利索脚。

 

    joyfire笔记,是个网站。经常在csdn上逢人便说欢迎访问http://joyfire.net/。

 

    浙江大学的 linux分析报告 98 96,一个是研究生班,一个是本科班,如果有兴趣可以看看研究生是怎么毕业的 :-)

   

    NB的当然还是www.google.com了。

 

    核心第一个c代码函数是start-kernel,位置在init/main.clet's go!!!

 

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网