Linux实验-添加系统调用
0.实验目的:
添加一条系统调用,输出当前进程的task_struct中的信息(如id, name, pareant_id, parent_name),效果如图:
1.环境准备:
1.1.下载linux内核:
官网下载Linux-5.10.2内核版本,并移动到/usr/src文件夹中并解压。
进入下载目录后:
sudo mv linux-5.10.2.tar.xz /usr/src
sudo tar -xvf linux-5.10.2.tar.xz
1.2.下载编译所需的软件依赖包
sudo apt-get update sudo apt-get install libncurses5-dev libssl-dev sudo apt-get install build-essential openssl sudo apt-get install zlibc minizip sudo apt-get install libidn11-dev libidn11 sudo apt-get install bison sudo apt-get install libelf-dev sudo apt-get install vim-gtk sudo apt-get install flex sudo apt-get install pkg-config sudo apt-get install libc6-dev
2.1.添加系统调用名
2.2.添加头文件
2.3.添加函数定义
2.4.编译内核
1.sudo make mrproper
2.sudo make clean
/*这条命令会删除前一次编译过程中残留的数据*/
/*第一次编译后不要再clean,则执行增量编译,大大节约时间*/
3.sudo make menuconfig
/*修改配置文件,需要调大分辨率*/
/* 此步骤直接保存并exit即可*/
4.sudo make -j4
/*编译内核,j后面的数字是分配的核心数,根据自己得情况来给定*/
5.sudo make modules_install
/*安装新内核*/
6.sudo make install
/*安装新内核*/
7.sudo reboot
/*重启linux*/
3.1.编写测试函数同实验5
2.2.dmesg查看进程信息