Portabilität und unterstützte Hardware Plattformen
Portabilität
Wir unternehmen größte Bemühungen, alles in die zwei Bereiche
'Machine Dependent' (kurz: MD; maschinenabhängig) und 'Machine
Independent' (kurz: MI; maschinenunabhängig) einzuteilen. Ein
Ethernet Chipset, zum Beispiel, hätte einen einzigen MI Hardware Treiber,
welcher dann mit dem passenden MD Bus Attachment Code für die jeweilige
Plattform kombiniert wird. Aus historischen Gründen sind nicht alle
Treiber so sauber implementiert wie wir es gerne hätten; jeder neue
Treiber wird jedoch in dieser Weise entwickelt und ältere Treiber werden
momentan entsprechend umgewandelt.
Beispielsweise wird ein Treiber wie der fxp(4) Intel i82557, i82558, und
i82559 Ethernet Interface Treiber dazu genutzt, eine Intel EtherExpress Karte
in einem Alpha, Arc, Cats, Cobalt, i386, MacPPC, oder einem PREP System (alles
Systeme, die PCI Slots besitzen) benutzbar zu machen.
Gleichzeitig handhabt der Treiber das Cardbus Device welches den gleichen
Chipsatz nutzt. Dies bedeutet, dass der Code nur einmal geschrieben wurde,
jedoch in vielen verschiedenen Situation wiederverwendet wird. Etwaige Fehler
in der Implementation des Treibers haben, aufgrund der grossen Vielfalt der ihn
benutzenden Systeme, eine gr&oul;ssere Wahrscheinlichkeit schneller entdeckt zu
werden. Das Verständnis der grundlegenden Unterschiede zwischen, z. B.
einem PPC und einem i386 System führen zu einem durchdachteren Design und
letztendlich besserem Code.
Unterstützte Hardware Plattformen
Nicht umsonst ist unser Slogan "Of course it runs NetBSD". Zu diesem
Zeitpunkt bietet NetBSD eine
offizielle Version für 21 Plattformen, und bietet integrierte Ports
für 23 weitere. Doch diese Nummern können täuschen - eine
Plattform (mac68k), beinhaltet 93
verschiedene Maschinen, von denen momentan 89 unterstützt werden (37
vollständig).
(Ihre Meinung)
$NetBSD: portability.html,v 1.13 2004/10/30 22:34:09 jschauma Exp $
Copyright © 1994-2003
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.