Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 49 reacties
Bron: Minix, submitter: MetroidPrime

MimixAndrew Tanenbaum heeft de lancering van Minix 3 aangekondigd. Het legendarische besturingssysteem, dat diende als inspiratie voor de ontwikkeling van Linux, bereikt hiermee zijn derde stabiele versie en dat wordt gevierd met een nieuw logo en een vernieuwde website. Dit lichtgewicht besturingssysteem is vooral ontwikkeld met de nadruk op stabiliteit en veiligheid. Terwijl de eerste twee versies van Minix hoofdzakelijk bedoeld waren als hulpmiddelen bij het opdoen van kennis over besturingssystemen, werd Minix 3 zodanig ontwikkeld dat het ook bruikbaar moet zijn op productiesystemen waar resources schaars zijn en een hoge mate van betrouwbaarheid vereist is. De laatste grote stabiele release dateert van 1996, toen Minix 2.0 gelanceerd werd. De downloadlocatie is in onze Meuktracker te vinden.

Moderatie-faq Wijzig weergave

Reacties (49)

Ik ben benieuwd wie dit gaat gebruiken. Als server-os? Heb je daar niet veel betere alternatieven voor? Als desktop-os zie ik het al helemaal niet zitten.
Minix is vooral opgezet als leer-hulpmiddel. Hoe werkt een kernel van een OS. Je kunt dan wel de source inkijken van linux (en zelfs vanwindows) maar daar is zoveel toegeveogd voor allerlei feature en optimalisaties dat het niet in een redelijke tijd is te doorgronden.

Ik heb het tijdens mijn opleiding ook gehad, maar eerlijk gezegd is vooral het programmeren in C het meest nuttige onderdeel dat ik nog gebruik. (je leerde indertijd programeren in pascal, maar in het bedrijfleven kreeg ik in de praktijk meer met C te maken)

By the way: op de minux pagina staan ook images voor Vmware player(freeware) zodat je eens minux kunt draaien zonder heel je harde schijf om te gooien.
Ik heb het tijdens mijn opleiding ook gehad, maar eerlijk gezegd is vooral het programmeren in C het meest nuttige onderdeel dat ik nog gebruik.
Ik denk dat je het een beetje onderschat :). Als het goed is heb je ook geleerd hoe multitasking werkt, hoe interproces communicatie werkt, hoe device-drivers werken, hoe memory management gedaan wordt en hoe file-systems in elkaar zitten (en nog meer zaken).

Allemaal zaken die onmisbaar zijn wil je een programma schrijven dat het beste uit het onderliggende OS haalt.

Ik durf wel te zeggen dat Windows voornamelijk bloatware is geworden omdat er zo veel programmeurs zijn die amper weten hoe een OS werkt en maar een beetje inefficient wat aan lopen te prutsen.

Ik schrijf voornamelijk server-software voor mijn baan. Ik zou geen fatsoenlijke server hebben kunnen schrijven als ik niet les had gehad in Minix.

Je moet het met Minix zo zien: Minix is bedoeld als het perfekte Operating System. En dat is niet noodzakelijk hezelfde als een Operating System waarmee je het maximale uit je systeem haalt. Stabiliteit en functionaliteit zijn de basisgegevens van een OS. Gebruiksvriendelijkheid, GUI en dergelijke hebben eigenlijk niks met een OS te maken.

Alleen Microsoft heeft die dingen door elkaar gegooid. En wat is het resultaat? Dat Microsoft in feite performance heeft ingeruild voor stabiliteit. En imo is die ruil ook niet zo goed gelukt, want ze hebben meer stabiliteit ingeleverd dan dat ze er performance voor terug gekregen hebben.

Maar goed, Windows is ook echt de vreemde eend in de bijt van de Operating Systems. In de tijd van NT 3.51 en NT 4.0 werd heel veel gesproken over de principes, over hoe het OS zou moeten worden. En de eerste versies waren ook prima. Maar vanaf NT4 SP3 (geloof ik) zijn ze gaan prutsen aan dingen waar ze niet aan hadden moeten komen. Het is begonnen mis te gaan met de inbouw van DirectX, waarvoor allerlei dingen in de kernel zijn gestopt om de security te bypassen. Het is op zich wel grappig dat je dat tijdstip kunt relateren aan het tijdstip dat IBM en Microsoft met ruzie uit elkaar gingen en Microsoft in zijn eentje verder ging..
Dit is meer voor de lol dan voor het nut.
Nee hoor, embedded draait (of draaide) het op de systemen voor freebees registratie bij de trekpleister.

