Kompilieren des Linux-Kernels


8

Nur für die Lernerfahrung habe ich den Linux-Kernel mit verschiedenen Optionen neu kompiliert, installiert und von ihm gebootet. Es war sowohl lehrreich als auch unkompliziert. Ich war jedoch überwältigt von der Vielzahl der verfügbaren Optionen.

Meine Fragen sind:

  1. Ist es sinnvoll, Zeit damit zu verbringen, den Linux-Kernel für meinen speziellen Laptop zu optimieren? Wird es eine signifikante Verbesserung geben?
  2. Gibt es Tools, die die Konfiguration meines Computers lesen und eine Konfiguration vorschlagen können?

'lshw' sollte einen Hinweis auf Ihr genaues Hardware-Setup geben
Journeyman Geek

Antworten:


7

In Wirklichkeit ist der von Ihrer Distribution bereitgestellte Kernel wahrscheinlich der beste für fast alle. So ziemlich jede Distribution kompiliert alle Optionen als Module und lädt die Module dynamisch nach Bedarf.

Dies ist eine gute Übung, insbesondere wenn Sie sich mit dem Kernel vertraut machen möchten. Im täglichen Betrieb sind die Leistungsvorteile auf einem Desktop oder einer Workstation jedoch gering bis gar nicht vorhanden, selbst bei den besten Optimierungen für die Kompilierungszeit für Ihre spezifische CPU.

Wenn Sie dies mehr für die Ausbildung als für die Leistung tun, empfehle ich Ihnen, so viele verschiedene Methoden wie möglich zu kompilieren. Kompilieren Sie alles als Module, kompilieren Sie dann alles statisch (und beobachten Sie, wie groß Ihr Kernel wird), und versuchen Sie dann, einen minimalen Kernel zu kompilieren, ohne dass Ihre gesamte Hardware funktioniert. Probieren Sie einige experimentelle Funktionen aus (wahrscheinlich auf einer VM ;-)). Viel Spass damit.


2

Dies kann die Startzeit erheblich verbessern, jedoch nicht unbedingt die Leistung.

Kleines Add-On hier: Ein statischer Kernel ohne Module kann als etwas sicherer angesehen werden, wenn Sie die Modulunterstützung vollständig deaktivieren.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.