导读:课程概要

导读:课程概要

为什么要学习 Linux

image

首先 Linux 是开源免费的,用户不需要为此交付任何费用,世界各地有数百万志愿者为 Linux 提供了技术支持和软件更新,这使得 Linux 无论是在桌面还是在服务器端都是其他 OS 无法企及的。世界上最快的超级计算机 90% 以上都在用 Linux,说明 Linux 更快。

占领移动终端半壁江山的 Android 系统,其底层也是基于 Linux 内核实现的。云计算、自动驾驶、物联网等终端基本都是在使用 Linux 系统。可以说 Linux 是在 IT 领域使用最广的一项技术,掌握了 Linux 基本不会太担心技术更新带来的职业困惑,因为 Linux 的职业机会涵盖了桌面应用开发,内核和设备驱动开发,Web 开发和部署等。下从英特尔芯片厂商,上至阿里互联网公司,都会对 Linux 人才有巨大的需求。

所以如果你喜欢极客精神,可以根据自己的需要修改源代码,DIY 一套操作系统。如果喜欢开源社区的文化,崇尚自由,相信开放的 Linux 是最好的选择。如果你有一颗寻根问底的心,想知道底层内核实现的来龙去脉,那 Linux 就是最接近灵魂深处的地方。

Linux 的学习路线

image

可以将 Linux 的学习路线大体分为以上三级,对于初学者主要是掌握 Linux 系统的操作,熟练使用相应命令。中级阶段可以对 Linux 系统进行网络管理、磁盘管理、安全优化等需求进行操作,算是初级的升级版。高级主要是需要进行 Linux 的开发工作,开发对象分为两个方向,一个是服务器端,如大数据、云计算等都属于这个领域,还有就是终端产品的开发,如手机、汽车等。

这个课程有什么特色

有些读者可能会有疑问:Linux 的技术文章网上有很多,为什么非要花钱选择这个系列课程?其实很高兴有这个疑问,说明有此疑问的读者对阅读内容是有要求的。

  • 虽然很多博客专栏都有 Linux 的学习心得,但丰富的网络资源也使得信息碎片化严重,此次教程站在读者容易理解的角度一层一层剖析 Linux,让读者有系统化的深入理解,形成知识体系。

  • 另外,内核每年都在升级,有些使用方式已经发生变化,比如设备树是 Linux 驱动获取资源的最新方式,关于设备树的内容网上几乎没有深入的讲解。本教程全部采用当前最新的正式版本进行教学。

  • 除了理论教程外,每节课程会给读者留几个问题,读者可以通过读者圈与我进行答疑互动。另外课程中提到的示例代码 Github 都会开源给大家。

本课程大纲

  • Linux 总线、设备、驱动模型的探究
  • Linux 设备树(DTS)的深入理解及练习题
  • Linux 的启动流程
  • Linux 设备和驱动的相遇
  • 动手定制一个开发板案例
  • Linux 调试调优技术
  • 如何向 Linux 内核提交代码

首先结合总线、设备、驱动模型的探究彻底理清驱动的来龙去脉。然后从设备树入手,模拟一个电路板,上面有中断控制器、GPIO 控制器、I2C 控制器、SPI 控制器、以太网控制器等,并根据这个电路板从头到尾构建一个 DTS 文件。

接着实践手把手和读者一起定制一个开发板案例,搞清楚进程运行的本质。然后通过系统调用课程的讲解理解应用层是如何访问内核的。

然后介绍在项目中经常用到的调试手段。

最后手把手教你如何在内核社区提交自己的 Pathch。

相信通过此系列的课程讲解,读者会从实际调试操作理解 Linux 从上层是如何一层层调用到内核到驱动的,相信掌握本课程的知识点绝对是你通往架构师的必经之路。

本教程使用到的学习资源

内核及库

微信公众号

image

上一篇
下一篇
目录