Het enige wat het moet doen is kaartlezen, bedrag aflezen en punten bepalen, terugschrijven naar de kaart en de data tegelijkertijd sturen via een router/digi-access naar de centrale administratie van freebees, zodat het aantal punten op de kaart met het aantal in adminstratie vergeleken kunnen worden. Draaide vrolijk op minix waar je zo met een terminal programma naar kon telnetten.

Ook versie3 zal geschikt zijn voor embedded systeempjes.
Het is meer als educatief gereedschap bedoeld. Als je het boek erbij leest, dan zul je een heleboel leren over Operating Systems.

Veel mensen zullen het dan waarschijnlijk ook veel meer met mij eens zijn in mijn mening over Microsoft Windows.

Please! Lees allemaal dat boek! :+
Ik heb 10 jaar geleden het boek van Tanenbaum ook gelezen, maar hoezo zal het je mening over Windows beinvloeden? Volgens mij klopt de XP kernel aardig met de principes uit dit boek (waarvan mijn versie onderhand wel behoorlijk gedateerd is).
Iemand ontwikkelt toch niet een heel OS puur voor de lol?
De biografie van Linus Torvalds/Linux is getiteld "just for fun"

... en daar ging het hem in eerste instantie ook om: omdat hij een OS programmeren een leuk idee vond en omdat ie op dat moment als student toch geen beter project kon bedenken.

Puur voor de lol dus.
Hij deed het omdat hij de processor van zijn computer wilde leren kennen, en hij was ook niet van plan om het uit te laten groeien tot wat het nu is. En hij had tijd teveel ;) Bovendien was er in die tijd nog geen goed OS voor wat hij wilde, nu heb je tig OS'en die stuk voor stuk heel goed zijn.

Maar goed, ik heb antwoord gekregen op mijn vraag.
Daarnaast was Linus niet gelukkig met de regeltjes rond Minix (o.a. dat je er voor moest betalen IIRC)
Er waren een paar redenen, en die hadden allemaal met educatie te maken.
Doel was Hands-on ervaring met OS design.
- omdat de Source-licenties van de overige OSen te duur waren (en soms restrictief) maakte Tanenbaum zelf (soms met hulp van zijn studenten, later van OSS) Minix en gaf dat in boek vorm uit. Bij het boek zaten floppies met de source en een compiler (tegewoordig CD's).
- Het moest een natuurlijk een (school)voorbeeld van clean design en portabiliteit zijn (vandaar ook de Unix-achtigheid)
- Studenten moesten niet op enorme kosten gejaagd worden doordat het alleen op dure systemen liep. Dus werd de eerste versie voor de 8086 met floppy gemaakt, later werd code voor de 286 toegevoegd. De (eerste) versie van Linus liep alleen op 386 en was minder portable. Dat vond Tanenbaum in die tijd een beetje te gek :)
minix deed het ook prima op een atari st, en ook op een amiga 500.
(natuurlijk niet exact de zelfde versie, maar met erg weinig verschillen.)
Met de 16-bits tak van versie 2 kan je bijvoorbeeld een webserver op die 8086 of 286 onder je bed opzetten :P

Er is trouwens ook een Minix-versie met X-Windows ondersteuning, http://www.minix-vmd.org.
MINIX is puur bedoeld voor educatieve doeleinden.

"For introductory courses on computer operating systems.

Revised to address the latest version of MINIX (MINIX 3), this streamlined, simplified new edition remains the only operating systems text to first explain relevant principles, then demonstrate their applications using a Unix-like operating system as a detailed example. It has been especially designed for high reliability, for use in embedded systems, and for ease of teaching."

Dat wil niet zeggen dat je er niks mee kunt. Hardware support is beperkt, maar je kunt er heel veel mee wat je ook in een uitgebreider OS als Linux kunt.
Minix is onder andere bedoelt voor studenten informatica. Minix kan een student goed leren om een basis OS te maken.

