笨OS是笨叔的OS,为《Arm64体系结构编程与实践》一书操作系统大综合实验,大家可以当做练手的一个项目,把闲置的树莓派玩起来。
《Arm64体系结构编程与实践》一书已经在2022年4月出版。
购买:
JD: https://item.jd.com/13119117.html
当当: http://product.dangdang.com/29384351.html
本书资料下载: 关注"奔跑吧linux社区“微信公众号,输入”arm64“获取。
学习操作系统最有效及最具有挑战性的训练是从零开始动手写一个小操作系统(OS)。目前很多国内外知名大学的操作系统课程的实验都与动手写一个小OS相关,比如麻省理工大学的操作系统课程采用xv6系统来做实验。xv6是在x86处理器上重新实现的Unix第六版系统,用于教学目的。清华大学的操作系统课程也采用类似的思路,他们基于xv6的设计思想,通过实验一步一步完善一个小操作系统:ucore OS。xv6和ucore OS实验都是采用类似英语考试中完成填空式的方式来引导大家实现和完善一个小OS。
动手写一个小操作系统会让我们对计算机底层技术有更深的理解,对操作系统中核心功能,比如系统启动、内存管理、进程管理等内容理解也会有更深刻。我们设计了20多个小实验引导读者在树莓派上从零开始实现一个小操作系统,我们把这个小操作系统命名为:BenOS。
本章使用到的芯片手册如下。
本章实验按照难易程度分成三个阶段。
邀请小伙伴参与BenOS开发.
开发要求:
所有代码patch都必须经过checkpatch.pl脚本的检查。
$ git diff | ./scripts/checkpatch.pl --no-tree
对于新创建文件:
$ git add new_file
$ git diff --cached | ./scripts/checkpatch.pl --no-tree
除了printk函数的警告以及文件版权警告不用fix,其他的都需要fix。
每个小实验一个分支,例如lab01,可以git checkout lab01分支。 每个实验都可以单独维护。
armv8_dev是主开发分支。
master是用来存放文档和芯片手册。
有兴趣的读者可以订阅奔跑吧旗舰篇视频课程,目前有两季
奔跑吧视频课程,基于Linux 5.0进行讲解,手把手分析Linux 5.0内核源代码。 我们是按照专题来收费,比如您订阅了第一季,以后录制和内存管理相关的视频,都统统免费。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。