免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 6376 | 回复: 24

[内核入门] 2017 年第一帖,喜欢 Linux 内核的朋友看过来 [复制链接]

论坛徽章:
9
程序设计版块每日发帖之星
日期:2016-02-11 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:0015-16赛季CBA联赛之吉林
日期:2016-03-23 17:25:0015-16赛季CBA联赛之浙江
日期:2016-04-01 08:25:0615-16赛季CBA联赛之山西
日期:2016-04-01 10:09:1915-16赛季CBA联赛之广夏
日期:2016-06-03 15:58:212016科比退役纪念章
日期:2016-07-28 17:42:5215-16赛季CBA联赛之广东
日期:2017-02-20 23:32:43
发表于 2017-01-01 00:00 |显示全部楼层
本帖最后由 Buddy_Zhang1 于 2017-01-01 00:00 编辑

2017 年祝大家新年新气象,学习蒸蒸日上

Pic.png
俗话说活到老学到老, Linux 内核是个不错的东西,能天天从里面学会很多新的知识,不断更新着我们的思想。展望 2017 年,期望自己在内核的学习上继续努力。
为此我做了一个计划,其目的就是深刻的学习内核知识
我也是学习内核的新人,学习内核的过程确实吃过不少苦,但还是庆幸自己坚持下来了。也有很多很多想和大家分享的东西,但本帖的主题不是为了讨论这个。
言归正传,学习内核的最大的一个障碍不是内核知识有多难,而是缺少一个对知识的实践过程,为此我有一个计划,希望有兴趣的学友一起加入这个计划。

【计划说明】
Linux 内核也是一个程序,它也是从最简单的程序演变为如今如此庞大的程序,正如万物皆最简单的物质组成。我的计划是从 Linux 的第一个完整版 Linux 0.11
开始研究代码,调试代码,并分享学习的所得。 研究完 0.11 的内核之后,我会根据历史 Patch 提交过程,研究每个版本之间提交代码的含义,以此从中研究 Linux
的演变过程。最后达到对 Linux 基础内核的核心代码有更深刻的认知。通过对 Linux0.11 2万行代码的深入研究有助于构建一个完整的计算机系统架构有帮助。

【计划实施的方式】
我从网络上收集整理了一个可以直接编译并直接调试并且可以使用的 Linux 0.11, 你只要有一台 Linux 或 Mac 电脑就可以参与这个计划。
我会定期更新 patch, 将版本从 Linux 0.11 一直 update,并分享所有的学习资料和源码。
目的很简单,就是让内核实践的门槛降低(原先有想法,就是无法获得一个实践的过程,比如你有内核了,为了做成一个完整的系统,你要为其准备 uboot,rootfs 等,确实困难太大了)
工作也几年了,从开源社区中学到了很多东西,也感受到开源的力量如此强大,所以这个项目完全开源!

【如何参与到计划】
我已经将源代码上传到 github 上进行维护,并使用 Slack 进行实时技术交流,邮件服务尚未搭建。
所以,如果你想参与到这个项目,你只需将源码 git 到你的 Linux 或 Mac 电脑,按照源码的 README 即可使用。
至于如何提交你的补丁和分享,这里不做详细介绍。

【Linux 0.11 运行的机理】
Linux 0.11 的原理:在一台 Linux 或 Mac 上预先安装 qemu 模拟器,使用模拟器 qemu 模拟 Linux0.11 运行的环境: Intel i386
该 Linux0.11 源码中汇编部分全部使用 at&t 汇编进行编写,并且支持 gcc5.0 等,简单的说就是该源码可在 Ubuntu16.04 上运行!

使用截图
UO00.jpg
源码编译 Linux 0.11,基于 Ubuntu16.04
UU01.png
Linux 0.11 运行截图
UU02.png
使用 gdb 对 Linux0.11 整个过程进行调试,这个很给力

【获取 Linux0.11】
如何你想参与这个项目,请从 github download 源代码。
github: https://github.com/BiscuitOS/BiscuitOS.git

【项目沟通方法】
0. 直接在 China Unix 内核源码板块提问。
1. 你可以把你的问题通过邮箱发给我: buddy.zhang@aliyun.com
2. 可以加入 Slack 组进行实时技术交流。
UU04.png
3. 可以把你的问题直接 update 到 github 的 issue 频道。
UU6.jpg

评分

参与人数 1可用积分 +2 收起 理由
Godbach + 2 赞一个!

查看全部评分

