linux0.11 汇编 切换到任务0 的相关描述
2017-04-30 01:39
197 查看
问题1、 如何判断一个程序的特权级,是不是根据 ds es fs gs 等寄存器的最后两位CPL来判断?? 我这么问是因为下图中的分析(如有不对请指出)
问题2: 上图第13行返回以后开始执行下图代码,我的疑问是:为什么说是中断返回指令启动任务0 ,而不是因为132行 加载 tr 触发了任务0 呢? 是不是因为sched.c中的任务调度有关,内核态不允许任务切换,进入用户态 此时才能触发 132行加载进来的 tr 完成任务切换,这么理解对吗??如果理解正确的话上图第9行已经进入用户态,那么第9行到第13行也属于任务0 的代码喽, 这么理解对吗?
问题2: 上图第13行返回以后开始执行下图代码,我的疑问是:为什么说是中断返回指令启动任务0 ,而不是因为132行 加载 tr 触发了任务0 呢? 是不是因为sched.c中的任务调度有关,内核态不允许任务切换,进入用户态 此时才能触发 132行加载进来的 tr 完成任务切换,这么理解对吗??如果理解正确的话上图第9行已经进入用户态,那么第9行到第13行也属于任务0 的代码喽, 这么理解对吗?
相关文章推荐
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(5)-实现三个任务切换
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(5)-实现三个任务切换
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(1)-实现一个简单的bootloader
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(3)-调试手段和方法
- linux0.11任务切换switch_to
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(2)-可加载执行其他程序的bootloader
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(4)-向现存写数据并响应时钟中断
- 分析Linux 0.11中的任务切换
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(2)-可加载执行其他程序的bootloader
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(1)-实现一个简单的bootloader
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(3)-调试手段和方法
- linux-0.11内核中任务的堆栈切换
- Linux任务切换过程流程分析
- Linux0.11内核--进程相关数据结构
- Linux0.11内核--汇编代码实现C函数
- Linux0.11内核--汇编和C语言混合编程之参数传递
- Linux0.11内核--汇编和C语言混合编程之参数传递
- x86体系下linux中的任务切换与TSS
- Linux 内核--任务0的运行(切换到用户模式)move_to_user_mode
- Linux 0.11汇编的语法问题