web-dev-qa-db-fra.com

Comment comprendre le code source du noyau Linux pour un débutant?

Je suis un étudiant intéressé à travailler sur la gestion de la mémoire, en particulier la composante de remplacement de la page du noyau Linux.

Quels sont les différents guides qui peuvent m'aider à comprendre la source du noyau?

J'ai essayé de lire le livre Comprendre le gestionnaire de mémoire virtuel Linux par Mel Gorman et Comprendre le noyau Linux par Cesati et des poves, mais ils n'expliquent pas le flux de contrôle à travers le code. Ils ne finissent que par l'explication de diverses structures de données utilisées et que les fonctions fonctionnent de différentes fonctions. Cela rend le code plus déroutant.

Mon projet traite de la modification de l'algorithme de remplacement de page dans un noyau traditionnel et d'analyser ses performances pour un ensemble de charges de travail. Y a-t-il une saveur du noyau Linux qui serait plus facile à comprendre (sinon le noyau Linux-2.6.xx)?

12
user16867

L'option de débogueur pourrait être utile.

Une autre chose qui peut être faite après la construction du noyau avec l'option de débogueur consiste à écrire quelques applications de test d'échantillons appelant divers appels système qui invoqueront le noyau et vous pouvez traverser une pièce de code de noyau à la fois et comprendre sa mise en œuvre.

3
Saroj Panda

Dans la section Systèmes d'exploitation de l'article, ce que chaque ordinateur scientifique principal devrait savoir , Matt pourrait recommander Développement du noyau Linux par amour . Bien que ce soit un sujet avancé, le livre est très bien écrit.

2
Anthony

Une façon d'apprendre une base de code complexe est de l'exécuter dans un débogueur et voir où les choses vous emmènent. Pour Linux, il y a le débogueur de noyau Linux .

0
LennyProgrammers