如何查看Linux源代码

如何查看Linux源代码,第1张

一般在Linux系统中的/usr/src/linux*.*.*(*.*.*代表的是内核版本,如2.4.23)目录下就是内核代码(如果没有类似目录,是因为还没安装内核代码)。另外还可从互连网上免费下载。注意,不要总到http://www.kernel.org/去下载,最好使用它的镜像站点下载。请在http://www.kernel.org/mirrors/里找一个合适的下载点,再到pub/linux/kernel/v2.6/目录下去下载2.4.23内核。

直接打出来?????

您真有创意……

现在稳定版的Linux内核源码在600万行左右

即便是最初的那个可以稳定运行的v0.11版Linux内核的代码也有2万多行

还不要网址,还直接打出来……

你当Linux操作系统是你平时练手的小程序呢……

想学习源码建议不要直接看最新版的代码,

600万行的代码量相信你不会愿意一行一行的去看……那样能看到你八十岁生日去……

但有挑选的看的话对新手来说不现实,既不知道怎么挑,挑出来也未必能看懂

建议去看Linux

v0.11版的源代码或者Minix的源代码

(Linux和Minix内核结构有所不同,如果是为了学习操作系统对硬件的操作原理,可以学Minix,因为这个系统写出来就是为了给学生们上课学习用的。而如果是为了学习Linux内核原理,那还是看Linux早期版本的源码吧,毕竟和Minix在构造上还是有区别的)

推荐去OldLinux网站看v0.11的源代码

还有一本书:同济大学的赵炯博士写的《Linux内核完全注释》

网上有电子版,也能买大出版的书籍。这本书就是对Linux

v0.11内核代码的完全注释和解析,对于学习Linux内核非常有帮助

1. 以搜索ls命令源码为例,先搜索命令所在包,命令如下:

lpj@lpj-linux:~$ which ls

/bin/ls

2. 用命令搜索该软件所在包,代码如下:

lpj@lpj-linux:~$ dpkg -S /bin/ls

coreutils: /bin/ls

3. 从上一步中可以知道ls命令的实现在包coreutils中,用apt安装(说安装有些歧义,主要是区分apt-get -d)该包的源代码然后解压,代码如下:

sudo apt-get source coreutils

cd /usr/src/coreutils-XXX #XXX表示版本号

sudo tar zxvf coreutils-XXX.tar.gz

或者只下载源码,然后手动打补丁再解压,代码如下:

sudo apt-get -d source coreutils

cd /usr/src

tar zxvf coreutils-XXX.tar.gz

gzip -d coreutils-XXX.diff.gz #这一步会生成coreutils-XXX.diff文件

patch -p0 <coreutils-XXX.diff

cd coreutils-XXX

tar zxvf coreutils-XXX.tar.gz

OK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/506497.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-17
下一篇2023-06-17

发表评论

登录后才能评论

评论列表(0条)

    保存