información sobre / proc / pid / sched

8

No estoy seguro de que este sea el lugar correcto para esta pregunta, pero aquí va:

Estoy tratando de darle sentido a los archivos / proc / pid / sched y / proc / pid / task / tid / sched para un proceso de servidor altamente enhebrado, sin embargo, no pude encontrar una buena explicación de cómo interpretar esto archivo (solo algunos bits aquí: http://knol.google.com/k/linux-performance-tuning-and-measurement# ). ¿Supongo que esta entrada en procfs está relacionada con las versiones más nuevas del kernel que se ejecutan con el planificador CFS?

La distribución CentOS se ejecuta en una versión del kernel 2.6.24.7-149.el5rt con parche rt preventivo.

¿Alguna idea?

ojo rojo
fuente

Respuestas:

-1

Puede encontrar más documentación sobre el archivo / proc / [pid] / sched en este artículo:

http://lwn.net/Articles/242900/

Mira los comentarios. La mayoría de los campos se explican.

Marian HackMan Marinov
fuente
55
Se considera una buena práctica incluir toda la información relevante de ese sitio web. La razón de esto es que un día esa página puede dejar de estar disponible y su respuesta será inútil.
Lucas Kauffman el
-3

¡Probablemente "man proc" es el lugar para leer! Del manual:

/ proc / [pid] / task
(desde Linux 2.6.0-test6) Este es un directorio que contiene un subdirectorio para cada hilo en el proceso. El nombre de cada subdirectorio es la ID numérica del subproceso ([tid]) del subproceso (consulte gettid (2)). Dentro de cada uno de estos subdirectorios, hay un conjunto de archivos con los mismos nombres y contenidos que en los directorios / proc / [pid]. Para los atributos que comparten todos los subprocesos, el contenido de cada uno de los archivos en los subdirectorios de tarea / [tid] será el mismo que en el archivo correspondiente en el directorio padre / proc / [pid] (por ejemplo, en un proceso multiproceso , todos los archivos de tareas / [tid] / cwd tendrán el mismo valor que el archivo / proc / [pid] / cwd en el directorio padre, ya que todos los hilos de un proceso comparten un directorio de trabajo). Para los atributos que son distintos para cada subproceso, los archivos correspondientes en la tarea / [tid] pueden tener valores diferentes (por ejemplo, varios campos en cada uno de los archivos de tarea / [tid] / estado pueden ser diferentes para cada subproceso).

En un proceso multiproceso, el contenido del directorio / proc / [pid] / task no está disponible si el subproceso principal ya ha finalizado (normalmente llamando a pthread_exit (3)).

Entonces, básicamente entender / proc / pid / task / significa entender el proceso en sí mismo.

Hans
fuente