hikaru hat geschrieben: oder betreibe klassisches Reverse-Engineering!
Ist zwar hikarus Zitat, aber ich spreche eher Ghosthacker mit Beispielen an:
Bei Scannern [1] klappt das Reverse Engineering sehr gut. Bei Grafikprozessoren immer noch gut - Stichwort nouveau - aber schon weniger, gibt dann Probleme mit Wärmeentwicklung / Runtertakten / Peformance. Phoronix hat da mal Vergleichstests gemacht. Kannst ja mal "phoronix" googlen. Oder "nouveau".
Bei modernsten WLAN-Treibern mit teilweise analoger Signalverarbeitung für HF, Beamforming und MU-MIMO ist Reverse Engineering wohl weniger möglich. Treiber müssten komplett neu entwickelt werden, dazu müssten alle Schaltungsdetails offenliegen. Des Weiteren steckt schon in der Schaltung (Chips) an sich viel Gehirnschmalz - ganze Abteilungen gibt es für Hardware, andere für Software, andere für Simulation/Tests. In der Firma werden Schnittstellen und Doku ausgetauscht, nach außen wird nur das Notwendigste an Kunden preisgegeben. Reverse Engineering für freie Entwickler ist aufgrund des notwendigen Ersatzes des Wissens und der Erfahrung ganzer Abteilungen mit unterschiedlichen Fachgebieten ziemlich aussichtslos. Und auch ziemlich witzlos - wegen der schnellen Marktentwicklung auf diesem Gebiet!
Jedoch frage ich mich, wie das bei Grafiktreibern klappt. Die Antwort ist wahrscheinlich, dass da nahezu alles digital erfolgt, die IC- Spezifikationen auch der Digitalen Signalprozessoren öffentlich vorliegen, da diese auch anderenorts eingesetzt werden. Dort sind die "Geheimnisse" größtenteils wirklich in der Programmierung. Die Hardware muss man nicht vollständig verstehen.
[1]
http://www.sane-project.org/intro.html
Edit: Noch etwas Bezeichnendes: Linksys baut Router, die für OpenWRT geeignet sind. Dazu kam besipielsweise der WRT1900 AC(S) auf den Markt. Marvell, der WLAN-Hersteller hatte selbst Probleme, einen Treiber bereitzustellen. Mittlerweile funktioniert es wohl. Die Historie sieht man hier
https://forum.openwrt.org/viewtopic.php?id=50173 und hier:
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=256298
Auch viele Closed Source Router funktionieren erst nach einigen Firmware Updates stabil.