大家好,今天小编关注到一个比较有意思的话题,就是关于linux核源代码学习的问题,于是小编就整理了2个相关介绍Linux核源代码学习的解答,让我们一起看看吧。
linux内核编程书籍有那些比较经典?
1.C语言,推荐Theprogrammginclanguage被称为圣经的书,不过没有中文版,不过C语言不太难,而且读内核也不需要你对C有多深了解。学习到指针和结构体就够你用了。
2.数据结构,不懂这个想学是不可能的,推荐《数据结构》C语言版本。
3.操作系统,任何一个大学的教科书都可以。一定要看,虽然是纯理论。但不看这个,想看懂内核,那是不可能的。
4.微机原理,内核和底层相关,不知道微机原理是不行的。我学的时候书上是以INTEL8086为蓝本,非常简单。后来看内核时候,补充了80386以后出现的保护模式,非常复杂。但还是先看下老版的微机原理,先从简单的下手。
5.linux系统管理,推荐《linux系统管理手册》,被linux的作者推荐的系统管理书籍。 6,终于到内核了,我看的是《Linux内核代码情景分析》虽然有点老。但结合新的源代码,在了解机制后,代码实现上差距不大。
如何基于linux内核开发一套适合自己机器的系统?
其实这样提问就不怎么对。基于xx内核的说法好像是Windows世界说的。在GNU/Linux世界是不用这样的。你可以从零开始制作一个自己的Linux。最简单的是lfs,首先去lfs官方下载手册和源代码包,自己建立编译环境,然后自己编译一个适合自己的Linux。内核除了可选Linux内核外,hurd内核也可以选。如果想编译适合arm架构的Linux,就得先下载clfs的手册了,玩玩交叉编译。如果想带上图形界面,继续blfs。总之,自己编译一个适合自己电脑的Linux,只要电脑硬件跟得上,自己有时间折腾,这事不是很难。如果水平再高点,连那些发行版的包管理也可以拿来用用……
Linux内核基本已经包含了常见的硬件驱动,所以只需要一个编译框架,比如buildroot或openwrt之类的。选中目标板的硬件驱动和功能包,去掉多余的,就可以编译出一个精致的系统。像openwrt,编译好的固件通常只有几M大小。
如果是通用桌面机,需要图形界面,那就找个发行版比如常用的debain改吧。
到此,以上就是小编对于linux核源代码学习的问题就介绍到这了,希望介绍关于linux核源代码学习的2点解答对大家有用。