[OpenBSD]

OpenBSD/sparc


OpenBSD/sparc läuft auf den meisten der 32-Bit-Sun-SPARC-Workstations, einschließlich der sun4-, sun4c- und sun4m-Architekturfamilien (aber nicht auf den 64-Bit-UltraSPARC-Computern, die von OpenBSD/sparc64 unterstützt werden).

Eine Mailingliste für die OpenBSD/sparc- und OpenBSD/sparc64-Portierungen ist unter sparc@openbsd.org erreichbar. Um die OpenBSD/sparc-Mailingliste zu abonnieren, sende eine E-Mail mit dem Inhalt »subscribe sparc« an majordomo@openbsd.org. Bitte lies vorher unsere Mailinglisten-Richtlinien.

Inhaltsverzeichnis


Geschichte:

Die originale 4.4BSD-Portierung wurde von Chris Torek als Vertragsarbeit für den LBL gemacht. Der Quelltext wurde von Chris Mitte 1993 veröffentlicht und Theo de Raadt hat ihn für NetBSD angepasst. Theo und Markus Wild arbeiteten daran, Chris' original SunOS-Kompatibilitätscode in eine vollständige und hochgradig zuverlässige Emulation umzuwandeln. Chuck Cranor portierte den sun4c-Quelltext auf die Sun4-Architektur (die 8 KB Seitengrößen hatte) und Theo fügte seinen Quelltext so ein, dass es möglich war, die selben Kernel und Programme sowohl auf sun4c- als auch auf sun4-Maschinen laufen zu lassen (im Gegensatz zu Suns verschiedenen Kernelumgebungen). Diese letzte Änderung erforderte auch ein Neuschreiben des Gerätekonfigurations-Quelltextes. Kurz nach dem Erscheinen von NetBSD/sparc 1.0 schrieb Peter Galbavy einen ESP-SCSI-Gerätetreiber, der als Ersatz für Chris' sparc-spezifischen Quelltext diente.

An diesem Punkt enstand ein Konflikt zwischen Theo und den Leuten, mit denen er das NetBSD-Projekt gestartet hatte, und Theo wurde von den anderen Mitgliedern der Kerngruppe gezwungen, NetBSD zu verlassen. Nachdem Theo NetBSD verlassen hatte, taten andere Leute etwas für die Portierung: Paul Kranenburg portierte einen Diskettentreiber und begann an der Unterstützung für die 4/400 zu arbeiten. Chuck hat viele Stunden an der Unterstützung für die ie-, xy- und xd-Gerätetreiber gearbeitet.

Theo führte die Arbeit unabhängig davon fort und entwickelte ein paar Zusätze: P4-Unterstützung, flexible Systemstart-Strategie, ein paar Grafiktreiber mit der Hilfe von John Stone und jede Menge Fehlerkorrekturen.

Das Portieren von OpenBSD/sparc auf die sun4m-Plattform wurde von Theo begonnen, aber es tauchten Probleme mit Sehnenscheidenentzündungen an den Handgelenken auf und dazu kamen die Probleme mit der Kerngruppe von NetBSD, wodurch er die Arbeit beenden musste. Die anfängliche sun4m-Arbeit wurde an Aaron Brown aus Harvard abgegeben, der aus Margo Seltzers Forschungsgeldern bezahlt wurde. Dieses anfängliche Material bestand hauptsächlich aus einigen Versuchen, eine pmap-Struktur zu erzeugen, die alle drei MMU-Typen effizient benutzen konnte. Außerdem war David Mille vom UltraLinux-Projekt etwas beteiligt.

Theo und Jason Downs fügten den NetBSD/sparc-Quelltext wieder in OpenBSD ein, sodass OpenBSD/sparc wieder benutzbar wurde. Jason Wright schrieb einige neue SBus-Ethernet-Treiber mit Informationen vom UltraLinux-Projekt und fügte ein paar Dinge aus den NetBSD-Quellen hinzu, um die Stabilität dieser Architektur zu verbessern. Über die Zeit korrigierte Art Grabowski verschiedene Stabilitäts- und Zuverlässigkeitsprobleme und fügte nicht ausführbaren »stack« und »heap« zu den sun4m-Maschinen hinzu. Der Framebuffer und der Konsolenquelltext wurde für OpenBSD 3.2 komplett überarbeitet, was in besserer Anzeigegeschwindigkeit mit einigen Framebuffern und Unterstützung für mehr Karten mündete.

