Linux内核编译及添加系统调用

这篇博客详细介绍了如何在Linux环境下编译内核,加载新内核,并添加一个用于修改或读取进程nice值的系统调用。作者从下载最新版内核源码开始,逐步解释了配置、编译、安装内核的过程,接着说明了分配系统调用号、修改系统调用表和实现服务例程的步骤,最后测试了新添加的系统调用功能。
摘要由CSDN通过智能技术生成

Linux内核编译及添加系统调用

接下来的几篇博客会详细记录总结在Linux实践课程中的问题和感悟,这是第一篇。

内容要求

  1. 编译一个干净的Linux内核并加载成功,不需要对内核进行修改。
  2. 在1中新编译的内核中,添加一个系统调用,实现对指定进程的nice值的修改或读取功能。

开发平台

  • Linux环境 gcc vim

具体步骤

  1. 编译内核并加载

    • 首先下载内核kernel.org,我下载的是最新版。
      kernel

    • 将下载的linux-4.11.3.tar.xz文件移动到/usr/src/目录下使用命令 sudo mv ./linux-4.11.3.tar.xz /usr/src/ ,并进入/usr/src/目录,然后解压缩,使用命令 sudo xz -d linux-4.11.3.tar.xz && tar -xvf linux-4.11.3.tar && rm linux-4.11.3.tar

    • 进入linux-4.11.3子目录,执行 sudo make mrproper 清除.config和.o文件。
    • 配置内核。sudo make menuconfig 注意,执行此命令时,shell窗口不能太小,应为要使用配置对话框。在显示的对话框中,对于每个选项,你可以选择 ymn ,其中,y 表示将相应特性的支持或驱动程序编译进内核;m 表示将相应特性的支持或设备驱动编译成可加载模块,在需要时,可由系统或用户自行加载到内核中;n 表示内核不提供相应特性或驱动的支持。
      一般采用默认值,但设备驱动配置要检查,进入Device Drivers,如下图所示:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值