Pregunta:
Cómo indicar la operación de lectura / escritura del disco a través de LED conectados a GPIO
zebik
2016-02-12 14:07:32 UTC
view on stackexchange narkive permalink

Creo que sé cómo conectar los LED a GPIO, pero quiero iluminarlos cuando hay una operación de lectura / escritura en la tarjeta sd u otro almacenamiento masivo conectado a Pi / ¿Es posible? Estoy haciendo un pequeño proyecto y esta característica sería muy buena si se implementara :)

Dos respuestas:
PNDA
2016-02-12 17:48:09 UTC
view on stackexchange narkive permalink

Eche un vistazo a / proc / diskstats . Muestra muchos detalles por partición . Supervise los cambios y encienda un LED conectado al GPIO. Incluso podría preparar un script y monitorear múltiples particiones individuales. Puede usar LED separados para lecturas, escrituras y actividad hasta el nivel del sector. Básicamente, puede monitorear cualquier dispositivo de almacenamiento en la Pi. En resumen, es mágico.

Esto es lo que significan los campos (desde el extremo izquierdo):

  Qué: / proc / diskstats Fecha: febrero de 2008 Contacto: Jerome Marchand <jmarchan@redhat.com > Descripción : El archivo / proc / diskstats muestra las estadísticas de E / S de los dispositivos de bloque. Cada línea contiene los siguientes 14 campos: 1 - número mayor 2 - mumber menor 3 - nombre del dispositivo 4 - lecturas completadas con éxito 5 - lecturas fusionadas 6 - sectores leídos 7 - tiempo dedicado a la lectura (ms) 8 - escrituras completadas 9 - escrituras fusionadas 10 - sectores escritos 11 - tiempo dedicado a escribir (ms) 12 - E / S actualmente en progreso 13 - tiempo dedicado a realizar E / S (ms) 14 - tiempo ponderado dedicado a realizar E / S (ms) Para obtener más detalles, consulte Documentación / iostatos .txt  

Aquí hay una salida de muestra (la más a la izquierda es la columna / campo 1):

  cat / proc / diskstats viernes 12 de febrero 11:42: 52 2016 1 0 ram0 0 0 0 0 0 0 0 0 0 0 0 1 1 ram1 0 0 0 0 0 0 0 0 0 0 0 1 2 ram2 0 0 0 0 0 0 0 0 0 0 0 1 3 ram3 0 0 0 0 0 0 0 0 0 0 0 1 4 ram4 0 0 0 0 0 0 0 0 0 0 0 1 5 ram5 0 0 0 0 0 0 0 0 0 0 0 1 6 ram6 0 0 0 0 0 0 0 0 0 0 0 1 7 ram7 0 0 0 0 0 0 0 0 0 0 0 1 8 ram8 0 0 0 0 0 0 0 0 0 0 0 1 9 ram9 0 0 0 0 0 0 0 0 0 0 0 1 10 ram10 0 0 0 0 0 0 0 0 0 0 0 1 11 ram11 0 0 0 0 0 0 0 0 0 0 0
1 12 ram12 0 0 0 0 0 0 0 0 0 0 0 1 13 ram13 0 0 0 0 0 0 0 0 0 0 0 1 14 ram14 0 0 0 0 0 0 0 0 0 0 0 1 15 ram15 0 0 0 0 0 0 0 0 0 0 0 7 0 bucle 0 0 0 0 0 0 0 0 0 0 0 0 7 1 bucle1 0 0 0 0 0 0 0 0 0 0 0 7 2 bucle2 0 0 0 0 0 0 0 0 0 0 0 7 3 bucle3 0 0 0 0 0 0 0 0 0 0 0 7 4 bucle4 0 0 0 0 0 0 0 0 0 0 0 7 5 bucle5 0 0 0 0 0 0 0 0 0 0 0 7 6 bucle6 0 0 0 0 0 0 0 0 0 0 0 7 7 lazo7 0 0 0 0 0 0 0 0 0 0 179 0 mmcblk0 527505 88918 29249795 8576080 1132401 1077981 72635057 165882110 0 8239300 174477770 179 1 mmcblk0p1 79 29 1801350 1 0 1 10 0310350179 2 mmcblk0p2 88889 29246402 8575440 1132400 1077981 72635056 165882100 0 8239160 174741170 8 0 sda 110 0 1784 160 0 0 0 0 0110 160 8 1 sda1 104 0 1736140 0 0 0 0 0 90140  

Para Por ejemplo, puede monitorear la columna 4 para que cada vez que cambie, encienda un LED para indicar que una operación de lectura acaba de ocurrir.

Dejaré que tu imaginación piense en algo a partir de esto.

Gran ayuda, ahora tengo algo con lo que empezar. Muchas gracias :)
Una cosa más. ¿Sabría cómo extraer datos de / proc / diskstats, por ejemplo, el que muestra escritura completa, etc. en python? Probablemente sea muy fácil, pero no puedo entenderlo :)
@zebik Mi idea es dividirlo en una matriz y compararlo con una segunda matriz que contiene resultados anteriores, pero no estoy seguro de si esa es la forma más eficiente. Si lo hace, necesitará algunas habilidades matemáticas básicas. Estoy seguro de que la gente de StackOverflow sabrá más.
joan
2016-02-12 15:14:48 UTC
view on stackexchange narkive permalink

Puede usar un GPIO arbitrario para reemplazar el LED de actividad. Sin embargo, eso solo muestra la actividad de MMC.

Consulte / boot / superposiciones / README para act_led_gpio y act_led_trigger.

Hola, gracias por tu aporte. ¿Qué es la actividad de MMC?
MMC (creo que significa tarjeta multimedia) es la tarjeta SD. Puede configurar el LED para que indique otra actividad, pero no creo que la E / S de disco general sea una opción.


Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 3.0 bajo la que se distribuye.
Loading...