Edit: net een paar seconden te laat met posten :(
Klinkt leuk, en ik heb zeker wel een hoge pet op van Tanenbaum, maar Minix heeft voor zover ik weet een microkernel en is daarmee ongeveer het enige hedendaagse OS met een microkernel. Ik zeg niet dat 't niet zinvol is voor een student om beide kanten van 't verhaal (monolithic- en micro-kernel) te zien, maar ik denk niet dat je microkernels in de praktijk nog veel gaat zien. Er kleven schijnbaar nou eenmaal teveel nadelen aan, met name op het gebied van message passing en synchronisatie. De vraag is dan dus hoeveel tijd je een student daarin wil laten steken.
maar Minix heeft voor zover ik weet een microkernel en is daarmee ongeveer het enige hedendaagse OS met een microkernel
Niet bepaald. MacOS X gebruikt de Mach Microkernel, en laat daarmee zien dat je ook een full-blown besturingssysteem kunt bouwen met een microkernel.

Andere mooie voorbeelden zijn QNX en Symbian OS.

footnote: Een hoop mensen denken dat de kernel van MacOS X gebaseerd is op FreeBSD, maar X heeft alleen het userland afgekeken van BSD. Overigens is het wel zo dat de BSD4.2 en BSD4.3 besturingssystemen van AT&T Labs (4.4Lite is waarop de BSD's gebaseerd zijn) ook microkernel OS'en waren.
Windows NT heeft voor zover ik weet ook een micro kernel
http://www.microsoft.com/...te/featfunc/kernelwp.mspx

En OpenBSD/Darwin, waar Mac OS X op draait heeft ook een micro kernel.
staat op de website

-Applications where very high reliability is required
-Single-chip, small-RAM, low-power, $100 laptop for Third-World children
-Embedded systems (e.g., cameras, DVD recorders, cell phones)
-Applications where the GPL is too restrictive (MINIX 3 uses a BSD-type license)
-Education (e.g., operating systems courses at universities)

Inderdaad geen desktop/server, maar er is meer dan dat. (het is in ieder geval niet bedoeld als verkoophit)
Nou, laatst hier op de unief was het 24-urenloop. Een estafette-loop, 24 uren lang. De estafette-stokjes waren uitgerust met IR-zenders en zo werden de rondjes geteld.
Deze werden geteld door machines onder DOS. Hier zou Minix dus beter geschikt voor zijn, ik zou het systeem iig beter vertrouwen dan DOS. ;-)
Geweldig dat er nogsteeds aan gewerkt wordt. En zeker voor alle ex-VU'ers die computer systems als specialisatie hadden is MINIX toch wel iets speciaals. Het wordt dus spitten om te zien wat er sinds de vorige versie allemaal gewijzigd is. Het Operating Systems boek zal ook wel een ingrijpende update krijgen :Y)
Op de site van Mimix 3, over het te downloaden bestand van 10 (bz2) dan wel 13 (zip) MB:

"Since the MINIX 3 CD-ROM image is quite large, we recommend your getting the bz2 version to speed up your download and to lighten the load on our servers."

13 MB is "quite large" :+
Er staat ook, dat ze verzoeken de images niet via Bittorrent te verspreiden om te voorkomen dat er allerlei verschillende versies rond gaan zwerven.

Dit houdt natuurlijk wel in, dat alle downloads van deze images via hun eigen site lopen... in tegenstelling tot de meeste linux distro's bijvoorbeeld, welke voornamelijk gedownload worden via mirrors...

Kan me dan wel voorstellen dat dat een behoorlijke bandbreedte gaat vreten.
Volgens de site zijn er reeds 12.000 downloads geweest.
12.000 x 13MB = 156GB traffic in een paar dagen tijd...!!
Opzich stelt dat niet zoveel voor als je zou denken ;)
zeg dat ze op een maand zo'n terabyte gebruiken. Dat is maar zo'n 3mbit. 3mbit is niet superveel voor een server aan bandbreedte. En het stelt ook niks voor qua afhandeling van bestanden. Op een P4 3ghz trek je zo meer dan 500mbit vol uit een apache-webserver, zonder grote performance problemen.
Minix is modular opgebouwd: user space drivers rond een micro kernel. Dit in tegenstelling tot Linux; dat is een logge monolitische kernel waarin drivers genoeg rechten bezitten om de kernel tot stilstand te brengen.

Dit is voornamelijk interessant met het oog op research voor teokomstige OS'en (opvolger van Linux kernel). De GNU utilities zullen allemaal wel draaien op Minix en de grote paketten kde/gnome/OOo etc na wat aanpassingen ook.
Ik ben bang dat je aan vijf jaar geleden denkt...

Er kan aan modulariteit nog wel wat verbeteren aan Linux kernels maar tegenwoordig zijn de meeste 'randapparatuur' drivers (eigenlijk alles behalve zaken als geheugenmanagement, IRQ afhandeling e.d.) als modules aan de Linux kernel te koppelen en is de 'kern' van de kernel intern ook in verschillende modules/threads verdeelt.

