2011-10-15 23 views
5

tengo un extraño texto por 'catting' el archivo/proc/ioports de mi ordenador Linux,¿cuál es el significado del contenido de/proc/ioports

0000-001f : dma1 
0020-003f : pic1 
0040-005f : timer 
0060-006f : keyboard 
0070-007f : rtc0 
... 

Lo que no entiendo es la parte anterior de cada entrada, observe la primera entrada, por ejemplo, ¿significa 31 puertos (0x1f en hex) ocupados por dma1? Si es cierto, no puedo imaginar cuántos puertos en el procesador x86, ya que sé que hay solo varios puertos de 8 bits en una MCU de 8 bits.

¿Alguien puede detallar el significado del número y los puertos del procesador x86?

Respuesta

0

/proc/ioports enumera los rangos y nombres de puertos proporcionados por los controladores de dispositivo en el kernel de Linux de puertos de los rangos de puertos reclamados y manejados por dichos controladores.

Como ejemplo, los puertos io 0070 - 007f son reclamados por el controlador de kernel RTC Linux.

Uno supondría que dichos rangos de puertos reclamados por el controlador corresponden a los rangos de puertos apropiados ofrecidos por el hardware respectivo, pero debe tener en cuenta que en realidad no existe un mecanismo que asegure que realmente lo son.

5

Es la lista de regiones de puertos de E/S que han sido reclamadas por los controladores kernel que usan la función kernel request_region. Por lo tanto, no es la lista completa de puertos o dispositivos de E/S disponibles, solo los que han sido reclamados por varios controladores del kernel. El mecanismo request_region permite que el kernel evite que varios controladores hablen con el mismo dispositivo.

Cuestiones relacionadas