En este caso tenemos que añadir la verdadera lectura del dispositivo para luego pasar este dato al espacio de usuario. La función inb consigue este resultado, admitiendo como argumento la dirección del puerto y devolviendo como resultado el contenido del puerto.
<<puertopar inport>>= /* Leyendo del puerto */ puertopar_buffer = inb(0x378); |
La Tabla 9, equivalente a la Tabla 2, nos muestra esta nueva función.
Tabla 9. Eventos de los drivers y sus funciones asociadas entre el espacio de kernel y el dispositivo hardware.