Linux系统分析第一次实验报告

这篇实验报告详细记录了在Linux 3.9.4系统上实现时间片轮转调度的过程。作者按照孟宁老师的指导在本地编译安装Mykernel,并遇到问题,随后解决问题并成功运行示例。报告重点分析了mymain.c、myinterrupt.c和mypcb.h三个关键文件,解释了进程调度的逻辑和具体操作,展示了运行结果和PCB结构体的细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux系统分析第一次实验报告

学号:413

原创作品转载请注明出处 https://github.com/mengning/linuxkernel/
使用孟宁老师的github帐号中提供的Mykernel资源,在我的机器上进行了一个关于时间片轮转调度程序的实现。

实验环境:

		. VMware Workstation----->安装Ubuntu16.04虚拟机 
		. 安装Mykernel(基于Linux Kernel 3.9.4)

按照孟宁老师github帐号中提供的Mykenrnel安装步骤,在本机上进行编译安装。

步骤如下:

sudo apt-get install qemu # install QEMU
sudo ln -s /usr/bin/qemu-system-i386 /usr/bin/qemu
wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.9.4.tar.xz # download Linux Kernel 3.9.4 source code
wget https://raw.github.com/mengning/mykernel/master/mykernel_for_linux3.9.4sc.patch # download mykernel_for_linux3.9.4sc.patch
xz -d linux-3.9.4.tar.xz
tar -xvf linux-3.9.4.tar
cd linux-3.9.4
patch -p1 < ../mykernel_for_linux3.9.4sc.patch
make allnoconfig
make

编译过程中遇到的问题

由于gcc版本较高,在编译的过程中会遇到compiler-gcc5.h文件丢失。

解决办法:

	直接使用compiler-gcc4.h修改名称进行替换之后编译通过。

###下面是安装linux-3.9.4编译成功之后的截图

编译成功
编译成功之后运行Mykernel当中的例子,运行结果如下:
示例运行对应mymain.c和intterupt.c两个文件,前者是用来循环输出my_start_kernel here语句,后者是用来记录被时钟中断时候的输出。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值