Esta mejora es nueva en las versiones Solaris Express 6/05 y Solaris 10 1/06.
Ahora, el SO Solaris ofrece una nueva estructura de interrupciones DDI para las tareas de registro y anulación del registro de interrupciones. También se admiten las interrupciones indicadas de mensajes (MSI, del inglés Message Signalled Interrupts). Las nuevas interfaces de administración permiten controlar las prioridades y capacidades, interrumpir el enmascaramiento y obtener información pendiente.
La estructura incluye estas nuevas interfaces:
ddi_intr_add_handler
ddi_intr_add_softint
ddi_intr_alloc
ddi_intr_block_disable
ddi_intr_block_enable
ddi_intr_clr_mask
ddi_intr_disable
ddi_intr_dup_handler
ddi_intr_enable
ddi_intr_free
ddi_intr_get_cap
ddi_intr_get_hilevel_pri
ddi_intr_get_navail
ddi_intr_get_nintrs
ddi_intr_get_pending
ddi_intr_get_pri
ddi_intr_get_softint_pri
ddi_intr_get_supported_types
ddi_intr_remove_handler
ddi_intr_remove_softint
ddi_intr_set_cap
ddi_intr_set_mask
ddi_intr_set_pri
ddi_intr_set_softint_pri
ddi_intr_trigger_softint
Para obtener el máximo rendimiento de las funciones de la nueva estructura, los desarrolladores deben utilizar las nuevas interfaces. Asimismo, debe evitarse el uso de las siguientes interfaces, que se conservan únicamente por compatibilidad:
ddi_add_intr
ddi_add_softintr
ddi_dev_nintrs
ddi_get_iblock_cookie
ddi_get_soft_iblock_cooki
ddi_iblock_cookie
ddi_idevice_cookie
ddi_intr_hilevel
ddi_remove_intr
ddi_remove_softintr
ddi_trigger_softintr
Para obtener más información, consulte el apartado sobre los controladores de interrupción del manual Writing Device Drivers Consulte también las páginas de comando man de las nuevas interfaces. Todas las páginas de comando man de estas interfaces se encuentran en la sección 9F de la página de comando man.