Maison > Tutoriel système > Linux > le corps du texte

Quels sont les outils et méthodes pour comprendre la lecture et l'édition du code source du développement du noyau Linux ?

WBOY
Libérer: 2024-01-26 22:42:22
avant
1230 Les gens l'ont consulté

Le développement de produits Linux embarqués nécessite souvent d'adapter et de personnaliser le noyau pour répondre aux exigences fonctionnelles et de performances des produits embarqués. Cet article présente plusieurs outils et techniques pour lire le code source du noyau Linux.

Le « développement du noyau Linux » mentionné ici fait uniquement référence au travail de développement lié au noyau et aux pilotes dans le développement de produits Linux embarqués, ce qui est très différent du développement du noyau de l'équipe de développement du noyau dirigée par Linux.

Comme le dit le vieil adage, "Si vous voulez bien faire votre travail, vous devez d'abord affiner vos outils." Face à plusieurs gigaoctets de code du noyau Linux, il est nécessaire de lire, visualiser ou rechercher le code. au code du noyau Linux pour la première fois, tous ont l'impression de ne pas savoir par où commencer. Plusieurs outils de lecture et d'indexation du code source sont recommandés ci-dessous, ce qui peut apporter une certaine commodité pour le développement ultérieur du noyau.

1. SourceInsight

SourceInsight est un outil de lecture et d'édition de code source très populaire sous la plateforme Windows. De nombreux développeurs Linux sont encore habitués à éditer le code source sous Windows, et même l'affichage et l'édition du code source du noyau Linux se font toujours dans SourceInsight.

Remarque : SourceInsight est un logiciel protégé par le droit d'auteur et vous devez résoudre vous-même les problèmes de droits d'auteur.

Après avoir installé le logiciel SourceInsight, créez un nouveau projet, nommez-le et spécifiez l'emplacement de stockage des données, comme le montre la figure 1.1.

Figure 1.1 Nouvelle construction

Cliquez sur le bouton OK pour accéder à l'interface de configuration du projet, comme le montre la figure 1.2.

Figure 1.2 Paramètres du projet

Ajoutez le code source plus tard. Après avoir parcouru et sélectionné le dossier du code source du noyau Linux, cliquez sur le bouton « AddTree » pour ajouter tous les fichiers de l'arborescence du code source du noyau au projet, comme le montre la figure 1.3.

Figure 1.3 Ajout du code source du noyau

Une fois l'ajout terminé, le code source peut être lu et modifié dans SourceInsight, comme le montre la figure 1.4.

Figure 1.4 Lecture du code source dans SourceInsight

2.Éclipse

linux内核源码在线阅读_linux内核代码在线_linux 内核代码阅读工具

Eclipse est un IDE multiplateforme qui peut fonctionner sur les plateformes Windows et Linux. De nombreux développeurs habitués aux opérations d'interface graphique ont l'habitude d'utiliser Eclipse pour afficher et modifier le code source Linux sous Linux.

Si vous visualisez simplement le code source du noyau Linux dans Eclipse, vous n'avez pas besoin d'installer le compilateur croisé à l'avance.

Créez un projet de code source du noyau. Cliquez sur FichieràNouveauàProjet pour commencer à créer le projet, puis sélectionnez Créer un projet C dans l'interface de création de projet, comme le montre la figure 1.5.

Figure 1.5 Créer un projet C

Cliquez sur Nextlinux driver download, remplissez le nom du projet dans la colonne Projectname de l'interface CProject, supprimez la coche "Usedefaultlocation" et cliquez sur Parcourir pour définir l'emplacement sur le répertoire du code source du noyau Linux outil de lecture du code du noyau Linux , comme le montre la figure 1.6. Si vous ne compilez pas le noyau dans Eclipse, vous pouvez utiliser LinuxGCC. Sinon, veuillez utiliser le CrossGCC installé.

Figure 1.6 Exportation du code source du noyau Linux

Cliquez ensuite sur Terminer pour terminer l'exportation du code source du noyau Linux, et le code peut être lu et modifié dans Eclipse, comme le montre la figure 1.7.

Figure 1.7 Parcourir le code source du noyau dans Eclipse

Pour effectuer le suivi du code source dans Eclipse, sélectionnez simplement une fonction, une variable ou une définition de macro et appuyez sur F3. D’autres opérations peuvent être trouvées dans Naviguer.

