美文网首页
内核编译, 调试的过程

内核编译, 调试的过程

作者: 萍水间人 | 来源:发表于2019-02-21 12:50 被阅读7次

写在前面

查看内核版本

uname -r

cat /proc/version

版本号的含义

Linux内核版本有两种: 稳定版(次版本为偶数) 和 开发版 (次版本为奇数)

版本号: 主版本.次版本.释出版本-修改版本

编译内核的步骤

配置内核

必须啊先切换到 root 用户, 然后转入内核源码目录, 然后执行命令:

.config文件

编译内核前的准备工作

了解系统中与编译过程有关的目录及文件

  • /boot/vmlinuz-<version> : 用于启动的压缩内核镜像
  • /boot/system.map-<version> : 存储内核符号表
  • /boot/initrd.img-<version>: 一个镜像文件, 类似ramdisk, 它将一些驱动程序和命令工具打包到img里

下载内核源码包

获取相关补丁

构建编译环境

  • modutils : 模块工具
  • kernel-package: 包括了make-kpkg 等工具
  • patch: 如果不需要内核打补丁, 可以不安装 patch工具
  • build-essential: 提供了 C/C++ 的编译环境, 包括了gcc和make工具

补充的Linux使用小技巧

使用& 可以让命令在后台运行

例如: sh test.sh &

注意: 需要用户交互的命令不要放在后台
作业在后台运行的时候照样会将结果输出到屏幕上, 最好使用重定向的方法,
command > out.file 2 > &1 &

使用nohup 退出终端之后继续运行进程

命令的一般形式为:

nohup command &

如果使用nohup ,那么在缺省情况下, 该作业的所有输出都被重定向到一个名为 nohup.out的文件中, 除非另外指定了输出文件

nohup command > myout.file 2>&1 &

参考资料

Linux添加系统调用的两种方法
ubuntu 下载Linux内核源码
Linux内核后台执行命令

相关文章

  • 内核编译, 调试的过程

    写在前面 查看内核版本 uname -r 或 cat /proc/version 版本号的含义 Linux内核版本...

  • 内核编译过程

    一、内核配置方法 1、配置哪些目录需要编译2、配置哪些文件需要编译确认编译时,到底文件是在哪个目录。如:

  • 2018-10-12

    内核编译 安装依赖库 调试menuconfig 重定向输出来节约I/O时间

  • 在ubuntu机器上直接调试内核模块Makefile模板

    需求:在ubuntu机器上面直接调试内核模块,编译出ko文件,直接插入内核。 1、Makefile实现 2、tes...

  • gcc相关

    gcc编译常用指令 gcc编译过程 gdb调试流程 第一步生成调试文件 第二步 根据指令调试

  • 自己定制树莓派Linux内核的步骤

    (文/阿群)此篇文章是自己编译树莓派内核的备忘录. 以上为树莓派内核编译过程 引导新内核 把树莓派SD卡/boot...

  • 使用kgdb调试Vagrant guest kernel

    在上一篇介绍了如何用Vagrant启动自己编译的内核,现在我们要使用gdb来调试这个内核。首先需要在Guest U...

  • 编译、安装内核

    假如你需要改内核代码(调试或者其他目的),就需要从源码编译内核,以运行你的修改。 首先,要有一个可用的linux环...

  • MacOS中使用VSCode调试Nginx

    一. 编译运行Nginx 详细过程可参考博文:Nginx源码编译安装教程 配置调试功能 一定要开启Nginx调试功...

  • Linux内核编译运行和调试

    这一篇是关于linux内核源码下载,编译,运行,调试(搭建Qemu+gdb和Eclipse)的相关学习笔记。操作系...

网友评论

      本文标题:内核编译, 调试的过程

      本文链接:https://www.haomeiwen.com/subject/drrryqtx.html