如何学好Linux内核?

30 篇文章 0 订阅
15 篇文章 1 订阅

前言:

很多为Linux内核“吐血而亡”的程序员都犯了一个通病,那就是一开始就陷入无穷无尽的细节,比如一开始就陷入源代码情景分析。情景分析这样的书,无疑是好书,但是你把《新华字典》从第一个字,背到最后一个字,你仍然写不出一篇作文。

那么先来点真实的:学习Linux内核能上哪些岗位?有哪些阶段?怎么去学、该看哪些书呢?

下面我们来论述学习Linux内核的各个阶段

一、Linux内核组成

内核主要由进程管理内存管理设备驱动文件系统网络协议栈外加一个系统调用组成

学习直通车:Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈

源码组织结构:

二、怎么才能学好Linux内核呢?

首先,Linux内核可不像C或者java那样,1~3个月你就能精通掌握。内核学习是需要一步一步循序渐进,掌握正确的linux内核学习路线对学习至关重要,本篇文章就来分享学习linux内核的一些建议吧。

1. 了解操作系统基本概念。如果不会,可以学习《操作系统:设计与实现》Andrew S.Tanenbaum 写的那本。以MINIX为例子讲解操作系统的概念。非常推荐。

2. 有了操作系统的基本概念以后,可以了解Linux的机制了。推荐《Linux内核设计与实现》Robert Love 写的。

3. 在了解Linux内核的一些基本知识点后,接下来可以开始学习《深入理解Linux内核》(作者:Daniel P. Bovet)了。这本书有些内容比较抽象,学习起来比较费神,所以看这本书的时候,要多结合内核代码看着学。

4. 在熟悉Linux内核之后,有的朋友想要从事内核驱动开发岗位的相关工作的话,可以学习《Linux设备驱动程序》,作为驱动入门的书籍,是非常实用的资料。学习驱动,免不了要学习一些硬件的协议和资料,研究哪个就找到相应的硬件文档,把硬件的工作原理搞明白。这些就不细说了。

5. 现在很多Linux相关的工作(包括内核),大都集中在嵌入式开发领域,arm,mips等,要学习以下这些体系架构的的资料,了解CPU的设计和工作方式。ARM就看对应的芯片手册,讲的很细致。MIPS就看 《see mips run》,有一二两版,两版内容有些差异,推荐都看。

6. 关于linux内核学习,再补充一些细节方面的东西吧:

  • 学习Linux应用编程,建议看《unix环境高级编程》,把里面的例子都做一遍,会对整个Linux编程有系统都认识。

  • 针对Linux,有本 《Linux系统编程》,学完上一本,这本很快看一遍就懂了。主要是针对Linux具体懂一些内容,讲的挺全了,很实用。

  • Linux网络编程,系统的学习一下《unix网络编程。卷1,套接字联网api》,基本上网络应用相关的程序就都没问题了。

三、学好Linux内核之后,有哪些福利待遇好的岗位推荐?

1、技术类岗位

后端开发、协议栈开发:

数据架构师:

人工智能:

2、设计类岗位

ARM开发、驱动开发

3、产品类岗位

  • 4
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值