一个简单的时间片轮转多道程序分析
2015-03-15 22:44
253 查看
张磊+原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ”
使用实验楼的虚拟机打开shell,输入下面的两条命令,即可以启动mykernel,
l cd LinuxKernel/linux-3.9.4
l qemu -kernel arch/x86/boot/bzImage
下图为运行截图:
这个程序很简单,程序在两个函数之间按时间进行切换。函数中没有其它功能,只是打印输出,能看到函数已经运行。
然后关闭qemu窗口,cd mykernel ,我们可以找到输出这些字符串的源代码mymain.c和myinterrupt.c
mymain.c 文件:
myinterrupt.c 文件:
实验结论:
1.mykernel 程序启动之后,会调用 my_start_kernel 函数。
2.CPU 会周期性的产生时间中断来运行 my_time_handler 函数。
3.这是一个最简单的程序内核,内此可以看出计算机所谓的多任务处理也只是周期性的产生中断来轮流招待不同的程序,CPU 会保存中断产生的现场,以便继续下一次时间片轮转。
使用实验楼的虚拟机打开shell,输入下面的两条命令,即可以启动mykernel,
l cd LinuxKernel/linux-3.9.4
l qemu -kernel arch/x86/boot/bzImage
下图为运行截图:
这个程序很简单,程序在两个函数之间按时间进行切换。函数中没有其它功能,只是打印输出,能看到函数已经运行。
然后关闭qemu窗口,cd mykernel ,我们可以找到输出这些字符串的源代码mymain.c和myinterrupt.c
mymain.c 文件:
myinterrupt.c 文件:
实验结论:
1.mykernel 程序启动之后,会调用 my_start_kernel 函数。
2.CPU 会周期性的产生时间中断来运行 my_time_handler 函数。
3.这是一个最简单的程序内核,内此可以看出计算机所谓的多任务处理也只是周期性的产生中断来轮流招待不同的程序,CPU 会保存中断产生的现场,以便继续下一次时间片轮转。
相关文章推荐
- 一个简单的时间片轮转多道程序内核代码的分析
- Linux 内核分析 第二次作业 完成一个简单的时间片轮转多道程序内核代码
- Linux内核分析,完成一个简单的时间片轮转多道程序内核代码
- 第2节 一个简单的时间片轮转多道程序内核代码【Linux内核分析】
- Linux内核分析第二周学习博客——完成一个简单的时间片轮转多道程序内核代码
- 第二周:一个简单的时间片轮转多道程序内核代码及分析
- 一个简单的时间片轮转多道程序内核代码的分析
- 一个简单的时间片轮转多道程序内核代码分析--20135334赵阳林
- linux内核分析第二周-完成一个简单的时间片轮转多道程序内核代码
- linux内核分析作业:操作系统是如何工作的进行:完成一个简单的时间片轮转多道程序内核代码
- Linux内核分析:完成一个简单的时间片轮转多道程序内核代码
- 通过一个简单的时间片轮转多道程序内核代码,分析linux操作系统系统
- 操作系统是如何工作的-------通过一个简单的时间片轮转多道程序内核代码分析
- 20135202闫佳歆--week2 一个简单的时间片轮转多道程序内核代码及分析
- 一个简单的时间片轮转多道程序内核代码分析
- Linux内核分析二:一个简单的时间片轮转多道程序内核代码
- Linux内核分析课程--完成一个简单的时间片轮转多道程序内核代码,理解操作系统是如何工作的
- 基于mykernel的一个简单的时间片轮转多道程序内核代码分析
- Linux内核分析—完成一个简单的时间片轮转多道程序内核代码
- Linux内核分析:完成一个简单的时间片轮转多道程序内核代码