C/C++: bessere Codequalität durch einfache Regeln

Viele der Flüchtigkeitsfehler bei der Programmierung fallen erst viel später auf – meist nach Release des Produktes. Diese sind dann schwer zu debuggen und wären ohne viel Komfort-Verlust bei der Programmierung aufgefallen, wenn man die im Folgenden vorgestellten Tipps befolgt hätte uns so ohne Mühe eine bessere Codequalität abgeliefert hätte. Ich habe diese nach der […]

Read More

Weak Symbols im Linux-Kernel

Versucht man ein Kernel-Modul zu laden, dessen Symbole nicht durch den Kernel-Modul-Loader aufgelöst werden können, schlägt das Laden fehl. Sind diese Symbole jedoch für den Betrieb des Moduls nicht zwingend nötig und man könnte z.B. im Debug-Fall darauf verzichten, muss man im Allgemeinen das Modul ohne die Modul-Abhängigkeiten neu übersetzen. Um sich diesen Schritt zu […]

Read More

Compiler Explorer

Wer intensives Debugging auf Systemebene betreibt, sein System so weit wie möglich optimieren möchte (oder muss), oder auch nur einfach einmal sehen möchte, was der Compiler so tut, wird schnell mit dem Assembler-Code konfrontiert. Es gibt mehrere mehr oder weniger komfortable Möglichkeiten sich die Compiler-Ausgabe im Assembler anzusehen – wer dann aber mit Compiler-Optionen herumspielt […]

Read More