Va a querer ver algunas cosas para determinar 'inactivo' y también explorar la llamada sysinfo() (el enlace señala la diferencia en la estructura que puebla entre varias versiones del kernel).
Linux no gestiona la memoria de forma típica. No solo mire cargas, mire la memoria. En particular,/proc/meminfo tiene una maravillosa línea iniciada con Committed_AS, que le muestra cuánta memoria el kernel prometió a otros procesos. Compare eso con lo que aprendió de sysinfo y tal vez se dé cuenta de que un promedio de carga de un minuto de 0.00 no significa que sea el momento de ejecutar algún programa que quiera asignar 256MB de memoria, ya que el kernel puede estar realmente vendiendo en exceso. Tenga en cuenta que todos los valores completados por sysinfo() están disponibles a través de/proc, sysinfo() es una forma más sencilla de obtenerlos.
También querrá ver cuánto tiempo ha pasado cada núcleo en IOWAIT desde el arranque, que es un indicador aún más sólido de si debe ejecutar un cerdo de recursos de E/S. Tome esa información en/proc/stat, la primera línea contiene el conteo total de todas las CPU. IOWAIT está en el campo 6 °. Por supuesto, si tiene la intención de establecer afinidad a una sola CPU, solo esa CPU sería de interés (sigue siendo el sexto campo, en unidades de USER_HZ o típicamente en 100 'de segundo). Promedio contra btime, también encontrado en/proc/stat.
En resumen, no se limite a mirar los promedios de carga.
EDITAR
Usted no debe suponer una falta de entrada de usuario inactivo .. cron puestos de trabajo tienden a correr .. servicios públicos quedar gravados de vez en cuando, etc. inactivo sigue siendo su mejor suposición basada en la lectura los valores (o tal vez más) que he enumerado anteriormente.
EDIT 2
En cuanto a los valores de perilla en/proc/sys/vm también le da una buena indicación de lo que el usuario piensa está inactivo, en particular, swappiness. Me doy cuenta de que está haciendo esto solo en su propia caja, pero esta es una wiki autoritativa y el título de la pregunta es genérico :)
xscreensaver permite hacerlo mediante xscreensaver-command -watch (ver http://www.jwz.org/xscreensaver/faq.html # watch) – wheleph
Artículo sobre eso: http://wheleph.github.io/2009/12/20/fah-xsreensaver/ – wheleph
¿Por qué cada respuesta supone que está instalado un protector de pantalla? – Bulletmagnet