Windows磁盘驱动详解:结构与编写入门

4星 · 超过85%的资源 需积分: 12 36 下载量 69 浏览量 更新于2024-09-28 收藏 86KB DOC 举报
本文是一篇深入讲解Windows磁盘驱动的基础教程,主要阐述了磁盘驱动与文件系统驱动的区别以及其在Windows操作系统中的角色。磁盘驱动并非单纯负责硬件交互,而是作为类驱动(class driver),提供了一种抽象化的接口,使得文件系统驱动(file system driver)能够统一处理各种存储设备,无需关注底层硬件的具体细节。 在Windows的驱动架构中,存储设备驱动通常分为两个层次:微端口驱动(miniport driver)和类驱动。微端口驱动是与实际硬件交互的底层驱动,它们负责与特定类型的存储设备通信,如SCSI磁盘。而类驱动,如SCSIdiskclass driver,是位于微端口驱动之上,它定义了一类通用的设备行为,如磁盘的读写操作。编写磁盘驱动时,开发者可以从WinDDK的src\storage\class\disk目录中的示例入手,但要注意这个例子可能过于复杂,更适合进阶学习。 本文推荐了一个更为简洁的实例——文件虚拟磁盘(FileDisk),通过这个例子来展示磁盘驱动的编写方法,它能够创建磁盘设备对象,但与卷设备对象(volume device driver)有所区别。磁盘设备对象代表物理磁盘,侧重于低级的读写操作,而卷设备则是文件系统挂载后的设备,支持更多的文件操作,如文件创建、删除和修改。 在Windows中,磁盘驱动的创建是通过内核函数IoCreateDevice来实现的,这允许开发者动态地生成虚拟磁盘,即使硬件不存在也可以。然而,磁盘是否显示在“我的电脑”中,还需要配合其他信息,如设备路径或驱动程序注册。这篇教程为理解Windows磁盘驱动的工作原理提供了清晰的指导,适合对系统内核编程和驱动开发感兴趣的读者进一步学习。
2019-04-28 上传
Zabbix监控HP服务器硬件信息:HP的服务器在硬件管理方面提供了自己管理工具hpacucli,通过该工具可以查看HP服务器的RAID信息,服务器硬盘等信息。 rpm -ivh hpacucli-9.40-12.0.x86_64.rpm hpacucli ctrl all show config 查看服务器RAID信息,硬盘是否正常。 通过hpacucli ctrl all show config detail命令可以详细地查看RAID和硬盘的信息。 HP官方还有一个hpasmcli管理工具,可以很详细查看服务器CPU,内存,处理器,电源等的温度信息。 1)安装hpasmcli工具(下载地址:HP hpasmcli管理工具) rpm -ivh hp-health-9.40-1602.44.rhel6.x86_64.rpm 通过hpasmcli -s 'show'查看类似于help的帮助信息,监控的时候要重点关注 DIMM(内存)、FANS(风扇)、POWERSUPPLY(电源模块)、SERVER(系统)、CPU、TEMP(温度)等信息。 [root@monitor ~]# hpasmcli -s 'show'Invalid Arguments Zabbix监控总结起来有两种思路:第一就是server通过agentd方式获取数据,这种方式需要定义UserParameter参数,即KEY。第二就是server通过trapper的方式获取数据,即agentd将数据主动sender给server或者proxy。我这里是通过第二种traper的方式监控的。第一种方式server有时候会取不到数据,became not supported: Received value [] is not suitable for value type [Numeric (unsigned)] and data type [Decimal], 会产生上面的错误。 首先查看我监控的脚本,由于是通过traper的思路进行监控,log_file文件依次定义了要监控服务器的主机名(hostname),监控项key以及监控的值。 各种脚本网上都有,这儿主要是工具