9 Punkte von GN⁺ 2024-04-26 | 1 Kommentare | Auf WhatsApp teilen

Quellcode von MS-DOS 4.0 als Open Source veröffentlicht

  • Microsoft veröffentlicht in Zusammenarbeit mit IBM im Geist der Open Innovation den Quellcode von MS-DOS 4.00 unter der MIT-Lizenz
  • Bereits vor 10 Jahren wurden die Quellcodes von MS-DOS 1.25 und 2.0 dem Computer History Museum zur Verfügung gestellt und zur Referenz weiterverbreitet
  • Dieser Code ist historisch bedeutsam und interessant, da es sich um ein Betriebssystem handelt, das vor fast 45 Jahren vollständig in 8086-Assembler geschrieben wurde

Die komplexe und interessante Geschichte von DOS 4.0

  • Die Versionsgeschichte von DOS 4.0 ist etwas komplex und interessant, weil Microsoft gemeinsam mit IBM Teile des Codes entwickelte, zugleich aber auch einen DOS-Zweig namens Multitasking DOS schuf, der nie breit veröffentlicht wurde

Die Entdeckung des britischen Forschers Connor "Starfrost" Hyde

  • Der britische Forscher Connor "Starfrost" Hyde nahm kürzlich Kontakt mit dem ehemaligen Microsoft-CTO Ray Ozzie auf, um über Teile seiner Software-Sammlung zu sprechen
  • Ray entdeckte unter seinen Disketten eine unveröffentlichte Beta-Binärversion von DOS 4.0, die er noch aus seiner Zeit bei Lotus erhalten hatte
  • Starfrost kontaktierte Microsoft OSPO und regte die Veröffentlichung des DOS-4-Quellcodes an – als Teil der Arbeit, die Beziehungen zwischen DOS 4, MT-DOS und dem späteren OS/2 zu dokumentieren
  • Diese neue Ozzie-Beta-Binärversion ist eine viel frühere und unveröffentlichte Version als die späteren Multitasking-DOS-Binärversionen, die im Internet zu finden sind, und enthält auch den Quellcode von ibmbio.com

Weitere Bemühungen von Microsoft

  • Microsofts Scott Hanselman erstellte mit Hilfe des Internet-Archivars und Enthusiasten Jeff Sponaugle Abbilder dieser Originaldisketten und scannte die gedruckten Originalunterlagen des "Ozzie Drop" sorgfältig ein
  • Microsoft hält dies gemeinsam mit seinen Freunden bei IBM für einen spannenden Teil der Betriebssystemgeschichte, der es wert ist, geteilt zu werden
  • Jeff Wilcox und OSPO durchsuchten das Microsoft-Archiv, konnten jedoch den vollständigen Quellcode von MT-DOS nicht finden. Stattdessen fanden sie das heute veröffentlichte MS-DOS 4.00 sowie zusätzliche Beta-Binärdateien, PDF-Dokumente und Disketten-Images
  • Falls weitere Funde gemacht werden, soll diese Veröffentlichung aktualisiert werden

Dank

  • Dank gilt Ray Ozzie, Starfrost, Jeff Sponaugle, Larry Osterman, den Freunden bei IBM OSPO sowie den Entwicklern digitaler Archäologie-Software wie Greaseweazle, Fluxengine, Aaru Data Preservation Suite und HxC Floppy Emulator
  • Vor allem gilt der Dank den ursprünglichen Autoren dieses Codes, von denen einige noch immer bei Microsoft und IBM arbeiten

Selbst ausprobieren

  • Wer diese Software selbst ausführen und erkunden möchte, kann sie direkt auf einem originalen IBM PC XT oder einem neueren Pentium sowie in den Open-Source-Emulatoren PCem und 86Box ausführen

Meinung von GN⁺

  • Die Veröffentlichung dieses Quellcodes scheint ein bedeutsamer Schritt mit großem historischem Wert zu sein. Da MS-DOS einen wichtigen Platz in der PC-Geschichte einnimmt, dürfte das Material für viele Menschen interessant sein
  • DOS 4.0 war jedoch keine fertiggestellte Version und wurde in der Praxis nicht breit genutzt. Daher wäre es wünschenswert, wenn auch die Quellcodes tatsächlich genutzter DOS-Versionen wie 3.x, 5.0 oder 6.x veröffentlicht würden
  • Selbst der Quellcode einer unvollendeten Version ist wertvoll, weil er Einblicke in die damalige OS-Entwicklung und den Codestil ermöglicht. Den Code tatsächlich eingesetzter Produkte zu sehen, hätte jedoch noch einmal einen eigenen Wert
  • Die Wiederherstellung der Inhalte alter Disketten dürfte nicht einfach gewesen sein, war aber offenbar dank der Weiterentwicklung entsprechender Werkzeuge möglich. Es bleibt zu hoffen, dass künftig noch mehr Versuche unternommen werden, vergangene Artefakte durch digitale Archäologie zu rekonstruieren
  • Wenn zusammen mit dem Quellcode auch eine buildfähige Umgebung bereitgestellt würde, wäre das zudem eine Gelegenheit, MS-DOS selbst zu bauen und zu modifizieren. Das wäre eine große Hilfe beim Studium von Legacy-Betriebssystemen

1 Kommentare

 
GN⁺ 2024-04-26
Hacker-News-Kommentare
  • Es gelang, MS-DOS 4.0 auf dem originalen IBM XT mit Monochrome Display Adapter auszuführen. Besonders cool war, dass man mit nur einer Taste zwischen kleinen Spielen, Turbo Pascal und dem DOS-Prompt wechseln konnte.

  • Im MS-DOS-Quellcode scheint die von den Entwicklern häufig verwendete Beschimpfung in Frustmomenten "brain damaged" gewesen zu sein.

  • Es wurde ein kurzes Video geteilt, das MS-DOS 4.0 auf einem IBM XT zeigt. Scott wurde sehr dafür gelobt, dass er die Disketten aufgetrieben und die Freigabe zur Veröffentlichung erhalten hat.

  • Im Quellcode gibt es den Kommentar "Dam multiplan!", was vermutlich eine Beschimpfung gegen die Tabellenkalkulationsanwendung Multiplan ist.

  • Offenbar stammt der Quellcode aus einer Zeit, bevor Richtlinien gegen Schimpfwörter eingeführt wurden.

  • Dass der MS-DOS-Quellcode Open Source geworden ist, ist erfreulich, aber es ist schade, dass dies durch externen Anstoß zustande kam. Es scheint innerhalb der Unternehmen zu wenig Bewegung zu geben, historischen Quellcode aus eigener Initiative offenzulegen.

  • Ab MS-DOS 5.11 waren TSRs, Speicher-Manager und Ähnliches der Erinnerung nach weitgehend stabilisiert. Es wäre interessant, wenn auch der Quellcode der Versionen 5.x und 6.x veröffentlicht würde.

  • Von der Veröffentlichung von MS-DOS 4.0 (1986) bis zur Open-Source-Freigabe (2024) vergingen 37 Jahre. In diesem Tempo dürfte Windows XP wohl etwa 2038 Open Source werden.

  • MS-DOS 4.x kann den Großteil der Vintage-DOS-Software ausführen, daher hat die Veröffentlichung des Quellcodes eine große Bedeutung.

  • MS-DOS 4 war insgesamt keine besonders gute Version und wurde nicht weit verbreitet genutzt. 3.3 oder 5.0 waren üblicher. Es wird gefragt, ob sich noch jemand an die MUF-Liste (Microsofts Undocumented Features) erinnert.