文章目录

  • 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/

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

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

阅读内核源码技巧

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

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

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

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

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

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

23.3.1 内核地址:https

Linux操作系统——Linux 内核源码介绍内核升级相关推荐

  1. Linux内核源码介绍

    内核介绍 文章目录 内核介绍 裸机与操作系统 驱动的分类 内核源码目录 内核源码编译 我的开发环境: 内核版本4.1.15 开发板正点原子阿尔法IMX6ULL开发板 source insight写代码 ...

  2. Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7)【转】...

    原文地址:Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.c ...

  3. Linux内核源码分析--内核启动之(1)zImage自解压过程(Linux-3.0 ARMv7) 【转】

    转自:http://blog.chinaunix.net/uid-25909619-id-4938388.html   研究内核源码和内核运行原理的时候,很总要的一点是要了解内核的初始情况,也就是要了 ...

  4. Linux内核源码分析--内核启动之(3)Image内核启动(C语言部分)(Linux-3.0 ARMv7) 【转】...

    原文地址:Linux内核源码分析--内核启动之(3)Image内核启动(C语言部分)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.chinauni ...

  5. linux内核体系学习路径_Linux内核分析(一)linux体系简介|内核源码简介|内核配置编译安装...

    从本篇博文开始我将对linux内核进行学习和分析,整个过程必将十分艰辛,但我会坚持到底,同时在博文中如果那些地方有问题还请各位大神为我讲解. 今天我们会分析到以下内容: 1. Linux体系结构简介 ...

  6. Linux树莓派开发——配置树莓派内核源码,内核编译,更换树莓派Linux内核

    目录 一.树莓派Linux源码配置 1.配置的三种方法 2.内核源码的下载 二.树莓派内核编译 1.树莓派的编译 ​2.生成vmlinux 三.更换树莓派内核的详细步骤 一.树莓派Linux源码配置 ...

  7. Linux内核源码分析--内核启动之(2)Image内核启动(汇编部分)(Linux-3.0 ARMv7) 【转】...

    转自:http://blog.chinaunix.net/uid-25909619-id-4938389.html 在完成了zImage自解压之后,就跳转到了解压后的内核(也就是vmlinux的bin ...

  8. xilinx linux内核,Xilinx-Zynq Linux内核源码编译过程

    本文内容依据http://www.wiki.xilinx.com网址编写,编译所用操作系统为ubuntu 14 1.交叉编译环境的安装配置 2.uboot的编译 1)下载uboot源代码 下载uboo ...

  9. linux top 源码,在Linux系统中下载源码包安装Topgrade的方法,附Topgrade选项说明

    本文介绍在Linux操作系统中下载源码包安装Topgrade的方法,即下载topgrade-v2.3.0-x86_64-unknown-linux-gnu.tar.gz包并进行安装,经测试,在Ubun ...

  10. linux内核源码系统调用有多少个,Linux内核源码目录介绍

    Linux的内核源代码可以从很多途径得到,我一般常常去kernel.org看看.一般来讲,在安装的linux系统下,usr/src/linux目录下的东西就是内核源代码.源码的版本号有一个非常简单的编 ...

最新文章

  1. Android系列讲座(2):为TextView组件加上边框
  2. Elasticsearch入门Demo(二)
  3. 腾讯会跟中国移动一样慢慢衰落么
  4. 管理云栈将会胜出吗?
  5. 获取Gitlab项目的Token
  6. Eclipse.自动提示--编写HTML/CSS/JS/JSP代码时自动提示的解决办法
  7. Qt Creator 最实用的快捷操作
  8. 浅谈Volatile与多线程
  9. vc使用opencv库 读取图像
  10. iOS 开发--github的demo
  11. 天津天河计算机技术有限公司,“天河一号”超级计算机落户天津,命名为“天河”,取天津与“银河团队...
  12. 论文浅尝 | 神经协同推理
  13. CSS3实现图形曲线阴形和翘边阴影
  14. armax函数 matlab 源码_【源码】Kmeans聚类算法(超快速、简洁的设计方法)
  15. 2011北理机试题——层次关系
  16. 关于VS2017提示I/O文件操作函数需要加上_s的解决办法
  17. [原]JavaScript必备知识系列-作用域
  18. TCP/IP源码分析
  19. 《图解设计模式》读书笔记
  20. 对PVP手游产品《王者荣耀》的一些思考

热门文章

  1. CarMaker中关于交通目标行人横穿的问题
  2. 音视频编解码技术(二):AAC 音频编码技术
  3. html直播源怎么转码,直播源列表格式转换 - 黑鸟博客
  4. 区块链:Ethereum Casper 101
  5. python画散点图
  6. 在线搜索音乐播放器源码
  7. JavaScript高级程序
  8. 装机员Ghost一键备份还原使用方法(硬盘装系统)
  9. MFC教程(Visual C++ 6.0)|合集 |更新中
  10. java反编译工具luyten、JD-GUI下载【非常详细】