Linux操作系统——Linux 内核源码介绍&内核升级

文章目录

  • 23 Linux 内核源码介绍&内核升级
    • 23.1 为什么要阅读linux 内核?
    • 23.2 linux0.01 内核源码
      • 23.2.1 基本介绍
      • 23.2.2 linux0.01 内核源码目录&阅读
    • 23.3 linux 内核最新版和内核升级
      • 23.3.1 内核地址:https[://www.kernel.org/](http://www.kernel.org/) 查看
      • 23.3.2 下载&解压最新版
      • 23.3.3 linux 内核升级应用实例
      • 23.3.4 具体步骤

23 Linux 内核源码介绍&内核升级

23.1 为什么要阅读linux 内核?

  1. 爱好,就是喜欢 linux(黑客精神)

  2. 想深入理解 linux 底层运行机制,对操作系统有深入理解

  3. 阅读 Linux 内核,你会对整个计算机体系有一个更深刻的认识。作为开发者,不管你从事的是驱动开发,应用开发还是后台开发,你都需要了解操作系统内核的运行机制,这样才能写出更好的代码。

  4. 作为开发人员不应该只局限在自己的领域,你设计的模块看起来小,但是你不了解进程的调用机制,你不知道进程为什么会阻塞、就绪、执行几个状态。那么很难写出优质的代码。

  5. 找工作面试的需要

作为有追求的程序员,还是应该深入的了解一个操作系统的底层机制,(比如 linux/unix) 最好是源码级别的,这样你写多线程高并发程序,包括架构,优化,算法等,高度不一样的,当然老韩也不是要求小伙伴儿把一个非常庞大的 Linux 内核每一行都读懂。我觉得。你至少能看几个核心的模块。

23.2 linux0.01 内核源码

23.2.1 基本介绍

Linux 的内核源代码可以从网上下载, 解压缩后文件一般也都位于 linux 目录下。内核源代码有很多版本,可以从

linux0.01 内核入手,总共的代码 1w 行左右, 最新版本 5.9.8 总共代码超过 700w 行,非常庞大.

内核地址:https://www.kernel.org/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dIU0ytsk-1659016464938)(../../../Pictures/Linux/wps340.png)]

很多人害怕读 Linux 内核,Linux 内核这样大而复杂的系统代码,阅读起来确实有很多困难,但是也不象想象的那么高不可攀。老韩建议可以从 linux0.01 入手。

23.2.2 linux0.01 内核源码目录&阅读

阅读内核源码技巧

  1. linux0.01 的阅读需要懂 c 语言

  2. 阅读源码前,应知道 Linux 内核源码的整体分布情况。现代的操作系统一般由进程管理、内存管理、文件系统、驱动程序和网络等组成。Linux 内核源码的各个目录大致与此相对应.

  3. 在阅读方法或顺序上,有纵向与横向之分。所谓纵向就是顺着程序的执行顺序逐步进行;所谓横向,就是按模块进行。它们经常结合在一起进行。

  4. 对于 Linux 启动的代码可顺着 Linux 的启动顺序一步步来阅读;对于像内存管理部分,可以单独拿出来进行阅读分析。实际上这是一个反复的过程,不可能读一遍就理解

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zhFH9LKi-1659016464938)(../../../Pictures/Spring/wps341.png)]

linux 内核源码阅读&目录介绍&main.c 说明

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WEwPtui8-1659016464938)(../../../Pictures/Linux/wps343.png)]

23.3 linux 内核最新版和内核升级

23.3.1 内核地址:https/www.kernel.org/ 查看

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6ho3gnSl-1659016464939)(../../../Pictures/Spring/wps344.png)]

23.3.2 下载&解压最新版

wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.8.16.tar.gz tar -zxvf linux-5.8.16.tar.gz

23.3.3 linux 内核升级应用实例

将 Centos 系统从 7.6 内核升级到 7.8 版本内核(兼容性问题)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N2QaR1wc-1659016464939)(../../../Pictures/Spring/wps346.png)]

23.3.4 具体步骤

uname -a // 查看当前的内核版本

yum info kernel -q //检测内核版本,显示可以升级的内核yum update kernel //升级内核

yum list kernel -q //查看已经安装的内核

你可能感兴趣的:(Linux,linux,驱动开发,unix)