操作系统实验四:保护模式之局部任务(LDT)初探
来源:互联网 发布:可以拍四宫格的软件 编辑:程序博客网 时间:2024/05/16 06:08
通过前几次实验,对于实模式与保护模式间的跳转已经有了充分认知。此次实验与接下来的实验主要集中在认识保护模式下的一些特性,
如多任务的基础(局部任务LDT)、分页机制、中断、异常、I/O等。为了尽可能将实验设计的简单,我尽量将以上实验压缩在引导扇区的
512字节内。为了节省空间,我将pm16.c精简了许多,它只负责跳转到保护模式(程序限制在80字节以内),在pm32.c里会重新加载新
的GDT(程序加载到内存0x7c50处)。
此次实验内容为:
(pm16.c部分)
1.清屏,并跳转到保护模式(pm32.c,内存地址0x7c50)
(pm32.c部分)
1.加载新的GDT
2.为GDT中局部任务描述符设置LDT的基地址
3.显示字符串This is protect model.
4.跳转到局部任务
5.显示字符串This is local model.
6.进入死循环
实验代码如下:
code:run.c(因为重新设置了pm32.c的内存分布,所以需要修改run.c中的几个数据,下面是修改好了的run.c代码)
code:pm.h
code:pm16.c
code:pm32.c
想要实验以上代码的朋友请注意:
1.到杨晓兵大大的博客上下载安装yc09编译器,安装只需一分钟左右。
2.将此次试验中的run.c、pm.h、pm16.c、pm32.c代码拷贝到某个实验用的文件夹内。
3.在安装yc09的目录YC09/example文件夹内找到bochs.exe、BIOS-bochs-latest、VGABIOS-elpin-2.40、x11-pc-us.map四个文件拷贝到试验用的文件夹内。
4.使用yc09编译运行run.c
- 操作系统实验四:保护模式之局部任务(LDT)初探
- 操作系统实验七:保护模式之中断测试实验
- 操作系统实验五:保护模式之初步认知门任务(求助:如何使用其他指令替代或模拟retf指令)
- 保护模式编程之(一)——分段机制与GDT/LDT
- 保护模式编程之(一)——分段机制与GDT/LDT
- 保护模式下ldt使用
- 保护模式学习笔记:LDT
- 保护模式下ldt使用
- 保护模式 学习笔记--LDT
- 《Orange’s 一个操作系统的实现》3.保护模式4----LDT(Local Descriptor Table)
- 操作系统实现之保护模式
- 操作系统实现之保护模式
- 操作系统实验六:保护模式之使用调用门提升特权级
- 操作系统实践之第二章(LDT的使用)
- 操作系统实验四之进程同步实验
- 操作系统实验二:从实模式跳转到保护模式
- 《一个操作系统的实现》(四):让操作系统走进保护模式
- 0.11之路(四):从实模式到保护模式
- 字体引起的用户密码错误
- 遥远的距离
- 电脑也可以为你表白(蛮有意思的)
- 第一个写的程序:万象加钱器模拟
- .NET中栈和堆的比较
- 操作系统实验四:保护模式之局部任务(LDT)初探
- 开始
- Starting tomcat server at localhost has encountered a problem
- sql
- 我的七个建议
- asp.net+C# 服务器安装篇---示使用XSL样式表无法查看XML输入
- 十六句金典话
- qt for mingw-w64
- Ubuntu 安装及配置