Linuxmodule

Sikawo

Registrierter Benutzer
Morgen Forum,
bin erst ein paar Tage BSDler, und habe ein paar Fragen:
1.Kernelmodule haben die Endung '.ko', Objektdateien '.o' , sind das verschiedene Dateiformate oder unterscheiden sie sich nur in der Endung?

2.FreeBSD ist ja (mit den richtigen geladenen Modulen) binärkompatibel zu Linux.
Kann man dann auch Linuxkernelmodule (v.a. für Grafikkarten) mit "kldload" in den Kernel laden ?

3.Und kennt ihr eine Liste der von Xorg unterstützten Grafikkarten?

Die Threads, die ich dazu gefunden hatte, fand ich nicht wirklich hilfreich.
Danke.
 
1. Objektdateien sind ein Zwischenschritt beim Kompilieren. Kernelmodule sind Treiber.

2. Nein.

3. Nein.
 
1. Ich dachte nur, weil früher waren Linuxkernelmodule doch auch bloß Objektdateien, oder?

2. Dann muss ich wohl schaun, ne GraKa von NVidia zu kriegen
Danke
 
Wenn du auf 3D-Beschleunigung mit guter Geschwindigkeit angewiesen bist, dann ist Nvidia wahrscheinlich die einzige Möglichkeit.

Zum Laufen bekommst du sonst aber so ziemlich jede andere Graka, zumindest mit dem VESA-Treiber.
 
Naja, selbst wenn man nicht auf besonders viel Grafik angewiesen ist, macht es mit einer unterstuetzten Grafikkarte doch mehr Spass als nur mit dem VESA-Treiber.
Fuer den Fall wuerde ja eine etwas aeltere nVidia-Karte (bei mir laeuft gerade eine GeForce3 Ti 200) voellig ausreichen. Kostet doch inzwischen kaum noch etwas.
 
1. Ich dachte nur, weil früher waren Linuxkernelmodule doch auch bloß Objektdateien, oder?

Sind sie immer noch. Ladbare Kernelmodule sind Dateien, die bei Bedarf in den Adressraum des Kernels geladen werden, und zwar von einem dynamischen Linker im Kernel selbst. Wie Du vielleicht weißt sind Objektdateien (und auch ausführbare Dateien im ELF, PE/COFF, etc. Format) nicht direkt ausführbar sondern müssen erst von einem Lader geladen werden. Bei Bedarf springt noch ein dynamischer Linker ein, der Bibliotheken etc. nachlädt, erst dann ist eine ausführbare Binärdatei auch wirklich ausführbar. Kernelmodule sind ähnlich zu dynamisch gelinkten Bibliotheken, müssen aber aus verschiedenen Gründen nicht schon beim Start des Kernels mitgeladen werden sondern können nachladbar sein. Ich bin mir im Moment nicht sicher, ob unter FreeBSD Abhängigkeiten zu dynamische Bibliotheken schon beim Laden der Binary aufgelöst werden müssen oder ob die Abhängigkeiten auch zur Laufzeit aufgelöst werden können.

.o, .ko, .so und wie sie alle heißen, sind Dateien, die im Prinzip alle die selben Informationen enthalten, also die verschiedenen Segmente (Daten, Code, etc.), aber zusätzlich noch jedes Format für sich ein klein bisschen mehr und andere Informationen. Ausserdem sind die Formate zwar ähnlich vom Aufbau, aber der Teufel liegt bekanntlich im Detail und deshalb lassen sich die Dateien nicht einfach überall verwenden, also z.B. eine .o Datei als Kernelmodul nachladen.

Also etwas kürzer und einprägsamer: Kernelmodule sind Objektdateien (im weiteren Sinn), aber eben in einem anderen Format wie die .o Objektdateien, die der GCC ausspuckt.
 
Habe gerade im Internet gelesen, dass man die Grafikkartentreiber von Linux, die als '.so' vorliegen, unter X und FreeBSD einsetzen kann. Müsste ja eigentlich gehn, weils ja bloß dynamische Blibliotheken sind, die beim Starten des X-Servers geladen werden, und keine Kernlemodule.
Stimmt das so oder hab ich das falsch verstanden?
 
Naja, selbst wenn man nicht auf besonders viel Grafik angewiesen ist, macht es mit einer unterstuetzten Grafikkarte doch mehr Spass als nur mit dem VESA-Treiber.
Fuer den Fall wuerde ja eine etwas aeltere nVidia-Karte (bei mir laeuft gerade eine GeForce3 Ti 200) voellig ausreichen. Kostet doch inzwischen kaum noch etwas.

Warum schreiben eigentlich immer alle von nvidia? Ich verwende eine ATI Radeon 8500 und habe eigentlich keine größeren Probleme. Enemy Territory läuft auch. Lediglich Beryl mit Xorg7.2 habe ich nicht zum Laufen bekommen, aber das ist ja auch noch im alpha-stadium. Da gibts wohl noch Probleme mit AIGLX.

Viele Grüße
 
Warum schreiben eigentlich immer alle von nvidia? Ich verwende eine ATI Radeon 8500 und habe eigentlich keine größeren Probleme. Enemy Territory läuft auch. Lediglich Beryl mit Xorg7.2 habe ich nicht zum Laufen bekommen, aber das ist ja auch noch im alpha-stadium. Da gibts wohl noch Probleme mit AIGLX.

Viele Grüße
Ich kann nur von meinen eigenen Erfahrungen sprechen, mit ATI gabs bei mir leider bisher nur Aerger. Deshalb ist mir inzwischen nVidia lieber.
Aber das heisst ja nicht, dass das bei jedem so sein muss.
 
Ich kann nur von meinen eigenen Erfahrungen sprechen, mit ATI gabs bei mir leider bisher nur Aerger. Deshalb ist mir inzwischen nVidia lieber.
Aber das heisst ja nicht, dass das bei jedem so sein muss.
Sollte auch keine Kritik sein. Ich lese nur ständig das nvidia unter FreeBSD besser laufen soll habe aber noch nie eine richtige Begründung zu Gesicht bekommen bzw. was genau "besser" mit nvidia läuft. Bisher wurde meine Grafikkarte immer korrekt als Radeon erkannt...von VESA keine Spur.

Viele Grüße
 
Meiner Erfahrung mit Intel, Ati und Nvidia nach laufen tatsächlich die Ati Radeon Karten <= 9250 am besten, weil es für sie den freien radeon Treiber mit 3D Beschleunigung gibt.
Für alle neueren Ati Karten gibt es unter FreeBSD keinen 3D Treiber, nur 2D ati Treiber. Für die ganz neuen Karten aus der 11er Reihe, gibt es dem Höhrensagen nach gar keine Treiber mehr.

Bei Nvidia gibt es den freien nv Treiber für 2D und den closed source Treiber für 3D, jeweils für alle Karten.

Für Intel Chipsätze gibt es 3D Unterstützung bis 915 bzw. mit patch oder ab FreeBSD 7.0 bis 945 durch freie Treiber.

Das ist das Ergebnis meiner Recherchen vom Januar diesen Jahres.


Mit freundlichen Grüßen
Michael Krauß
 
Zurück
Oben