论坛徽章:
9
程序设计版块每日发帖之星
日期:2016-02-11 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:0015-16赛季CBA联赛之吉林
日期:2016-03-23 17:25:0015-16赛季CBA联赛之浙江
日期:2016-04-01 08:25:0615-16赛季CBA联赛之山西
日期:2016-04-01 10:09:1915-16赛季CBA联赛之广夏
日期:2016-06-03 15:58:212016科比退役纪念章
日期:2016-07-28 17:42:5215-16赛季CBA联赛之广东
日期:2017-02-20 23:32:43
发表于 2017-01-01 00:02 |显示全部楼层
Reserve Page

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2017-01-01 23:47 |显示全部楼层
回复 1# Buddy_Zhang1

赞! 很佩服还能有时间能够静下心专门学习 kernel.

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-08-17 06:20:00程序设计版块每日发帖之星
日期:2016-07-16 06:20:00程序设计版块每日发帖之星
日期:2016-07-18 06:20:00每日论坛发贴之星
日期:2016-07-18 06:20:00黑曼巴
日期:2016-12-26 16:00:3215-16赛季CBA联赛之江苏
日期:2017-06-26 11:05:5615-16赛季CBA联赛之上海
日期:2017-07-21 18:12:5015-16赛季CBA联赛之青岛
日期:2017-09-04 17:32:0515-16赛季CBA联赛之吉林
日期:2018-03-26 10:02:16程序设计版块每日发帖之星
日期:2016-07-15 06:20:0015-16赛季CBA联赛之江苏
日期:2016-07-07 18:37:512015亚冠之萨济拖拉机
日期:2015-08-17 12:21:08
发表于 2017-01-05 16:55 |显示全部楼层
本帖最后由 nswcfd 于 2017-01-05 16:56 编辑

赞,赵炯那本书在书架上沉睡了N年了……惭愧……

论坛徽章:
9
程序设计版块每日发帖之星
日期:2016-02-11 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:0015-16赛季CBA联赛之吉林
日期:2016-03-23 17:25:0015-16赛季CBA联赛之浙江
日期:2016-04-01 08:25:0615-16赛季CBA联赛之山西
日期:2016-04-01 10:09:1915-16赛季CBA联赛之广夏
日期:2016-06-03 15:58:212016科比退役纪念章
日期:2016-07-28 17:42:5215-16赛季CBA联赛之广东
日期:2017-02-20 23:32:43
发表于 2017-01-06 09:26 |显示全部楼层
回复 3# Godbach


   有 Godbach 大神的支持,瞬间能量满满的

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2017-01-06 10:53 |显示全部楼层
回复 5# Buddy_Zhang1
客气了。能静下心踏踏实实做一些研究,真的很有意义。等你工作多年以后,回头再看这段时光,都是满满的回忆。



论坛徽章:
0
发表于 2017-01-06 22:02 |显示全部楼层
楼主2017-01-01 00:00发长帖,看出是有心之人,有心加努力的人一定能取得成功。
建议升级一个版本,学习linux 0.12,因为linux 0.12有虚拟内存的支持,不支持虚拟内存的OS始终觉得缺点什么。。。
linux 0.11和linux 0.12已经具备了linux内核的“神”与“形”,是非常好的学习资料,欠缺之处有可能是锁,同步等方面的知识。


论坛徽章:
9
程序设计版块每日发帖之星
日期:2016-02-11 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:00程序设计版块每日发帖之星
日期:2016-02-14 06:20:0015-16赛季CBA联赛之吉林
日期:2016-03-23 17:25:0015-16赛季CBA联赛之浙江
日期:2016-04-01 08:25:0615-16赛季CBA联赛之山西
日期:2016-04-01 10:09:1915-16赛季CBA联赛之广夏
日期:2016-06-03 15:58:212016科比退役纪念章
日期:2016-07-28 17:42:5215-16赛季CBA联赛之广东
日期:2017-02-20 23:32:43
发表于 2017-01-09 11:53 |显示全部楼层
回复 7# nopatch

谢谢你的建议,不过我研究完 0.11 之后,要通过补丁的方式升级到 0.12 和后续版本,这样也可以知道 Linux 的发展。

论坛徽章:
6
2015年迎新春徽章
日期:2015-03-04 10:16:53操作系统版块每日发帖之星
日期:2015-08-04 06:20:002015亚冠之鹿岛鹿角
日期:2015-08-05 16:51:182015亚冠之全北现代
日期:2015-08-07 17:14:392015亚冠之武里南联
日期:2015-08-11 15:33:03数据库技术版块每日发帖之星
日期:2016-02-02 06:20:00
发表于 2017-04-27 09:16 |显示全部楼层
楼主还在继续么,我也是内核学习新人,希望能跟着楼主学习一下

论坛徽章:
0
发表于 2017-04-27 09:58 |显示全部楼层
赞赞赞
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP