informations sur / proc / pid / sched

8

Je ne sais pas si c'est le bon endroit pour cette question, mais voici:

J'essaie de comprendre les fichiers / proc / pid / sched et / proc / pid / task / tid / sched pour un processus de serveur hautement threadé, mais je n'ai pas pu trouver une bonne explication sur la façon d'interpréter cela fichier (juste quelques bits ici: http://knol.google.com/k/linux-performance-tuning-and-measurement# ). Je suppose que cette entrée dans procfs est liée à des versions plus récentes du noyau qui fonctionnent avec le planificateur CFS?

Distribution CentOS fonctionnant sur une version du noyau 2.6.24.7-149.el5rt avec un patch rt preempt.

Des pensées?

yeux rouges
la source

Réponses:

-1

Vous pouvez trouver plus de documentation sur le fichier / proc / [pid] / sched dans cet article:

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

Regardez les commentaires. La plupart des champs sont expliqués.

Marian HackMan Marinov
la source
5
Il est considéré comme une bonne pratique d'inclure toutes les informations pertinentes de ce site Web. La raison en est qu'un jour, cette page peut devenir indisponible et que votre réponse sera inutile.
Lucas Kauffman
-3

"Man proc" est probablement l'endroit à lire! Du manuel:

/ proc / [pid] / task
(depuis Linux 2.6.0-test6) Il s'agit d'un répertoire qui contient un sous-répertoire pour chaque thread du processus. Le nom de chaque sous-répertoire est l'ID de thread numérique ([tid]) du thread (voir gettid (2)). Dans chacun de ces sous-répertoires, il y a un ensemble de fichiers avec les mêmes noms et contenus que dans les répertoires / proc / [pid]. Pour les attributs partagés par tous les threads, le contenu de chacun des fichiers des sous-répertoires task / [tid] sera le même que dans le fichier correspondant du répertoire parent / proc / [pid] (par exemple, dans un processus multithread , tous les fichiers task / [tid] / cwd auront la même valeur que le fichier / proc / [pid] / cwd dans le répertoire parent, car tous les threads d'un processus partagent un répertoire de travail). Pour les attributs qui sont distincts pour chaque thread, les fichiers correspondants sous task / [tid] peuvent avoir des valeurs différentes (par exemple, différents champs dans chacun des fichiers task / [tid] / status peuvent être différents pour chaque thread).

Dans un processus multithread, le contenu du répertoire / proc / [pid] / task n'est pas disponible si le thread principal s'est déjà terminé (généralement en appelant pthread_exit (3)).

Donc, comprendre fondamentalement / proc / pid / task / signifie comprendre le processus lui-même.

Hans
la source