【操作系统】用代码解释简单的时间片轮转
2015-03-15 14:34
162 查看
李景源 原创作品 转载请注明出处《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000
一、准备:
1、代码:mykernel。
2、实验楼的环境:实验楼的虚拟机。
二、进入实验楼的虚拟机后,打开LinuxKernel/linux-3.9.4文件夹,输入 qemu -kernel arch/x86/boot/bzImage可运行程序(执行后发现my_start_kernel中的代码和my_timer_handler中的代码交替执行)。为了查看该代码的如何运行的,进入到mykernel文件夹中。主要是这两个文件:myinterrupt.c和mymain.c。
三、首先用编辑器打开mymain.c文件。内核在运行时,首先会找到my_start_kernel方法作为入口。这里i是自增的,通过if判断来决定多少次后执行代码,我把值改成了5220。那就意味着i每增到5220的倍数时,就会输出这一行文字。
四、再用编辑器打开interrupt.c查看代码。这里my_timer_handler代码只有一句输出,它在每次被中断的时候会调用。
五、以上是虚拟机中原有的代码。
未完待续。(因工作较忙,需要再多点时间来搞懂运行过程)
本文出自 “sr5220” 博客,请务必保留此出处http://sr5220.blog.51cto.com/5282574/1620507
一、准备:
1、代码:mykernel。
2、实验楼的环境:实验楼的虚拟机。
二、进入实验楼的虚拟机后,打开LinuxKernel/linux-3.9.4文件夹,输入 qemu -kernel arch/x86/boot/bzImage可运行程序(执行后发现my_start_kernel中的代码和my_timer_handler中的代码交替执行)。为了查看该代码的如何运行的,进入到mykernel文件夹中。主要是这两个文件:myinterrupt.c和mymain.c。
三、首先用编辑器打开mymain.c文件。内核在运行时,首先会找到my_start_kernel方法作为入口。这里i是自增的,通过if判断来决定多少次后执行代码,我把值改成了5220。那就意味着i每增到5220的倍数时,就会输出这一行文字。
四、再用编辑器打开interrupt.c查看代码。这里my_timer_handler代码只有一句输出,它在每次被中断的时候会调用。
五、以上是虚拟机中原有的代码。
未完待续。(因工作较忙,需要再多点时间来搞懂运行过程)
本文出自 “sr5220” 博客,请务必保留此出处http://sr5220.blog.51cto.com/5282574/1620507
相关文章推荐
- 从一个简单的时间片轮转多道程序内核代码看操作系统如何运行
- 操作系统是如何工作的-------通过一个简单的时间片轮转多道程序内核代码分析
- linux内核分析作业:操作系统是如何工作的进行:完成一个简单的时间片轮转多道程序内核代码
- 通过一个简单的时间片轮转多道程序内核代码,分析linux操作系统系统
- Linux内核分析课程--完成一个简单的时间片轮转多道程序内核代码,理解操作系统是如何工作的
- VC判断操作系统为Win7的最简单代码!
- Linux 操作系统错误代码解释
- 最小操作系统的代码解释
- 通过简单的Linux内核启动程序代码窥探操作系统的启动原理
- Linux内核分析:完成一个简单的时间片轮转多道程序内核代码
- 一个简单的时间片轮转多道程序内核操作系统工作流程
- 完成一个简单的时间片轮转多道程序内核代码(一)
- 操作系统编写之代码解释
- 如何编写一个简单的嵌入式操作系统 (2)时间片轮转
- 中英文对照 Linux 操作系统错误代码解释
- 基于mykernel的一个简单的时间片轮转多道程序内核代码分析
- 《一个操作系统的实现》(一):不到20行的操作系统代码的解释
- java学习心得(一):代码的简单编译和解释的前期过程
- 代码解释简单的linux系统调用原理
- 一个简单的时间片轮转多道程序内核代码 的实现