自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (1)
  • 收藏
  • 关注

原创 Windows NT 设备驱动程序开发基础(8)

1.4 驱动程序的编译链接,调试、安装和启动。         Windows NT下编写驱动程序的环境被称为为DDK(Device Driver Kit) For Micro soft Windows NT,这是一个命令行下的工作环境。但是在安装DDK之前需要安装Win32 SDK(Software Development Kit)以及 Microsoft Visual C++。        

2002-03-03 18:40:00 2043

原创 Windows NT 设备驱动程序开发基础(5)

1.3.6 缓冲的I/O与直接I/O     在驱动程序创建了一个设备后,可以通过设置DeviceObject的Flags域的值来将设备设 置成缓冲的I/O或直接的I/O。     如果该值被设为DO_BUFFERED_IO,每当I/O管理器收到一个读写请求,就在内存的非分 页区分配一块与用户区大小相同的区域,并将首指针存放于Irp对象的AssociatedIrp.S ystemBuffer中,驱

2002-03-03 09:21:00 1394

原创 Windows NT 设备驱动程序开发基础(6)

1.3.8 同步         如果驱动程序有可能在某时刻有多个部分在同时运行,比如有中断处理过程,或 存在多个设备等,对公共数据或代码的访问就需要同步。方法有       i) 自旋锁(SpinLock)         驱动程序可以在初始化时调用KeInitializeSpinLock创建该对象。在任何代码段 访问被保护的数据之前,先调用KeAcquireSpinLock试图获得该对象的所有

2002-03-03 09:21:00 1324

原创 Windows NT 设备驱动程序开发基础(7)

1.3.9 分层     I/O管理器一个有用的功能是允许把一个驱动程序堆在另一个驱动程序之上。这样在分 编写如网络驱动等有协议栈程序时,可以为各层编写相对独立的代码。当驱动程序需要 在不同的平台上移植时,只需重新编写最下层的硬件驱动程序即可。高层驱动程序的另 一个功能是可以对用户请求进行予处理,比如把较大的请求分割成较小的请求分多次传 给给下层的程序。       1.3.10 设备名及其符号连

2002-03-03 09:21:00 1640

原创 Windows NT 设备驱动程序开发基础(4)

1.3.4 查找硬件信息       i) 系统自动搜索到的设备         在系统启动时,组件NTDETECT会自动地搜索计算机上已有的硬件,包括串、并行 口,键盘,鼠标,以及大多数PCI和EISA设备。并将它们的信息,包括总线类型,总线号 ,用到的端口号及数量、中断向量号、DMA通道号、占用内存等按一定格式添入注册表的 /HKEY_LOCAL_MACHINE/Hardware/descri

2002-03-03 09:20:00 1520

原创 Windows NT 设备驱动程序开发基础(2)

1.2 Windows NT下内核模式设备驱动程序的结构和运行     一般来说,设备驱动程序的任务主要有二:第一,接受来自用户程序的读写请求,把 用户的数据传送给设备,或把从设备接收到的数据传送给用户;第二,轮询设备或处理 来自设备的中断请求,完成数据传输。     1.2.1 驱动程序与用户程序的通信     I/O管理器把每一个设备对上层都抽象成了文件,所以在Win32用户程序中只要通过以 

2002-03-03 09:19:00 1550

原创 Windows NT 设备驱动程序开发基础(3)

1.3 实现细节     1.3.1 内核代码运行级别     Windows NT为它的内核模式的代码分配了不同的级别。在同一个CPU上,级别低的过程 可以被任何级别更大的过程中断。级别由低到高排列如下:     级别名称       运行于该级别的过程     PASSIVE_LEVEL  DriverEntry, Unload, ShutDown, DispatchXxx。     APC_

2002-03-03 09:19:00 1395

原创 Windows NT 设备驱动程序开发基础(1)

一、背景介绍     1.1  Windows NT操作系统的组成   1.1.1 用户模式(User Mode)与内核模式(Kernel Mode)   从Intel 80386开始,出于安全性和稳定性的考虑,该系列的CPU可以运行于ring0 ~ring3从高到低四个不同的权限级,对数据也提供相应的四个保护级别。运行于较 低级别的代码不能随意调用高级别的代码和访问较高级别的数据,而且也只有ri

2002-03-03 09:18:00 2623 1

Visual C++ 2008 SP1 Sample

Visual C++ 2008 SP1 Sample代码 包括了feature pack samples

2010-02-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除