For Fun in Linux-0.11

For Fun in Linux-0.11

前言

  • 笔者最近在学Linux内核模块编程。学起来非常痛苦 → 笔者有个习惯,是从 0 到 1的学,就是找依赖一直找到自己知晓的那一层开始往上堆,或者有前人以项目的方式引路,从表面到深层次的让我至少每个点都能印象深刻【不至于完全懂,但是能让用一些技巧让我脑袋记住,所以笔者有些时候比较喜欢那些奇淫技巧,花时间,印象深刻但是至少让我脑袋记住了,比纯用应用层次的API要好一些】,但是目前还没有找到对应的RISCV相关的教程,而且有讲的不错的教程都是 Linux 5.10 开始的。这让笔者作为一个Linux内核的新手而言,感觉十分困难。
  • 本着Just For Fun 的原则,笔者想到一条不归路,那就是从 Linux- 0.11 源代码开始,搞定后,再尝试能不能把软件层次依赖的硬件层次全部替换成RISCV , 然后再从0.11 开始追一下每次版本的patch 和 对应patch的原因,笔者知道这必然是一条很长的不归路,所以希望笔者能够坚持下来吧。
  • 其实笔者看到 Linux -0.11 的源代码只有 2万行的时候不禁窃喜,几千万行的代码没搞定过,搞定几万行的代码还是有经验的,于是,笔者决定开启了这条不归路。
  • 后面会更新正文,发帖的原因其实也是为了督促笔者做这件事情,寻找UU一起来做一些有趣的事情

看了一下代码,有点汗流浃背了,最开始的Linux-0.11 确实是给 80386写的OS , 没有做抽象的层次,预计要改的还是不少