Ich arbeite seit sechs Jahren an LINUX und bin ein Kern-Linux-Typ, seit ich meine Karriere unter Linux begonnen habe. Arbeitet mehr an der Administration von Redhat / Centos / Fedora-basierten Verteilungssystemen, mit einigen grundlegenden Bash-Scripting-Kenntnissen.
Jetzt möchte ich tief in die Programmierung eintauchen, um etwas Neues zum Linux-Betriebssystem oder zum Kernel-Space beizutragen oder zu innovieren. (Noch wichtiger an der KVM-Virtualisierungsfront, da ich ein Experte für Virtualisierung bin). Also brauche ich Ihre Anleitung, um meine neue Karriere an der Linux-Programmierfront zu beginnen. Ab sofort plane ich, mit den folgenden Sequenzen zu beginnen:
C
C++
Linux-Kernel-Programmierung
Python
Java
Bitte stellen Sie mir für den Anfang einige gute Weblinks oder Dokumente für Anfänger bis Fortgeschrittene für die oben genannten Sprachen zur Verfügung.
Und dann sind Sie bereit, sich den Kernel-Quellcode und Kernel-spezifische Bücher anzusehen. Je nachdem, was Sie tun möchten, ist es wahrscheinlich eine gute Idee, auch etwas Montage zu übernehmen.
C++ und Java sind ziemlich nutzlos für Linux Kernel-Entwicklung (das ist nicht ein Urteil über beide Sprachen, es ist nur so, dass Linux in C und Assembler geschrieben ist).
Ich versuche nicht, es zu bekommen Off-Topicaber ich würde es wirklich schätzen, wenn Sie auch einige dieser “Kernel-spezifischen” Bücher nennen würden.
Ich habe irgendwo gelesen, dass das Buch von Robert Love über die Kernel-Programmierung ziemlich gut für das ist, was Sie zu erreichen versuchen. Hier der Link zu AMAZON.
Auf der eudyptula-challenge-Site heißt es: Die Eudyptula-Challenge ist eine Reihe von Programmierübungen für den Linux-Kernel, die mit einem sehr einfachen “Hello World”-Kernel-Modul beginnen und sich in der Komplexität steigern, um Patches in den Haupt-Linux-Kernel-Quellbaum aufzunehmen .