Het volgende rijtje zijn alle linux-kernel processen op mijn systeem... (ik heb init er maar niet uitgesloopt... dat is natuurlijk geen kernel proces. Alle hogere pid's wel want die zijn niet relevant). De 'kern' van de Linux kernel wordt met iedere versie slanker, de opbouw van het hele kernel-systeem met iedere versie modulairder.... Ik zou nog maar eens de broncode induiken voor je woorden als 'logge monolitische kernel' in je mond neemt. Dat is al prehistorie...

PID TTY STAT TIME COMMAND
1 ? S 0:00 init [3]
2 ? SWN 0:00 \[ksoftirqd/0]
3 ? SW< 0:00 \[events/0]
4 ? SW< 0:00 [khelper]
5 ? SW< 0:00 \[kblockd/0]
7 ? SW 0:06 [pdflush]
6 ? SW 0:00 [khubd]
8 ? SW 0:04 [pdflush]
10 ? SW< 0:00 \[aio/0]
9 ? SW 0:13 [kswapd0]
13 ? SW 0:00 \[scsi_eh_0]
14 ? SW 0:00 \[ahc_dv_0]
15 ? SW 0:00 \[scsi_eh_1]
16 ? SW 0:00 \[scsi_eh_2]
17 ? SW 0:00 [khpsbpkt]
18 ? SW 0:00 \[knodemgrd_0]
19 ? SW 0:00 [kseriod]
Minix is modular opgebouwd: user space drivers rond een micro kernel. Dit in tegenstelling tot Linux; dat is een logge monolitische kernel waarin drivers genoeg rechten bezitten om de kernel tot stilstand te brengen.
Wat je hiermee volgens mij bedoelt te zeggen is dat Linux een grotere performance kent dan Minix. Dat kun je zo wel stellen, denk ik.

Aan de andere kant zit er in Minix minder functionaliteit dan in Linux. Dus dat zou dan toch wel weer wat snelheid moeten schelen.
Een OS met een groot Nederlands tintje :)
dat wordt gevierd met een nieuw logo en een vernieuwde website.
Nou dat zie je er wel van af hoor.... :X
Ik heb nog ergens een 5,25" floppy van 360KB met Minix 1.0 erop. Heb ik nog echt mee gewerkt om te kijken hoe een microkernel OS in elkaar steekt.
De verspreiding is allemaal niet zo'n probleem. De VU heeft behoorlijke capaciteit (al eerder geslashdot) en er wordt gebruik gemaakt van Globule; een content distributie systeem. Deze module voor Apache (en enkele andere hulpmiddelen) zorgt voor verspreiding over verschillende servers. Requests kunnen verdeeld worden over meerdere servers of geforward worden naar een server die "dichtbij" staat. Dat is ook handig voor een verbetering van de beschikbaarheid. Eerder werden al tests gedaan gebruikmakend van machines van andere instellingen.

Ik heb zelf ook wel eens Globule geprobeerd samen met een andere student, maar we hebben nog wat meer tijd nodig ;)
@ Q-t:

156GB veel? Zeg over 3 dagen.

(156 * 8 * 1024) / 3 / 24 / 60 / 60 = 4,93 mbit/sec

Dat kan een oud beeste gemakkelijk leveren, en om een site in de lucht te houden op zo'n average van 5mbit kost ook geen cent zeker niet in amerika :)
Gelukkig wordt het gehost op de Vrije Universiteit.

edit: misschien ook wel niet, maar de meeste dingen die Tanenbaum host worden wel via de VU gedaan, dus het zou zomaar kunnen ;)
[offtopic]
je vergeet dat de bandbreedte niet egaal over de hele dag wordt verspreid
Ik vat het niet, de laatste release was in 1996 (bijna 10 jaar geleden dus) en nu komt er een nieuwe versie uit? En wie wacht hier op? Oke, misschien leuk om in te knutselen op een zondagmiddag maar niet voor serieus gebruik denk ik.
Zou deze release ook gelijk staan aan 10 jaar werk?
Oke, misschien leuk om in te knutselen op een zondagmiddag maar niet voor serieus gebruik denk ik.
Als meer mensen zich eens verdiept hadden in Tanenbaum's lessen en in Minix, dan waren bepaalde huidige Operating Systems een stuk beter geweest.

Dus oordeel niet voordat je het zelf gedaan hebt.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True