3.vim+ctags+cscope

Vi/Vim est un éditeur de texte capable d'implémenter efficacement l'édition de code dans Vim. Mais la fonction de Vim est plus qu'un simple éditeur de texte. Grâce à la coopération de ctags et de cscope, Vim peut réaliser des fonctions d'édition et de lecture de code source qui peuvent être appelées un environnement IDE graphique. Dans une certaine mesure, c'est encore plus pratique qu'un IDE graphique. .

L'installation de Vi/Vim n'est plus introduite. Si vous ne travaillez pas sur le serveur distant via une connexion à distance, mais sur le système de bureau local, vous pouvez également utiliser gvim pour démarrer l'éditeur Vi.

lTaglist

Taglist est un plug-in de navigation dans le code source pour Vim, qui peut être obtenu sur le site Web. Après avoir téléchargé le package compressé, décompressez-le localement, puis copiez le répertoire du plugin dans le répertoire décompressé dans le répertoire ~/.vim. S'il n'y a pas de répertoire .vim dans le répertoire hôte, créez simplement un tel répertoire.

lCtags

Ctags est un logiciel utilisé pour former des fichiers de tags. Vous pouvez télécharger le code source pour la compilation et l'installation. Sous Ubuntu, il peut être installé via apt-get :

.

$sudoapt-getinstallexuberant-ctags

Lecture et suivi du code source

Allez dans le répertoire où se trouve le code source que vous souhaitez visualiser, et générez d'abord le fichier de tags :

$ctags-R

Le temps d'exécution dépend du nombre de codes sources. Après exécution, un fichier de tags sera visible dans le répertoire courant. Plus il y a de code source, plus le temps d'exécution est long et plus le fichier de balises formé est volumineux.

Remarque : si le code source est modifié et que le numéro de ligne de code change, le fichier de balises doit être régénéré.

(1) Affichez les définitions des fonctions, etc. Ouvrez un fichier C avec Vi/Vim. Si vous savez où est définie une fonction, une variable, une structure ou une définition de macro, déplacez d'abord le curseur sur la fonction (définition de variable, de structure ou de macro), puis appuyez sur CTRL+]. Après la visualisation, appuyez sur CTRL+o pour revenir à l'emplacement d'origine.

(2) Consultez la liste des fonctions de fichier. Après avoir ouvert le fichier C, entrez : TlistToggle dans l'état de commande de Vi/Vim (la saisie de commande dans Vi/Vim prend en charge l'achèvement), et une barre latérale de liste de fonctions apparaîtra sur le côté droit de Vi/Vim, comme le montre la figure 1.8. Appuyez sur CTRL+ww (w deux fois) pour basculer entre l’affichage de la liste et l’affichage des codes.

Figure 1.8 Barre latérale de la liste des fonctions Vi/Vim

Si vous utilisez Gvim pour ouvrir le fichier C sur le bureau local, il sera plus proche de l'environnement intégré IDE. Double-cliquez sur la fonction avec le clavier pour accéder à l'endroit où la fonction est définie, et CTRL+clic droit de la souris pour revenir à l'emplacement d'origine. Des fonctionnalités plus pratiques doivent être expérimentées en fonctionnement réel.

4、LXR

LXR est l'abréviation de LinuxCrossReferencer. Il s'agit d'un outil de visualisation de code source Linux populaire. En fait, il ne se limite pas à la visualisation du code source Linux. L'adresse de téléchargement de LXR est :, reportez-vous aux instructions d'installation du site Web outil de lecture de code du noyau Linux, il est facile de créer un LXR local sur cette machine pour visualiser le code source.

Si vous ne souhaitez pas créer un LXR local, vous pouvez parcourir directement le site Web LXR déjà configuré. Deux sites Web sont recommandés : l'un est la lecture en ligne du code source Linux fournie par le site Web open source chinois, et le l'autre est le site Web. Ce dernier est plus rapide et fournit Linux. Il y a moins de versions du noyau, tandis que le premier fournit plus de versions. Le site Web propose des fonctions de lecture du code source, de recherche par mot-clé et de recherche de texte libre. Les instantanés des pages Web des deux sont présentés respectivement dans la figure 1.9 et la figure 1.10.

Figure 1.9 Instantané d'une page Web

Figure 1.10 Instantané d'une page Web

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:itcool.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal