Der Entwickler Miod Vallat dokumentiert die Wiederherstellung und Pflege des OpenBSD-Ports für eine Sun-4/260-Serverarchitektur (SPARC) aus dem Jahr 1988 unter Nutzung historischer SMD-Festplatten (Storage Module Device). Im Zuge der Hardware-Instandsetzung identifizierte und behob Vallat einen 19 Jahre alten Logikfehler im OpenBSD-Treiber (xy.c) sowie ein undokumentiertes Limit des Sun-PROM-Monitors, welcher Leseanfragen auf maximal 8216 Bytes beschränkt. Nach dem physikalischen Ausfall der primären CDC-9720-Festplatte beschreibt der Artikel die versuchte Migration auf einen leistungsfähigeren Ciprico Rimfire 3224-Controller mit 512 KB Cache.
Wichtigste Punkte
SMD-Schnittstelle & Spezifikationen: SMD (ANSI X3.91M-1982) war der dominierende Speicherstandard für Hochleistungssysteme der 1980er Jahre mit separaten Steuer- und Datenkabeln. Die Laufwerke (8" oder 11" Platter) erreichten max. 1,25 GB Kapazität, drehten mit 3600 U/min (einige Fujitsu-Modelle mit 3961 U/min), benötigten bis zu 6 A Anlaufstrom und nutzten elektromagnetisch gelöste mechanische Spindelbremsen.
Sun-4/260 Architektur: Basiert auf einer 9U-VMEbus-Hauptplatine mit einer 16,67 MHz SPARC-CPU, FPU, bis zu 128 MB RAM über einen proprietären P2-Bus und verwendet ein Intersil-EEPROM zur Speicherung von Systemparametern (statt des sonst bei SPARC üblichen batteriegepufferten Mostek-SRAMs).
PROM-I/O-Größenlimitierung: Nach der Anhebung der OpenBSD-Dateisystem-Blockgröße von 8 KB auf 16 KB (im Jahr 2003) schlug der Bootprozess fehl. Ursache war eine undokumentierte Beschränkung des Sun-PROM-Monitors auf maximal 8216 Bytes pro I/O-Anfrage. Der Bootloader musste angepasst werden, um große Lesezugriffe in kleinere Blöcke zu stückeln.
19 Jahre alter Kernel-Treiberfehler: Im OpenBSD-Treiber xy.c für Xylogics 450/451-Controller existierte seit dessen Erstellung ein Bug in der Geometrieberechnung. Dies führte bei Schreib-/Lesezugriffen nahe der Kapazitätsgrenze der Festplatte zu fehlerhaften Zylinder-/Kopf-Adressen („Illegal head“). Vallat behob den Bug sowie Folgefehler, die zu Dateisystemkorruption führten.
Controller-Wechsel auf Ciprico Rimfire: Da die CDC 9720-Festplatte trotz Low-Level-Formatierung unter SunOS 4.1.3 mehr bad sectors entwickelte und 2017 ausfiel, versuchte Vallat den Einsatz eines Ciprico Rimfire 3224-Controllers. Der Xylogics-Kompatibilitätsmodus des Rimfire scheitert jedoch derzeit an der Interrupt-/Register-Initialisierung des OpenBSD-Xylogics-Treibers.
Diskussions-Highlights
Vergleich mit NetBSD: Es wird diskutiert, ob NetBSD aufgrund seiner breiten Nischenhardware-Unterstützung und aktiven Retro-Computing-Community diese spezifischen Xylogics-Treiberfehler eventuell bereits früher behoben hatte.
Obsoleszenz-Strategien (OpenBSD vs. Linux): Lob für den Einsatz der OpenBSD-Maintainer, veraltete Architekturen aufrechtzuerhalten. Dies wird der Praxis des Linux-Kernels gegenübergestellt, wo selten genutzter Legacy-Code (z. B. durch Greg Kroah-Hartman) konsequent entfernt wird.
Aktive OpenBSD-Legacy-Ports: Community-Mitglieder verweisen auf neuere dmesg-Logs von OpenBSD 7.9 auf exotischer Hardware wie dem Tadpole SPARCbook 6500 sowie die kontinuierliche Pflege von LUNA-88k (Motorola 88100) und Landisk (Hitachi SuperH Architecture).
Darstellungsprobleme auf Mobilgeräten: Das fehlerhafte Rendering der historischen HTML-Seite auf modernen Smartphones wird auf das Fehlen des <meta name="viewport">-HTML-Tags zurückgeführt. Als Lösung wird die Nutzung des Reader-Modus in Chrome oder Firefox empfohlen.
Glossar
SMD (Storage Module Device): Historischer ANSI-Standard für Festplattenschnittstellen in Großrechnern und Minicomputern mit getrennten Befehls- und Datenleitungen.
VMEbus: Ein paralleler Computerbus-Standard (oft in 6U/9U-Formfaktor), der Ende der 1980er Jahre in Industriecomputern und Servern weit verbreitet war.
PROM-Monitor: Die im Read-Only-Memory eingebragte Firmware von Sun-Workstations, die Hardwaretests durchführt und das Booten des Betriebssystems steuert.
Intersil EEPROM: Nicht-volatiler, elektrisch löschbarer Speicherbaustein zur Sicherung von Hardware-Konfigurationen in frühen Sun-3- und Sun-4-Architekturen.
Mostek NVRAM/SRAM: Batteriegepufferter Baustein zur Speicherung von Systemzeit, MAC-Adresse und Host-ID in späteren SPARC-Systemen.
disklabel: Ein Systemwerkzeug unter BSD-Betriebssystemen zum Lesen und Schreiben von Partitions- und Geometriedaten auf Festplatten.
Ciprico Rimfire: Ein Hochleistungs-SMD-Festplattencontroller mit eigenem Speicher (512 KB Cache) und Vorausschau-Algorithmen (Read-Ahead).
DVMA (Direct Virtual Memory Access): Suns proprietäre Erweiterung von DMA (Direct Memory Access) über die IOMMU zur Adressierung von Arbeitsspeicher durch Erweiterungskarten.