Nytt liv for gammelt OS
Minix Versjon 3.2 er klar til nedlasting. Systemet er oppdatert med kode fra NetBSD, takket være Google.
Operativsystemet Minix er kanskje mest kjent for å ha inspirert den finske hackeren Linus Torvalds til å utvikle Linux.
Nå har Minix fått nytt liv og utvidet funksjonalitet takket være innskudd av kode og biblioteker fra NetBSD, melder Computerworlds nyhetstjeneste.
Mye av arbeidet ble gjort under Googles Summer of Code i fjor sommer, som en del av pågående arbeid for modernisere operativsystemet.
Læreverktøyet
Minix ble utviklet av Andrew Tannenbaum, it-professor ved Vrije Universiteit i Amsterdam. Operativsystemet skulle være en enkel og Unix-variant som studentene kunne bruke, studere og videreutvikle.
Kildekode og operativsystem ble gitt som vedlegg til Tannenbaums legendariske lærebok Operating Systems: Design and Implementation som kom ut i 1987.
På grunn av begrensninger i lisensen for læreboka var Minix desverre ikke fritt tilgjengelig. Dette skal ha vært årsaken til at Linus Torvalds, som da var student ved Universitetet i Helsinki, satte seg ned og begynte å utvikle sitt eget Unix-lignende operativsystem.
Torvalds nye operativsystem fikk navnet Linux.
Selv om Torvalds var inspirert av Tannenbaums lærebok og operativsystem, hadde han egne tanker om hvordan et operativsystem bør være. Den viktigste forskjellen mellom Tannenbaums design og Torvalds Linux er valg av kjernearkitektur.
Tannenbaums Minix brukte en enkel monolistisk kjerne mens Torvalds foretrakk komponentbasert tilnærming.
Kjernen i Linux kan med andre ord utvides med forskjellige kjernemoduler, noe Minix ikke støttet.
En oppdatert versjon av Minix (og læreboka) kom ut i 1997, og versjon 3 kom ut i 2006. Versjon 3 var den første som ble frigjort som friprog med BSD-type lisens.
Beslutningen om å slippe Minix 3 med BSD-lisens i stedet for GPL (som Linux bruker) er at det kan være attraktivt for bedrifter som ønsker å bruke systemet i sine produkter.
Minix Versjon 3.x
Siden Minix opprinnelig var tenkt som læreverktøy valgte Tannenbaum bevisst å holde kodebasen så liten som mulig. Denne beslutningen førte til at operativsystemet bare kunne tilby minimal funksjonalitet.
Tannenbaum frigjorde en utvidet versjon 3.0 i 2005 med tanke på praktisk bruk utover sin opprinnelige funksjon som hjelpemiddel for it-studenter. Minix fikk blant annet et X11-basert grafisk brukergrensesnitt og støtte for bruk av virtuelt minne og en rekke Unix-verktøy.
Med versjon 3.2 er Minix på god vei til til kunne å bli et nyttig system, og koden som er implementert fra NetBSD tilfører en rekke nyttige funksjoner.
Litt ekstra morsomt er at NetBSD-koden er portert til Minix under Googles Summer og Code, som er et årlig tilbud fra Google til it-interessert ungdom. Minix fortsetter dermed på mange måter slik det begynte, som et læreverktøy.
Hva er nytt?
Koden fra NetBSD tilfører en rekke nye funksjoner til Minix. Blant annet har systemet fått en ny innloggingsprosedyre basert på NetBSDs bootloader og passordformat.
I tillegg har Minix fått tilført en rekke nye verktøy og kommandoer som bør være gamle kjente for Unix/Linux-folk: chmod, dd, fsck, gzip, mkdir og mkfs.
Blant bibliotekene som er portet fra NetBSD er libprop og libutil, noe som bør gjøre det lettere å utvikle for plattformen.
Samtidig kan Minix 3.2 tilby en rekke forbedringer og bugfikser. Blant de mer nevneverdige er eksperimentell støtte for SMP, og en ny kompilator i form av Clang.
En godnyhet for interesserte utviklere er at Minix-koden nå bruker det populære versjonskontrollsystemet Git.
Minix 3.2 kan lastes ned fra Minix3.org.