Ventanas equivalente de INB (), outb (), bajo nivel de E / S
-
25-09-2019 - |
Pregunta
Tengo algo de código de Linux que los monitores de nuestro hardware mediante la recopilación de las temperaturas, voltajes y velocidad de los ventiladores, de la placa base mediante INB (), outb (), INL (), etc. bajo nivel de E / S funciones.
Mi reto es que el código de puerto a ejecutar bajo Windows como una simple aplicación de consola. Pero en lo que desconcierta funciones de Win32 (o .NET) establecen que me permite el permiso de puertos asignados acceso directo a memoria.
Yo no quiero código de un controlador del sistema, ya sea.
Mi preferencia herramienta de Windows es VS2008. (FYI)
¿Es esto posible?
Solución 3
Otros consejos
El nivel de protección predeterminado para los puertos de E / S en Windows impide que un programa en modo usuario de usar INP y las instrucciones en cualquier puerto. Su programa morirá con un GPF. Hay varios pilotos disponibles libremente en torno a ese cambio que el nivel de protección para que el código anillo 3 puede tener acceso a los puertos. Lo cual está bien si usted está interesado en asoma asesinas.
La canónica es inpout32 .
La mayoría de las ubicaciones de hardware se asignan en áreas no accesibles desde el espacio de usuario, por lo que van a necesidad un controlador de dispositivo que proporciona la API deseada.
También puede comprobar el UNIX Guía de migración de aplicaciones anuncio de MSDN.