精品资料网 >> 企业管理 >> 管理知识 >> 资料信息

用VisualCCPU特权指令操作(doc 4页)

所属分类:管理知识

文件大小:55 KB

下载要求:10 学币或VIP

点击下载
资料简介:

用VisualCCPU特权指令操作目录:
一、引言
二、基本思路
三、所用到的数据结构
四、具体实现


用VisualCCPU特权指令操作内容提要:
     80x86系列cpu具有四级保护机制。在windows 9x操作系统只使用0级和3级,以便于移植到精简指令集的计算机上,如rs4000等,这些处理器一般只有两个特权级,即系统级和用户级。在windows 9x系统环境,应用程序运行在ring3(3级),如果要运行特权指令就必须进入ring0(0级)。在同一任务内,实现特权级从外层到内层变换的普通途径是使用段间调用指令call,通过调用门进行转移;实现特权级从内层向外层变换的普通途径是使用段间返回指令ret。注意,不能用jmp指令实现任务内不同特权级的变换。调用门描述符转移的入口点包含目标地址的段及偏移量的48位全指针。在执行通过任务门的段间转移指令jmp或段间调用指令call时,指令所含指针内的选择子用于确定调用门,而偏移被丢弃;把调用门内的48位全指针作为目标地址指针进行转移。
      取得全局描述符表,搜索该表找到一个暂时为空的描述符,安装调用门,进行远程调用即可实现特权指令操作, 当type的低4位值为0xc时,这是一个386调用门(callgate)。在vc中定义"门"如下:struct gate{ //门结构类型定义 gdtr长48位,其中高32位为基地址,低16位为界限,gdtr中的段界限以字节为单位。在vc中定义,
  使用mfc appwizard新建一个基于对话框的应用程序,工程名为myring0。在对话框中添加一个按钮,修改id为id_getcr0,修改caption为取cr0的值,同时添加该按钮的消息处理函数void cmyring0dlg::ongetcr0()。新建一个头文件ring0.h并添加到工程中,添加下面的代码到ring0.h中。


 


..............................

上一篇:影响中国企业管理实践(doc 16页)

下一篇:某公司有效的商务文件(doc 11页)

一场生产管理的革命.pdf55

现代钢铁企业设备管理理论培训讲义(PPT 82页)

中国人的管理功夫(doc 36页)

浅论物流企业的存在的浪费问题(doc 11页)

组织行为管理学(ppt 52页)

BZ公司绩效管理体系研究与设计课件(DOC 67页)

精品资料网 m.cnshu.cn

Copyright © 2004- 粤ICP备10098620号-1