Behoud van software

Uit Computererfgoed

Ga naar: navigatie, zoeken


Software is een verzamelnaam voor alle computerprogramma's en bijbehorende bestanden, die na het opstarten van een computer worden geladen. Software is een brede en daardoor vage term, die vaak wordt gebruikt om verschillende dingen aan te duiden.

In principe is in het onderstaande uitgegaan van software als ‘computerprogrammatuur’.

Inhoud

Invalshoeken

Er zijn verschillende invalshoeken om software te willen bewaren.

  • Ten eerste omdat men een bepaalde content niet wil verliezen, dat kunnen archiefstukken zijn, maar bijvoorbeeld ook digitale foto’s en films.
  • Ten tweede zou men software kunnen bewaren omdat het een bepaalde historische, technologische of culturele ontwikkeling in de computerprogrammatuur weergeeft, die men belangrijk genoeg vindt om te bewaren. Hoewel er wel software wordt verzameld vanuit deze invalshoek, wordt het hier verder niet genoemd. Hier wordt uitgegaan van het verzamelen van oude hardware, die, waneer men deze werkend wil hebben, ook de benodigde software moet bevatten.
  • En ten derde omdat men met “antieke” software de “antieke” hardware kan laten functioneren. In de archiefwereld wordt dit wel de “Computermuseum strategie” genoemd. In de archiefwereld wordt met deze strategie beoogd om de authentieke content in de oorspronkelijke omgeving weer te geven. De content is het doel, de oorspronkelijk hard- en software zijn slechts het middel. Voor archieverings doeleinden is dit uiteindelijk geen bruikbare toepassing, omdat men dan tevens voor iedere soort ‘antiek’ software bestand een bruikbaar ‘antiek’ computerplatform in huis moet hebben. Zie http://www.expertisecentrumdavid.be/davidhandboek/b_bewaren_technologie.htm voor artikel over diverse bewaarstrategieën van digitale archiefdocumenten.

Op deze pagina gaat het om het verzamelen van software vanuit deze laatst genoemde invalshoek, de Computermuseum strategie.

Software van hardware

Omdat, zoals al eerder beschreven, voor een grote groep verzamelaars, waaronder het Computermuseum van de UvA, het belangrijk is om de computers werkend te houden, wordt bij de hardware tevens de daarbij behorende software verzameld, het liefst met de dozen en documentatie van de software. Tevens moeten eventuele registratienummers of licentienummers van de software bewaard zijn en moet er de mogelijkheid zijn om die nummers te activeren.

Problemen bij het behoud van software

Hoewel de nadruk vaak ligt op de vergankelijkheid van de opslagmedia waarop de software staat, is dit niet het grootste probleem bij het verzamelen van software.

Het moeilijkste van het behoud van ‘oude’ software is het verkrijgen ervan. Software is in feite immaterieel.

Software is informatie

