Audience for This BookThis book should be an interesting source of information both for people who want to experiment with their computer and for technical programmers who face the need to deal with the inner levels of a Linux box. Note that “a Linux box” is a wider concept than “a PC running Linux,” as many platforms are supported by our operating system, and kernel programming is by no means bound to a specific platform. We
hope this book is useful as a starting point for people who want to become kernel
hackers but don’t know where to start.
On the technical side, this text should offer a hands-on approach to understanding the kernel internals and some of the design choices made by the Linux developers. Although the main, official target of the book is teaching how to write device drivers, the material should give an interesting overview of the kernel implementation as well.
Although real hackers can find all the necessary information in the official kernel sources, usually a written text can be helpful in developing programming skills. The text you are approaching is the result of hours of patient grepping through the kernel sources, and we hope the final result is worth the effort it took.
The Linux enthusiast should find in this book enough food for her mind to start playing with the code base and should be able to join the group of developers that is continuously working on new capabilities and performance enhancements. This book does not cover the Linux kernel in its entirety, of course, but Linux device driver authors need to know how to work with many of the kernel’s subsystems. Therefore, it makes a good introduction to kernel programming in general. Linux is still a work in progress, and there’s always a place for new programmers to jump into the game.
If, on the other hand, you are just trying to write a device driver for your own device, and you don’t want to muck with the kernel internals, the text should be modularized enough to fit your needs as well. If you don’t want to go deep into the details, you can just skip the most technical sections, and stick to the standard API used by device drivers to seamlessly integrate with the rest of the kernel.
Mais comme d'habitude, une relecture s'imposeAssistance pour ce livre.Ce livre devrait être une source d’informations intéressante pour les gens qui veulent expérimenter avec leur ordinateur et pour les codeurs qui font face au besoin de traiter avec les niveaux « intérieurs » d’une boîte Linux. Noter que « une boîte Linux » est un concept plus large que « un ordinateur lançant Linux, » tant de plateformes sont soutenues par notre système d’exploitation, et la programmation du noyau ne doit en aucun être spécifique à la plateforme. Nous espérons que ce livre servira de point de commencement aux gens qui veulent devenir des pirates du noyau mais qui ne savent pas ou commencer.
Côté technique, ce texte devrait offrir une approche pratique afin de comprendre le fonctionnement interne du noyau et certains des choix faits par les développeurs Linux. Bien que principale, l’officielle cible du livre est d’apprendre à écrire des pilotes de périphériques, le matériel devrait donner une vue d’ensemble intéressante de la mise en oeuvre du noyau.
Bien que les vrais pirates peuvent trouver toutes les informations nécessaires dans les sources du noyau principal, habituellement un texte écrit peut être utile dans le développement des compétences informatiques. Le texte que vous approchez est le résultat des heures de patiences au travers des sources du noyau et nous espérons que le résultat final vaut l’effort que nous avons fournit.
L’adepte de Linux devrait trouver en ce livre assez de nourriture pour que son esprit commence à jouer avec la base du code et devrait pouvoir joindre le groupe de développeurs qui travaille sans interruption à de nouvelles possibilités et à améliorer les performances. Ce livre ne couvre pas le noyau Linux dans son intégralité, bien sûr, mais les auteurs de LDD ont besoin de savoir comment fonctionne chaque sous-ensemble du noyau. Par conséquent, il donne une bonne introduction à la programmation générale du noyau. Linux est en continuel développement et il y a toujours une place pour un nouveau codeur qui veut rejoindre la partie.
Si, de l’autre côté, vous êtes juste en train d’essayer d’écrire un pilote pour votre périphérique et que vous ne voulez pas migrer ce dernier dans le noyau, le texte devrait être assez modulable pour pouvoir l’adapter vos besoins. Si vous ne voulez pas rentrer dans les détails, vous pouvez juste passer les sections les plus techniques et vous enfoncer dans l’API standard utilisée par les pilotes pour intégrer partiellement avec le reste du noyau.
Partager