Und die Arbeit geht weiter ...


Momentaner Status:

Zurzeit startet die Hardware, die in der Sektion unterstützte Hardware aufgelistet ist, in den Mehrbenutzer-Modus und unterstützt genügend (wenn nicht sogar alle) der on-board Geräte so gut, dass sie generell nutzbar sind. Eine wachsende Anzahl SBus-Karten von Drittanbietern werden ebenfalls unterstützt.

Das X Fenstersystem funktioniert auf allen unterstützten Framebuffern, einschließlich Multi-head-Konfigurationen. Beschleunigte Server werden zurzeit keine zur Verfügung gestellt, jedoch wird an ihnen gearbeitet.

Ein wichtiger Punkt hinsichtlich OpenBSD/sparc ist, dass es so konstruiert wurde, dass ein einzelner Kernel auf ALLEN UNTERSTÜTZTEN SPARC-Maschinen funktioniert. Wo SunOS und Solaris immer separate »Kernelarchitekturen« hatten, also sun4, sun4c und sun4m, läuft der selbe »GENERIC« OpenBSD-Kernel auf allen unterstützten Modellen.

Die meisten Probleme mit OpenBSD/sparc kommen vermutlich eher aus der breiten Menge SPARC-Prozessoren und Cache-Implementierungen, zusammen mit ihren undokumentierten Fehlern, als aus den allgemeinen Kernelproblemen. Feedback darüber, welche Maschinen zuverlässig arbeiten und welche nicht, wird immer benötigt, insbesondere von neueren Modellen oder Upgrades.


Projekte (in keiner bestimmten Reihenfolge):


Unterstützte Hardware:

Unterstützte Maschinen

Die folgenden SPARC-Klone werden ebenfalls unterstützt: (keine vollständige Liste)

Unterstützte Geräte

Diese Liste an Geräten sagt als Grundlage aus, dass alle »Standard«-sun4c- oder -sun4m-»sparcstation«- oder -»sparcserver«-Maschinen wahrscheinlich funktionieren; bei sun4-Maschinen muss man vorsichtiger sein.

* Wird aufgrund von PROM-Beschränkungen auf sun4c- und sun4e-Typ Maschinen nicht unterstützt.

Nicht unterstützte Maschinen

Nicht unterstützte Geräte

Zuerst sei gesagt, dass es VIELE nicht unterstützte Geräte gibt. Eine vollständige Liste kann vermutlich nicht geschrieben werden.


Hardware-Dokumentation:

Vor 2007 war es extrem schwierig bis unmöglich, die notwendige Hardware-Dokumentation für diese Maschinen zu erhalten. Mitglieder aus unserem Team (speziell David Gwynne) waren maßgeblich daran beteiligt, Sun unter Druck zu setzen und dazu zu überreden, in ihren Archiven zu graben und die Datenblätter zu suchen, die sie intern verfasst haben, um ihren Ingenieuren die Arbeitsweise ihrer Chips zu erklären. Diese Dokumente sind nun unter http://wikis.sun.com/display/FOSSdocs/Home verfügbar. Es fehlen immer noch ein paar Dokumente auf der Seite, darum möchten wir interessierte Entwickler bitten, Sun zu kontaktieren und zusätzliche Informationen anzufordern.


OpenBSD/sparc beziehen und installieren:

Das aktuellste unterstützte OpenBSD/sparc-Release ist OpenBSD 5.2. Hier sind die OpenBSD/sparc 5.2-Installationsanleitungen.

Schnappschüsse werden von Zeit zu Zeit zur Verfügung gestellt, und zwar sowohl hier als auch auf ein paar Spiegelservern. Hier sind ebenfalls die OpenBSD/sparc Schnappschuss-Installationsanleitungen.

Es werden mehrere Installationsmedien bereitgestellt, sodass OpenBSD/sparc per CD, Disketten-Systemstartabbildern auf sun4c und sun4m, »miniroot«-Abbilder für Maschinen ohne Diskettenlaufwerk (und sun4-Maschinen) sowie per Netzwerk- und plattenlose Installationen installiert werden kann.


Supported platforms
www@openbsd.org
$OpenBSD: sparc.html,v 1.95 2012/11/24 07:34:37 ajacoutot Exp $