2013年1月12日

Ring0层与Ring3层的通信问题

摘要: 最近在学习驱动编程,因为大部分程序在Ring0层获得信息后,都要传递到Ring3层,将从内核获得的信息交由用户层处理。所以了解Ring3层与Ring0层的通信就显得至关重要了。下面简单介绍Ring3层与Ring0层的通信。首先要了解IRP,开发一个驱动可能要处理各种各样的IRP。应用层为了和驱动通信,首先必须打开设备,然后发送或者接受消息,最后关系这个请求。这个过程涉及到了三个IRP,第一是打开请求;第二是接受或者发送消息;第三个是关闭请求。这三个IRP请求对应的功能号分别为:打开请求的主功能号是IRP_MJ_CREATE,关闭请求的主功能号是IRP_MJ_CLOSE,处理设备控制信息是IRP 阅读全文

posted @ 2013-01-12 15:31 一直很安静— 阅读(1272) 评论(0) 推荐(1) 编辑

导航