Volgens J.G.Zabolitzky, in zijn artikel; “Preserving software: Why and How”, is het verzamelen van software identiek aan het verzamelen van informatie (http://www.cbi.umn.edu/iterations/zabolitzky.html Artikel uit John G. Zabolitzky, "Preserving Software: Why and How," Iterations: An Interdisciplinary Journal of Software History 1 (September 13, 2002): 1-8).

Source code vs object code

Wat het meest belangrijk is om de originele software te kunnen gebruiken is om de source code of broncode van de software te verkrijgen. Source code is het computerprogramma in leesbare vorm. De source code (broncode) bevat de programma-instructies zoals ze zijn geschreven door de programmeur.

Helaas is die code vaak door de bedrijven die de software maakten en gebruikten, vernietigd. De object code is in sommige gevallen nog wel aanwezig, maar is niet zo origineel als de source code en bevat niet dezelfde informatie (http://www.cbi.umn.edu/iterations/zabolitzky.html). Wanneer men iets aan oude software zou willen ‘restaureren’, dan is de source code nodig. In de sourcecode of broncode staan de software instructies zoals de programmeur ze heeft opgesteld. Hierin ligt dus in feite het ‘idee van de maker’ vast. De object code bevat machine leesbare instructies, die door vertaling (compilatie) van de source code verkregen zijn.

De source code kan op papier staan en zou dus in principe goed geconserveerd kunnen worden. De objectcode staat in een binaire, executable (exe.) vorm, leesbaar voor een computer, maar niet voor de mens (Joachim Fischer, Comments on ”Doron Swade, Preserving Information in an object-Centred Culture”, uit Mapping the History of Computing-Software Issues, Paderborn 2000,178). Eventueel is door een bepaalde procedure wel een soort source code te verkrijgen uit de object code, maar dit is nooit gelijk aan het origineel.

Documentatie

Oude programmeertalen zijn over het algemeen heel goed gedocumenteerd, maar verouderde besturingssystemen zijn echter weer een probleem. Zelfs als de documentatie hiervan volledig is, lijkt het geschreven in geheimtaal en zelfs voor de experts van vroeger is deze kennis veelal weggezakt.

Vaak is er ook geen documentatie meer beschikbaar over de installatie en het onderhoud. Maar ook handleidingen, boeken, en rapporten van de ‘antieke’ software zijn vaak moeilijk te vinden (http://www.cbi.umn.edu/iterations/zabolitzky.html).

Computers werkend houden

Voor verzamelaars van oude computers, die hun computers werkend willen houden, is het verzamelen van software een noodzakelijk iets. Het doel is meestal niet om de software in zijn meest originele staat te bewaren, de source code is hierbij niet belangrijk.

Hoewel men graag de software met originele doosjes en handleidingen verzamelt, kan het bij gebrek hieraan ook een software kopie zijn. In feite blijft de immateriële software, wanneer de kopieën goed en ‘bit-perfect’ zijn, in zijn originele staat en kan een oude computer daarmee functioneren.

Degradatie en incompatibility

Problemen met software beginnen pas echt, wanneer er iets aan die rijen bits verandert, hetzij door degradatie van de drager, hetzij door het afspelen van oudere software op nieuwe hardware. Volgens Doron Swade (Voormalig Hoofd Collecties in het Science Museum London) zijn er drie soorten van “software degradatie”.

  • De niet-kritieke degradatie, waarbij een deel van de software niet goed meer functioneert, maar in principe niets relevants aanstuurt.
  • De zichtbare kritieke degradatie: hierbij is het duidelijk dat er iets fout loopt, bijvoorbeeld een cursor die blijft hangen en niet meer reageert.
  • Een kritieke degradatie, die niet (meteen) zichtbare fouten veroorzaakt. Bijvoorbeeld bij een rekenkundig programma, dat verkeerde uitkomsten geeft. (Doron Swade, Collecting Software: Preserving information in an Object-Centred Culture, onderdeel van Mapping the History of Computing-Software Issues, Paderborn 2000,173)

Volgens Joachim Fischer zijn er zeker meer vormen van software degradatie, maar ook in de originele software programmatuur kunnen al fouten staan. Het is van belang om de software bit-perfect te hebben, zodat men de originele versie heeft en hieruit kan afleiden of het origineel al fouten bevatte of dat die er in de loop der tijd bijgekomen zijn.

Er kunnen dus al fouten staan in de originele software, er kunnen fouten ontstaan doordat de dragers van software aangetast worden en er kunnen fouten ontstaan door het kopiëren van de software (Fischer, Comments on ”Doron Swade, Preserving Information in an object-Centred Culture,180).

Software is immaterieel

Behalve misschien bij het industriële erfgoed of bepaalde kunst installaties, is het bij de meeste objecten in musea niet de bedoeling dat ze functioneren. Hun structurele identiteit moet het verhaal vertellen. Bij software in een verzameling of museum ligt dat heel anders. Software heeft in feite geen direct zichtbare identiteit, het is immaterieel en kan alleen een ‘verhaal vertellen’ door te functioneren. Daarbij is het niet alleen afhankelijk van de eigen conditionele staat, maar ook van de hardware waarop het moet functioneren.

Mogelijke oplossingen voor het behoud van software

Verwerven source code

Het is belangrijk om verdere vernietiging van de source code te voorkomen. En om de ontbrekende source code bij de relevante eigenaren actief te verwerven (http://www.cbi.umn.edu/iterations/zabolitzky.html Artikel uit John G. Zabolitzky, "Preserving Software: Why and How," Iterations: An Interdisciplinary Journal of Software History 1 (September 13, 2002): 1-8).

Oude software wordt door diverse computerverzamelaars voor elkaar gekopieerd en doorgestuurd. Ook wordt software via internet uitgewisseld.

Computerverzamelaars over de hele wereld zijn met dit probleem bezig en houden elkaar via internet en e-mail op de hoogte.

Originele doosjes en handleidingen

Stichting Computermuseum in Den Haag bewaart software op een heel eigen manier. Er wordt niets overgezet op andere dragers, maar de software wordt samen met de originele doosjes en handleiding verzameld. Het gaat er hierbij niet om of de software nog afgespeeld kan worden op oude hardware, want dat is niet de doelstelling van dit museum.

Wanneer een computer met de daarbij behorende software nog functioneert dan is dat meegenomen, maar niet het uitgangspunt. Men wil juist graag de originele dragers van software laten zien. Feitelijk gezien wordt hier dus geen software verzameld, maar dragers van software.

Kopiëren en emulatie

Het overzetten van software op moderne dragers is momenteel de meest toegepaste manier om software te bewaren en nog te kunnen gebruiken, hoewel er ook andere methodes zijn, zoals emulatie. Emulatie is in feite het nabootsen van een bepaald computerplatform of computerprogramma op een ander platform of programma. Dit gebeurt door een emulator, een softwareprogramma dat als het ware een extra laag creëert tussen een bestaand platform en het te emuleren platform. Het oude computerspel Donkey Kong bijvoorbeeld, kan nu met behulp van een speciale Commodore 64-emulator gespeeld worden op een moderne PC.

Een emulator ontwikkelen is echter nog moeilijk en zeer tijdrovend. De KB heeft in samenwerking met het Nationaal Archief een emulatieproject opgestart in april 2005. Het project zal eindigen in juli 2007. (http://www.kb.nl/hrd/dd/dd_projecten/projecten_emulatiewatis.html artikel van de Koninklijke Bibliotheek op Internet over emulatie en digitale duurzaamheid.)

Diskettes

Veel spelletjes zijn dus momenteel via het internet te downloaden en op een moderne computer te spelen, maar dat is in feite niet het doel van de computerverzamelaar. De manier om software te bewaren, is bij hen toch wel de software zoveel mogelijk op andere dragers over te zetten, waarbij momenteel de CD-r de meeste voorkeur heeft bij de verzamelaars. Maar juist ook de oude floppies wil men zo veel mogelijk bewaren en gebruiken.

Behoud van opslagmedia

De problemen die voorkomen bij behoud en gebruik van de diverse opslagmedia komen op de pagina Behoud van opslagmedia aan de orde.

Hulpmiddelen