下表列出了所有类型驱动程序都可使用的入口点。
表 1–1 用于所有驱动程序类型的入口点
类别/入口点 |
使用情况 |
说明 |
---|---|---|
cb_ops 入口点 | ||
必需 |
获取访问设备的权限。有关其他信息,请参见: |
|
必需 |
放弃访问设备的权限。STREAMS 驱动程序的 close() 版本具有不同于字符驱动程序和块驱动程序的签名。有关其他信息,请参见: |
|
可装入模块入口点 | ||
必需 |
初始化可装入模块。有关其他信息,请参见: 可装入驱动程序接口 |
|
必需 |
准备可装入模块以进行卸载。该入口点是所有驱动程序类型所必需的。有关其他信息,请参见: 可装入驱动程序接口 |
|
必需 |
返回有关可装入模块的信息。有关其他信息,请参见: 可装入驱动程序接口 |
|
自动配置入口点 | ||
必需 |
在初始化过程中向系统添加设备。此外,还用于恢复已暂停的系统。有关其他信息,请参见: attach() 入口点 |
|
必需 |
从系统中分离设备。此外,还用于临时暂停设备。有关其他信息,请参见: detach() 入口点 |
|
必需 |
获取特定于驱动程序的设备信息,如设备编号和相应实例之间的映射。有关其他信息,请参见: |
|
请参见说明 |
确定是否存在非自标识设备。该入口点是无法进行自标识的设备所必需的。有关其他信息,请参见: |
|
内核统计信息入口点 | ||
可选 | ||
可选 | ||
电源管理入口点 | ||
必需 |
设置设备的电源级别。如果不使用此入口点,则设置为 NULL。有关其他信息,请参见: power() 入口点 |
|
其他入口点 | ||
请参见说明 |
报告驱动程序属性信息。除非替换 ddi_prop_op(9F),否则此入口点是必需的。有关其他信息,请参见: |
|
请参见说明 |
系统出现故障时将内存转储到设备。对于出现紧急情况时要用作转储设备的任何设备,该入口点是必需的。有关其他信息,请参见: |
|
identify(9E) |
已过时 |
请勿使用此入口点。请在 dev_ops 结构中将 nulldev(9F) 指定给此入口点。 |