WDK中ELAM驱动示例
从MSDN中摘抄的关于这种驱动的简介。链接
简介
从Windows8起,微软为反病毒软件增加的新的驱动类型:Early-Lunch Anti-Malware驱动(ELAM驱动)。这种驱动启动的比其他boot类型的驱动更加早并且提供了回调向ELAM驱动通知正在被加载的普通boot型驱动,以让反病毒软件有机会在boot型驱动加载前检测并决定是否加载这些驱动。
前提条件
ELAM驱动需要具有WHQL签名。微软要求ELAM厂商是Microsoft Virus Initiative (MVI) 或者是Virus Information Alliance (VIA)项目的成员。ELAM驱动需要有微软针对ELAM的特殊签名并且不能导入任何Dll。
ELAM驱动的安装
ELAM驱动的启动类型为SERVICE_BOOT_START,表示驱动由winload加载并随内核的初始化启动。启动组(LoadOrderGroup )则需要设置为Early-Launch表示这是个早期启动驱动。
因为ELAM驱动不能拥有任何设备对象,所以它不能作为PNP驱动