0% found this document useful (0 votes)
237 views20 pages

Appendix A - The Tanenbaum-Torvalds Debate

ghgfhf

Uploaded by

testabc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
237 views20 pages

Appendix A - The Tanenbaum-Torvalds Debate

ghgfhf

Uploaded by

testabc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

OpenSources:VoicesfromtheOpenSourceRevolution
1stEditionJanuary1999
1565925823,OrderNumber:5823
280pages,$24.95

AppendixA
TheTanenbaumTorvaldsDebate
WhatfollowsinthisappendixarewhatareknowninthecommunityastheTanenbaum/Linus"Linuxisobsolete"debates.Andrew
TanenbaumisawellrespectedresearcherwhohasmadeaverygoodlivingthinkingaboutoperatingsystemsandOSdesign.Inearly
1992,noticingthewaythattheLinuxdiscussionhadtakenoverthediscussionincomp.os.minix,hedecideditwastimetocommenton
Linux.
AlthoughAndrewTanenbaumhasbeenderidedforhisheavyhandandmisjudgementsoftheLinuxkernel,suchareactiontoTanenbaum
isunfair.WhenLinushimselfheardthatwewereincludingthis,hewantedtomakesurethattheworldunderstoodthatheholdsno
animustowardsTanenbaumandinfactwouldnothavesanctioneditsinclusionifwehadnotbeenabletoconvincehimthatitwould
showthewaytheworldwasthinkingaboutOSdesignatthetime.
WefelttheinclusionofthisappendixwouldgiveagoodperspectiveonhowthingswerewhenLinuswasunderpressurebecausehe
abandonedtheideaofmicrokernelsinacademia.ThefirstthirdofLinus'essaydiscussesthisfurther.
ElectroniccopiesofthisdebateareavailableontheWebandareeasilyfoundthroughanysearchservice.It'sfuntoreadthisandnote
whojoinedintothediscussionyouseeuserhackerKenThompson(oneofthefoundersofUnix)andDavidMiller(whoisamajor
Linuxkernelhackernow),aswellasmanyothers.
Toputthisdiscussionintoperspective,whenitoccurredin1992,the386wasthedominatingchipandthe486hadnotcomeoutonthe
market.MicrosoftwasstillasmallcompanysellingDOSandWordforDOS.Lotus123ruledthespreadsheetspaceandWordPerfectthe
wordprocessingmarket.DBASEwasthedominantdatabasevendorandmanycompaniesthatarehouseholdnamestodayNetscape,
Yahoo,Excitesimplydidnotexist.

From:[email protected](AndyTanenbaum)
Newsgroups:comp.os.minix
Subject:LINUXisobsolete
Date:29Jan9212:12:50GMT

IwasintheU.S.foracoupleofweeks,soIhaven'tcommentedmuchon
LINUX(notthatIwouldhavesaidmuchhadIbeenaround),butforwhat
itisworth,Ihaveacoupleofcommentsnow.

Asmostofyouknow,formeMINIXisahobby,somethingthatIdointhe
eveningwhenIgetboredwritingbooksandtherearenomajorwars,
revolutions,orsenatehearingsbeingtelevisedliveonCNN.Myreal
jobisaprofessorandresearcherintheareaofoperatingsystems.

Asaresultofmyoccupation,IthinkIknowabitaboutwhereoperating
aregoinginthenextdecadeorso.Twoaspectsstandout:

1.MICROKERNELVSMONOLITHICSYSTEM
Mostolderoperatingsystemsaremonolithic,thatis,thewholeoperating
systemisasinglea.outfilethatrunsin'kernelmode.'Thisbinary
containstheprocessmanagement,memorymanagement,filesystemandthe
rest.ExamplesofsuchsystemsareUNIX,MSDOS,VMS,MVS,OS/360,
MULTICS,andmanymore.

Thealternativeisamicrokernelbasedsystem,inwhichmostoftheOS
runsasseparateprocesses,mostlyoutsidethekernel.Theycommunicate
bymessagepassing.Thekernel'sjobistohandlethemessagepassing,
interrupthandling,lowlevelprocessmanagement,andpossiblytheI/O.
ExamplesofthisdesignaretheRC4000,Amoeba,Chorus,Mach,andthe
notyetreleasedWindows/NT.

WhileIcouldgointoalongstoryhereabouttherelativemeritsofthe
twodesigns,sufficeittosaythatamongthepeoplewhoactuallydesign
operatingsystems,thedebateisessentiallyover.Microkernelshavewon.
Theonlyrealargumentformonolithicsystemswasperformance,andthere
isnowenoughevidenceshowingthatmicrokernelsystemscanbejustas
http://www.oreilly.com/openbook/opensources/book/appa.html

1/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

fastasmonolithicsystems(e.g.,RickRashidhaspublishedpaperscomparing
Mach3.0tomonolithicsystems)thatitisnowalloverbuttheshoutin'.

MINIXisamicrokernelbasedsystem.Thefilesystemandmemorymanagement
areseparateprocesses,runningoutsidethekernel.TheI/Odriversare
alsoseparateprocesses(inthekernel,butonlybecausethebraindead
natureoftheIntelCPUsmakesthatdifficulttodootherwise).LINUXis
amonolithicstylesystem.Thisisagiantstepbackintothe1970s.
Thatisliketakinganexisting,workingCprogramandrewritingitin
BASIC.Tome,writingamonolithicsystemin1991isatrulypooridea.

2.PORTABILITY
Onceuponatimetherewasthe4004CPU.Whenitgrewupitbecamean
8008.Thenitunderwentplasticsurgeryandbecamethe8080.Itbegat
the8086,whichbegatthe8088,whichbegatthe80286,whichbegatthe
80386,whichbegatthe80486,andsoonuntotheNthgeneration.In
themeantime,RISCchipshappened,andsomeofthemarerunningatover
100MIPS.Speedsof200MIPSandmorearelikelyinthecomingyears.
Thesethingsarenotgoingtosuddenlyvanish.Whatisgoingtohappen
isthattheywillgraduallytakeoverfromthe80x86line.Theywill
runoldMSDOSprogramsbyinterpretingthe80386insoftware.(Ieven
wrotemyownIBMPCsimulatorinC,whichyoucangetbyFTPfrom
ftp.cs.vu.nl=192.31.231.42indirminix/simulator.)Ithinkitisa
grosserrortodesignanOSforanyspecificarchitecture,sincethatis
notgoingtobearoundallthatlong.

MINIXwasdesignedtobereasonablyportable,andhasbeenportedfromthe
Intellinetothe680x0(Atari,Amiga,Macintosh),SPARC,andNS32016.
LINUXistiedfairlycloselytothe80x86.Notthewaytogo.

Don'tgetmewrong,IamnotunhappywithLINUX.Itwillgetallthepeople
whowanttoturnMINIXinBSDUNIXoffmyback.Butinallhonesty,Iwould
suggestthatpeoplewhowanta**MODERN**"free"OSlookaroundfora
microkernelbased,portableOS,likemaybeGNUorsomethinglikethat.

AndyTanenbaum([email protected])

P.S.Justasarandomaside,AmoebahasaUNIXemulator(runninginuser
space),butitisfarfromcomplete.Ifthereareanypeoplewhowould
liketoworkonthat,pleaseletmeknow.TorunAmoebayouneedafew386s,
oneofwhichneeds16M,andallofwhichneedtheWDEthernetcard.

From:[email protected](LinusBenedictTorvalds)
Subject:Re:LINUXisobsolete
Date:29Jan9223:14:26GMT
Organization:UniversityofHelsinki

Well,withasubjectlikethis,I'mafraidI'llhavetoreply.
Apologiestominixuserswhohaveheardenoughaboutlinuxanyway.I'd
liketobeabletojust"ignorethebait",but...Timeforsome
seriousflamefesting!

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>
>IwasintheU.S.foracoupleofweeks,soIhaven'tcommentedmuchon
>LINUX(notthatIwouldhavesaidmuchhadIbeenaround),butforwhat
>itisworth,Ihaveacoupleofcommentsnow.
>
>Asmostofyouknow,formeMINIXisahobby,somethingthatIdointhe
>eveningwhenIgetboredwritingbooksandtherearenomajorwars,
>revolutions,orsenatehearingsbeingtelevisedliveonCNN.Myreal
>jobisaprofessorandresearcherintheareaofoperatingsystems.

Youusethisasanexcuseforthelimitationsofminix?Sorry,butyou
loose:I'vegotmoreexcusesthanyouhave,andlinuxstillbeatsthe
pantsofminixinalmostallareas.Nottomentionthefactthatmost
ofthegoodcodeforPCminixseemstohavebeenwrittenbyBruceEvans.

Re1:youdoingminixasahobbylookatwhomakesmoneyoffminix,
andwhogiveslinuxoutforfree.Thentalkabouthobbies.Makeminix
freelyavailable,andoneofmybiggestgripeswithitwilldisappear.
Linuxhasverymuchbeenahobby(butaseriousone:thebesttype)for
me:Igetnomoneyforit,andit'snotevenpartofanyofmystudies
intheuniversity.I'vedoneitallonmyowntime,andonmyown
machine.

Re2:yourjobisbeingaprofessorandresearcher:That'sonehellofa
goodexcuseforsomeofthebraindamagesofminix.Icanonlyhope(and
assume)thatAmoebadoesn'tsucklikeminixdoes.

>1.MICROKERNELVSMONOLITHICSYSTEM

True,linuxismonolithic,andIagreethatmicrokernelsarenicer.With
alessargumentativesubject,I'dprobablyhaveagreedwithmostofwhat
yousaid.Fromatheoretical(andaesthetical)standpointlinuxlooses.
IftheGNUkernelhadbeenreadylastspring,I'dnothavebotheredto
evenstartmyproject:thefactisthatitwasn'tandstillisn't.Linux
winsheavilyonpointsofbeingavailablenow.

>MINIXisamicrokernelbasedsystem.[deleted,butnotsothatyou
>missthepoint]LINUXisamonolithicstylesystem.

http://www.oreilly.com/openbook/opensources/book/appa.html

2/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

Ifthiswastheonlycriterionforthe"goodness"ofakernel,you'dbe
right.Whatyoudon'tmentionisthatminixdoesn'tdothemicrokernel
thingverywell,andhasproblemswithrealmultitasking(inthe
kernel).IfIhadmadeanOSthathadproblemswithamultithreading
filesystem,Iwouldn'tbesofasttocondemnothers:infact,I'ddomy
damndesttomakeothersforgetaboutthefiasco.

[yes,Iknowtherearemultithreadinghacksforminix,buttheyare
hacks,andbruceevanstellsmetherearelotsofraceconditions]

>2.PORTABILITY

"Portabilityisforpeoplewhocannotwritenewprograms"
me,rightnow(withtongueincheek)

Thefactisthatlinuxismoreportablethanminix.What?Ihearyou
say.It'struebutnotinthesensethatastmeans:Imadelinuxas
conformanttostandardsasIknewhow(withouthavinganyPOSIXstandard
infrontofme).Portingthingstolinuxisgenerally/much/easier
thanportingthemtominix.

Iagreethatportabilityisagoodthing:butonlywhereitactuallyhas
somemeaning.Thereisnoideaintryingtomakeanoperatingsystem
overlyportable:adheringtoaportableAPIisgoodenough.Thevery
/idea/ofanoperatingsystemistousethehardwarefeatures,andhide
thembehindalayerofhighlevelcalls.Thatisexactlywhatlinux
does:itjustusesabiggersubsetofthe386featuresthanother
kernelsseemtodo.Ofcoursethismakesthekernelproperunportable,
butitalsomakesfora/much/simplerdesign.Anacceptabletradeoff,
andonethatmadelinuxpossibleinthefirstplace.

Ialsoagreethatlinuxtakesthenonportabilitytoanextreme:Igot
my386lastJanuary,andlinuxwaspartlyaprojecttoteachmeabout
it.Manythingsshouldhavebeendonemoreportablyifitwouldhave
beenarealproject.I'mnotmakingoverlymanyexcusesaboutit
though:itwasadesigndecision,andlastaprilwhenIstartedthe
thing,Ididn'tthinkanybodywouldactuallywanttouseit.I'mhappy
toreportIwaswrong,andasmysourceisfreelyavailable,anybodyis
freetotrytoportit,eventhoughitwon'tbeeasy.

Linus

PS.Iapologiseforsometimessoundingtooharsh:minixisniceenough
ifyouhavenothingelse.Amoebamightbeniceifyouhave510spare
386'slyingaround,butIcertainlydon't.Idon'tusuallygetinto
flames,butI'mtouchywhenitcomestolinux:)

From:[email protected](AndyTanenbaum)
Subject:Re:LINUXisobsolete
Date:30Jan9213:44:34GMT

Inarticle<[email protected]>[email protected].
FI(LinusBenedictTorvalds)writes:
>Youusethis[beingaprofessor]asanexcuseforthelimitationsofminix?
ThelimitationsofMINIXrelateatleastpartlytomybeingaprofessor:
Anexplicitdesigngoalwastomakeitrunoncheaphardwaresostudents
couldaffordit.Inparticular,foryearsitranonaregular4.77MHZPC
withnoharddisk.Youcoulddoeverythinghereincludingmodifyandrecompile
thesystem.Justfortherecord,asofabout1yearago,thereweretwo
versions,oneforthePC(360Kdiskettes)andoneforthe286/386(1.2M).
ThePCversionwasoutsellingthe286/386versionby2to1.Idon'thave
figures,butmyguessisthatthefractionofthe60millionexistingPCsthat
are386/486machinesasopposedto8088/286/680x0etcissmall.Amongstudents
itisevensmaller.Makingsoftwarefree,butonlyforfolkswithenoughmoney
tobuyfirstclasshardwareisaninterestingconcept.
Ofcourse5yearsfromnowthatwillbedifferent,but5yearsfromnow
everyonewillberunningfreeGNUontheir200MIPS,64MSPARCstation5.

>Re2:yourjobisbeingaprofessorandresearcher:That'sonehellofa
>goodexcuseforsomeofthebraindamagesofminix.Icanonlyhope(and
>assume)thatAmoebadoesn'tsucklikeminixdoes.
Amoebawasnotdesignedtorunonan8088withnoharddisk.

>Ifthiswastheonlycriterionforthe"goodness"ofakernel,you'dbe
>right.Whatyoudon'tmentionisthatminixdoesn'tdothemicrokernel
>thingverywell,andhasproblemswithrealmultitasking(inthe
>kernel).IfIhadmadeanOSthathadproblemswithamultithreading
>filesystem,Iwouldn'tbesofasttocondemnothers:infact,I'ddomy
>damndesttomakeothersforgetaboutthefiasco.
Amultithreadedfilesystemisonlyaperformancehack.Whenthereisonly
onejobactive,thenormalcaseonasmallPC,itbuysyounothingandadds
complexitytothecode.Onmachinesfastenoughtosupportmultipleusers,
youprobablyhaveenoughbuffercachetoinsureahitcachehitrate,in
whichcasemultithreadingalsobuysyounothing.Itisonlyawinwhenthere
aremultipleprocessesactuallydoingrealdiskI/O.Whetheritisworth
makingthesystemmorecomplicatedforthiscaseisatleastdebatable.

Istillmaintainthepointthatdesigningamonolithickernelin1991is
afundamentalerror.Bethankfulyouarenotmystudent.Youwouldnot
getahighgradeforsuchadesign:)

>Thefactisthatlinuxismoreportablethanminix.What?Ihearyou
http://www.oreilly.com/openbook/opensources/book/appa.html

3/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

>say.It'struebutnotinthesensethatastmeans:Imadelinuxas
>conformanttostandardsasIknewhow(withouthavinganyPOSIXstandard
>infrontofme).Portingthingstolinuxisgenerally/much/easier
>thanportingthemtominix.
MINIXwasdesignedbeforePOSIX,andisnowbeing(slowly)POSIXizedas
everyonewhofollowsthisnewsgroupknows.Everyoneagreesthatuserlevel
standardsareagoodidea.Asanaside,Icongratulateyouforbeingable
towriteaPOSIXconformantsystemwithouthavingthePOSIXstandardinfront
ofyou.Ifinditdifficultenoughafterstudyingthestandardatgreatlength.

Mypointisthatwritinganewoperatingsystemthatiscloselytiedtoany
particularpieceofhardware,especiallyaweirdoneliketheIntelline,
isbasicallywrong.AnOSitselfshouldbeeasilyportabletonewhardware
platforms.WhenOS/360waswritteninassemblerfortheIBM360
25yearsago,theyprobablycouldbeexcused.WhenMSDOSwaswritten
specificallyforthe8088tenyearsago,thiswaslessthanbrilliant,as
IBMandMicrosoftnowonlytoopainfullyrealize.WritinganewOSonlyforthe
386in1991getsyouyoursecond'F'forthisterm.Butifyoudorealwell
onthefinalexam,youcanstillpassthecourse.

Prof.AndrewS.Tanenbaum([email protected])

From:[email protected](DavidFeustel)
Subject:Re:LINUXisobsolete
Date:30Jan9218:57:28GMT
Organization:DAFCOAnOS/2Oasis

[email protected](AndyTanenbaum)writes:

>Istillmaintainthepointthatdesigningamonolithickernelin1991is
>afundamentalerror.Bethankfulyouarenotmystudent.Youwouldnot
>getahighgradeforsuchadesign:)

That'sok.Einsteingotlousygradesinmathandphysics.

From:[email protected](PeteFrench.)
Subject:Re:LINUXisobsolete
Date:31Jan9209:49:37GMT
Organization:ElectronicsDepartment,UniversityofYork,UK

inarticle<[email protected]>,[email protected]
(DavidMegginson)says:
>
>Inarticle<[email protected]>[email protected]
(David>Feustel)writes:
>>
>>That'sok.Einsteingotlousygradesinmathandphysics.
>
>AndDanQuaylegotlowgradesinpoliticalscience.Ithinkthatthere
>aremoreDanQuaylesthanEinsteinsoutthere...;)

Whatahorriblethought!

Butonthepointsaboutmicrokernelvmonolithic,isntthispartlyan
artifactofthelanguagebeingused?MINIXmaywellbedesignedasa
microkernelsystem,butintheendyoustillendupwithalarge
monolithicchunkofbinarydatathatgetsloadedinas"theOS".Isntit
writtenasseparateprogramssimplybecauseCdoesnotsupporttheidea
ofmultipleprocesseswithinasinglepieceofmonolithiccode.Isthere
anyrealdifferencebetweenamicrokernelwrittenasseveralpiecesofC
andamonolithickernelwritteninsomethinglikeOCCAM?Iwouldhave
thoughtthatinthiscasethemonolithicdesignwouldbeabetterone
thanthemicorkernelstylesincewiththeadvantageofinbuilt
languageconcurrencythekernelcouldbemadeevenmoremodularthanthe
MINIXoneis.

AnyoneforMINOX:)

bat.

From:[email protected](KenThompson)
Subject:Re:LINUXisobsolete
Date:3Feb9223:07:54GMT
Organization:GeorgiaInstituteofTechnology

viewpointmaybelargelyunrelatedtoitsusefulness.Manyifnot
mostofthesoftwareweuseisprobablyobsoleteaccordingtothe
latestdesigncriteria.Mostuserscouldprobablycarelessifthe
internalsoftheoperatingsystemtheyuseisobsolete.Theyare
rightlymoreinterestedinitsperformanceandcapabilitiesatthe
userlevel.

Iwouldgenerallyagreethatmicrokernelsareprobablythewaveof
thefuture.However,itisinmyopinioneasiertoimplementa
monolithickernel.Itisalsoeasierforittoturnintoamessin
ahurryasitismodified.

Regards,
http://www.oreilly.com/openbook/opensources/book/appa.html

4/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

Ken

From:[email protected](KevinBrown)
Subject:Re:LINUXisobsolete
Date:4Feb9208:08:42GMT
Organization:UniversityofHouston

Inarticle<[email protected]>[email protected](KenThompson)writes:
>viewpointmaybelargelyunrelatedtoitsusefulness.Manyifnot
>mostofthesoftwareweuseisprobablyobsoleteaccordingtothe
>latestdesigncriteria.Mostuserscouldprobablycarelessifthe
>internalsoftheoperatingsystemtheyuseisobsolete.Theyare
>rightlymoreinterestedinitsperformanceandcapabilitiesatthe
>userlevel.
>
>Iwouldgenerallyagreethatmicrokernelsareprobablythewaveof
>thefuture.However,itisinmyopinioneasiertoimplementa
>monolithickernel.Itisalsoeasierforittoturnintoamessin
>ahurryasitismodified.

Howdifficultisittostructurethesourcetreeofamonolithickernel
suchthatmostmodificationsdon'thavealargenegativeimpactonthe
source?Whatsortsofpitfallsdoyourunintointhissortofendeavor,
andwhatsuggestionsdoyouhavefordealingwiththem?

IguesswhatI'maskingis:howdifficultisittoorganizethesource
suchthatmostchangestothekernelremainlocalizedinscope,even
thoughthekernelitselfismonolithic?

Ifigureyou'vegotyearsofexperiencewithmonolithickernels:),
soI'dthinkyou'dhavethebestshotatansweringquestionslike
these.

KevinBrown

From:[email protected](RandyBurns)
Subject:Re:LINUXisobsolete
Date:30Jan9220:33:07GMT
Organization:SunMicrosystems,Mt.View,Ca.

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>Inarticle<[email protected]>[email protected].
>FI(LinusBenedictTorvalds)writes:

>Ofcourse5yearsfromnowthatwillbedifferent,but5yearsfromnow
>everyonewillberunningfreeGNUontheir200MIPS,64MSPARCstation5.
Well,Iforonewould_love_toseethishappen.

>>Thefactisthatlinuxismoreportablethanminix.What?Ihearyou
>>say.It'struebutnotinthesensethatastmeans:Imadelinuxas
>>conformanttostandardsasIknewhow(withouthavinganyPOSIXstandard
>>infrontofme).Portingthingstolinuxisgenerally/much/easier
>>thanportingthemtominix.
.........
>Mypointisthatwritinganewoperatingsystemthatiscloselytiedtoany
>particularpieceofhardware,especiallyaweirdoneliketheIntelline,
>isbasicallywrong.
Firstoff,thepartsofLinuxtunedmostfinelytothe80x86aretheKernel
andthedevices.MyownsenseisthatevenifLinuxissimplyastopgap
measuretoletusallrunGNUsoftware,itisstillworthwhiletohavea
afinelytunedkernelforthemostnumerousarchitecturepresentlyin
existance.

>AnOSitselfshouldbeeasilyportabletonewhardware
>platforms.
Well,theonlypartofLinuxthatisn'tportableisthekernelanddrivers.
Comparetothecompilers,utilities,windowingsystemetc.thisisreally
asmallpartoftheeffort.SinceLinuxhasalargedegreeofcall
compatibilitywithportableOS'sIwouldn'tcomplain.I'mpersonally
verygratefultohaveanOSthatmakesitmorelikelythatsomeofuswill
beabletotakeadvantageofthesoftwarethathascomeoutofBerkeley,
FSF,CMUetc.Itmaywellbethatin23yearswhenultracheapBSD
variantsandHurdproliferate,thatLinuxwillbeobsolete.Still,right
nowLinuxgreatlyreducesthecostofusingtoolslikegcc,bison,bash
whichareusefulinthedevelopmentofsuchanOS.

From:[email protected](LinusBenedictTorvalds)
Subject:Re:LINUXisobsolete
Date:31Jan9210:33:23GMT
Organization:UniversityofHelsinki

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>ThelimitationsofMINIXrelateatleastpartlytomybeingaprofessor:
>Anexplicitdesigngoalwastomakeitrunoncheaphardwaresostudents
>couldaffordit.

Allright:arealtechnicalpoint,andonethatmadesomeofmycomments
inexcusable.Butatthesametimeyoushootyourselfinthefootabit:
http://www.oreilly.com/openbook/opensources/book/appa.html

5/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

nowyouadmitthatsomeoftheerrorsofminixwerethatitwastoo
portable:includingmachinesthatweren'treallydesignedtorununix.
Thatassumptionleadtothefactthatminixnowcannoteasilybe
extendedtohavethingslikepaging,evenformachinesthatwould
supportit.Yes,minixisportable,butyoucanrewritethatas
"doesn'tuseanyfeatures",andstillberight.

>Amultithreadedfilesystemisonlyaperformancehack.

Nottrue.It'saperformancehack/onamicrokernel/,butit'san
automaticfeaturewhenyouwriteamonolithickerneloneareawhere
microkernelsdon'tworktoowell(asIpointedoutinmypersonalmail
toast).Whenwritingaunixthe"obsolete"way,youautomaticallyget
amultithreadedkernel:everyprocessdoesit'sownjob,andyoudon't
havetomakeuglythingslikemessagequeuestomakeitwork
efficiently.

Besides,therearepeoplewhowouldconsider"onlyaperformancehack"
vital:unlessyouhaveacray3,I'dguesseverybodygetstiredof
waitingonthecomputerallthetime.IknowIdidwithminix(andyes,
Idowithlinuxtoo,butit's/much/better).

>Istillmaintainthepointthatdesigningamonolithickernelin1991is
>afundamentalerror.Bethankfulyouarenotmystudent.Youwouldnot
>getahighgradeforsuchadesign:)

Well,Iprobablywon'tgettoogoodgradesevenwithoutyou:Ihadan
argument(completelyunrelatednotevenpertainingtoOS's)withthe
personhereattheuniversitythatteachesOSdesign.Iwonderwhen
I'lllearn:)

>Mypointisthatwritinganewoperatingsystemthatiscloselytiedtoany
>particularpieceofhardware,especiallyaweirdoneliketheIntelline,
>isbasicallywrong.

But/my/pointisthattheoperatingsystem/isn't/tiedtoany
processorline:UNIXrunsonmostrealprocessorsinexistence.Yes,
the/implementation/ishardwarespecific,butthere'saHUGE
difference.YoumentionOS/360andMSDOGasexamplesofbaddesigns
astheywerehardwaredependent,andIagree.Butthere'sabig
differencebetweentheseandlinux:linuxAPIisportable(notduetomy
cleverdesign,butduetothefactthatIdecidedtogoforafairly
wellthoughtoutandtestedOS:unix.)

Ifyouwriteprogramsforlinuxtoday,youshouldn'thavetoomany
surpriseswhenyoujustrecompilethemforHurdinthe21stcentury.As
hasbeennoted(notonlybyme),thelinuxkernelisaminisculepartof
acompletesystem:Fullsourcesforlinuxcurrentlyrunstoabout200kB
compressedfullsourcestoasomewhatcompletedevelopementsystemis
atleast10MBcompressed(andeasilymuch,muchmore).Andallofthat
sourceisportable,exceptforthistinykernelthatyoucan(provably:
Ididit)rewritetotallyfromscratchinlessthanayearwithout
having/any/priorknowledge.

Infactthe/whole/linuxkernelismuchsmallerthanthe386dependent
thingsinmach:i386.tar.Zforthecurrentversionofmachiswellover
800kBcompressed(823391bytesaccordingtonic.funet.fi).Admittedly,
machis"somewhat"biggerandhasmorefeatures,butthatshouldstill
tellyousomething.

Linus

From:[email protected](MichaelL.Kaufman)
Subject:Re:LINUXisobsolete
Date:3Feb9222:27:48GMT
Organization:EECSDepartment,NorthwesternUniversity

Itriedtosendthesetwopostsfromwork,butIthinktheygoteaten.Ifyou
haveseenthemalready,sorry.

AndyTanenbaumwritesaninterestingarticle(alsointerestingwasfindingout
thatheactuallyreadsthisgroup)butIthinkheismissinganimportant
point.

HeWrote:
>Asmostofyouknow,formeMINIXisahobby,...

Whichisalsoprobablytrueofmost,ifnotall,ofthepeoplewhoareinvolved
inLinux.WearenotdevelopingasystemtotakeovertheOSmarket,weare
justhavingagoodtime.

>Whatisgoingtohappen
>isthattheywillgraduallytakeoverfromthe80x86line.Theywill
>runoldMSDOSprogramsbyinterpretingthe80386insoftware.

Wellwhenthishappens,ifIstillwanttoplaywithLinux,Icanjustrunit
onmy386simulator.

>MINIXwasdesignedtobereasonablyportable,andhasbeenportedfromthe
>Intellinetothe680x0(Atari,Amiga,Macintosh),SPARC,andNS32016.
http://www.oreilly.com/openbook/opensources/book/appa.html

6/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

>LINUXistiedfairlycloselytothe80x86.Notthewaytogo.

That'sfineforthepeoplewhohavethosemachines,butitwasn'tafree
lunch.Thatportibilitywasgainedatthecostofsomeperformanceandsome
featuresonthe386.BeforeyoudecidethatLINUXisnotthewaytogo,you
shouldthinkaboutwhatitisgoingtobeusedfor.Iamgoingtouseitfor
runningmemoryandcomputationintensivegraphicsprogramsonmy486.Forme,
speedandmemoryweremoreimportantthenfuturestateoftheartnessand
portability.

>Butinallhonesty,Iwould
>suggestthatpeoplewhowanta**MODERN**"free"OSlookaroundfora
>microkernelbased,portableOS,likemaybeGNUorsomethinglikethat.

Idon'tknowofanyfreemicrokernelbased,portableOSes.GNUisstill
vaporware,andlikelytoremainthatwayfortheforseeablefuture.Do
youactuallyhaveonetorecomend,orareyoujusttoyingwithme?;)

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>Mypointisthatwritinganewoperatingsystemthatiscloselytiedtoany
>particularpieceofhardware,especiallyaweirdoneliketheIntelline,
>isbasicallywrong.AnOSitselfshouldbeeasilyportabletonewhardware
>platforms.

IthinkIseewhereIdisagreewithyounow.YouarelookingatOSdesign
asanendinitself.Minixisgoodbecauseitisportable/MicroKernal/etc.
Linuxisnotgoodbecauseitismonolithic/tightlytiedtoIntel/etc.That
isnotastrangeattitudeforsomeoneintheacedemicworld,butitisnot
somethingyoushouldexpecttobeuniversallyshared.Linuxisnotbeingwritten
asateachingtool,orasanabstractexercise.Itisbeingwrittentoallow
peopletorunGNUtypesoftware_today_.Thefactthatitmaynotbeinuse
infiveyearsislessimportantthenthefactthattoday(well,byApril
probably)IcanrunallsortsofsoftwareonitthatIwanttorun.Youkeep
sayingthatMinixisbetter,butifitwillnotrunthesoftwarethatIwant
torun,itreallyisn'tthatgood(forme)atall.

>WhenOS/360waswritteninassemblerfortheIBM360
>25yearsago,theyprobablycouldbeexcused.WhenMSDOSwaswritten
>specificallyforthe8088tenyearsago,thiswaslessthanbrilliant,as
>IBMandMicrosoftnowonlytoopainfullyrealize.

Samepoint.MSoftdidnotcomeoutwithDosto"explorethefrontiersofos
research".Theydidittomakeabuck.AndconsideringthefactthatMSDOS
probablystilloutsellseveryoneelseputtogether,Idon'tthinkthatyou
saythattheyhavefailed_intheirgoals_.NotthatMSDosisthebestOS
intermsofanythingelse,onlythatithasservedtheirneeds.

Michael

From:[email protected](JulienMaisonneuve)
Subject:Re:LINUXisobsolete
Date:3Feb9217:10:14GMT

IwouldliketosecondKevinbrowninmostofhisremarks.
I'lladdafewuserpoints:
WhenaststatesthatFSmultithreadingisuseless,itremindsmeofthemany
timesItriedtoletajobruninthebackground(likewhenreadinganarchiveon
afloppy),itisjustunusable,the&shelloperatorcouldevenhavebeenleft
out.
MostinterestingutilitiesarenotevencompilableunderMinixbecauseofthe
ATKcompiler'sincrediblelimits.ThosewerehardlyunderstandableonabasicPC,
butbecomeabsurdona386.EverystupidDOScompilerhasalargemodel(more
expensive,OK).Ihatethe13bitcompress!
ThelackofVirtualMemorysupportpreventspeoplestudyingthisareato
experiment,andpreventsuserstouselargeprograms.Thestrangedesignofthe
MMalsomakesithardtomodify.

Theproblemisthatevendoingexploratoryworkunderminixispainful.
Ifyouwanttogetanyworkdone(orevenfun),evenDOSisbecomingabetter
alternative(withthingslikeDJGPP).
Initsbasicform,itisreallynomorethanOScourseexample,agood
toy,butatoy.Obtainingandapplyingpatchesisapain,andprecludesfurther
upgrades.

Toobadwhennotsomuchismissingtomakeitreallygood.
Thanksfortheworkandy,butLinuxdidn'tdeserveyouranswer.
Forthecommonpeople,itdoesmanythingsbetterthanMinix.

JulienMaisonneuve.

Thisisnotaflame,justmyexperience.

From:[email protected](RichardTobin)
Subject:Re:LINUXisobsolete
Date:4Feb9214:46:49GMT
ReplyTo:[email protected](RichardTobin)
Organization:AIAI,UniversityofEdinburgh,Scotland

http://www.oreilly.com/openbook/opensources/book/appa.html

7/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>Amultithreadedfilesystemisonlyaperformancehack.Whenthereisonly
>onejobactive,thenormalcaseonasmallPC,itbuysyounothing

Ifindthesinglethreadedfilesystemaseriouspainwhenusing
Minix.Ioftenwanttodosomethingelsewhilereadingfilesfromthe
(excruciatinglyslow)floppydisk.Iratherliketoplayroguewhile
waitingforlargeCorLispcompilations.Ilooktolookatfilesin
oneeditorbufferwhilecompilinginanother.

(Theproblemwouldbesomewhatlessifthefilesystemstuckto
servingfilesanddidn'tinteractwithterminali/o.)

Ofcourse,inbasicMinixwithnovirtualconsolesandnochanceof
runningemacs,thisisn'tmuchofaproblem.Buttomostpeople
that'safailure,notanadvantage.Itjustisn'tthecasethaton
singleusermachinesthere'snouseformorethanoneactiveprocess;
theideaonlyhasanyplausibilitybecausesomanypeopleareusedto
poormachineswithpooroperatingsystems.

Astoportability,Minixonlywinsbecauseofitslimitedambitions.
IfyouwantedafullfeaturedUnixwithpaging,jobcontrol,awindow
systemandsoon,woulditbequickertostartfrombasicMinixand
addthefeatures,ortostartfromLinuxandfixthe386specific
bits?Idon'tthinkit'sfairtocriticiseLinuxwhenitsaimsareso
differentfromMinix's.Ifyouwantasystemforpedagogicaluse,
Minixistheanswer.Butifwhatyouwantisanenvironmentasmuch
like(say)aSunaspossibleonyourhomecomputer,ithassome
deficiencies.

Richard

From:[email protected](AndyTanenbaum)
Subject:Re:LINUXisobsolete
Date:5Feb9214:48:48GMT
Organization:Fac.Wiskunde&Informatica,VrijeUniversiteit,Amsterdam

Inarticle<[email protected]>[email protected](RichardTobin)writes:
>IfyouwantedafullfeaturedUnixwithpaging,jobcontrol,awindow
>systemandsoon,woulditbequickertostartfrombasicMinixand
>addthefeatures,ortostartfromLinuxandfixthe386specific
>bits?

AnotheroptionthatseemstobetotallyforgottenhereisbuyUNIXora
clone.IfyoujustwanttoUSEthesystem,insteadofhackingonits
internals,youdon'tneedsourcecode.Coherentisonly$99,andthere
arevarioustrueUNIXsystemswithmorefeaturesformoremoney.Forthe
truehacker,nothavingsourcecodeisfatal,butforpeoplewhojust
wantaUNIXsystem,therearemanyalternatives(albeitnotfree).

AndyTanenbaum([email protected])

From:[email protected](TonyTravis)
Subject:Re:LINUXisobsolete
Date:6Feb9202:17:13GMT
Organization:DepartmentofComputing,ImperialCollege,UniversityofLondon,UK.

[email protected](AndyTanenbaum)writes:
>AnotheroptionthatseemstobetotallyforgottenhereisbuyUNIXora
>clone.IfyoujustwanttoUSEthesystem,insteadofhackingonits
>internals,youdon'tneedsourcecode.Coherentisonly$99,andthere
>arevarioustrueUNIXsystemswithmorefeaturesformoremoney.Forthe
>truehacker,nothavingsourcecodeisfatal,butforpeoplewhojust
>wantaUNIXsystem,therearemanyalternatives(albeitnotfree).

Andy,IhavefollowedthedevelopmentofMinixsincethefirstmessages
werepostedtothisgroupandIamnowrunning1.5.10withBruce
Evans'spatchesforthe386.

I'just'wantaUnixonmyPCandIamnotinterestedinhackingonits
internals,butI*do*wantthesourcecode!

AnimportantprincipleunderlyingthesuccessandpopularityofUnixis
thephilosophyofbuildingontheworkofothers.

Thisphilosophyreliesupontheavailabilityofthesourcecodein
orderthatitcanbeexamined,modifiedandreusedinnewsoftware.

Manyyearsago,IwasinthehappypositionofbeinganAT&TSeventh
EditionUnixsourcelicenceebut,eventhen,Isawyourdecisionto
makethesourceofMinixavailableasliberationfromtheshacklesof
AT&Tcopyright!!

Ithinkyoumaysometimesforgetthatyour'hobby'hashadaprofound
effectontheavailabilityof'personal'Unix(ie.affordableUnix)and
thatthe8086PCIranMinix1.2onactuallycostmeconsiderablymore
thanmypresent386/SXclone.

Clearly,Minix_cannot_beallthingstoallmen,butIseethe
progressto386versionsinmuchthesamewaythatIsee68000orother
http://www.oreilly.com/openbook/opensources/book/appa.html

8/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

linearaddressspacearchitectures:itisagoodthingforpeoplelike
mewhouseMinixandfeelconstrainedbythesegmentedarchitectureof
thePCversionforapplications.

NOTHINGyoucansaywouldconvincemethatIshoulduseCoherent...

Tony

From:[email protected](RichardTobin)
Subject:Re:LINUXisobsolete
Date:7Feb9214:58:22GMT
Organization:AIAI,UniversityofEdinburgh,Scotland

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>IfyoujustwanttoUSEthesystem,insteadofhackingonits
>internals,youdon'tneedsourcecode.

Unfortunatelyhackingontheinternalsisjustwhatmanyofuswant
thesystemfor...You'llberidofmostofuswhenBSDdetoxorGNU
comesout,whichshouldhappeninthenextfewmonths(yeah,right).

Richard

From:[email protected](Louie)
Subject:Re:LINUXisobsolete
Date:30Jan9202:55:22GMT
Organization:UniversityofBritishColumbia,Vancouver,B.C.,Canada

In<[email protected]>[email protected](AndyTanenbaum)writes:

>Butinallhonesty,Iwould
>suggestthatpeoplewhowanta**MODERN**"free"OSlookaroundfora
>microkernelbased,portableOS,likemaybeGNUorsomethinglikethat.

TherearereallynootheralternativesotherthanLinuxforpeoplelike
mewhowanta"free"OS.Consideringthatthemajorityofpeoplewho
wouldusea"free"OSusethe386,portabilityisreallynotallthat
bigofaconcern.IfIhadaSparcIwoulduseSolaris.

Asitstands,IinstalledLinuxwithgcc,emacs18.57,kermitandallofthe
GNUutilitieswithoutanytroubleatall.Noneedtoapplypatches.I
justfollowedtheinstallationinstructions.Ican'tgetanOSlike
this*anywhere*forthepricetodomyComputerSciencehomework.And
itseemslikenetworksupportandthenXWindowswillbeportedtoLinux
wellbeforeMinix.Thisissomethingthatwouldbereallyuseful.Inmy
opinion,portabilityofstandardUnixsoftwareisimportantalso.

Iknowthatthedesignusingamonolithicsystemisnotasgoodasthe
microkernel.Butfortheshorttermfuture(AndIknowIwon't/can't
beupradingfrommy386),Linuxsuitsmeperfectly.

PhilipWu
[email protected]

From:[email protected](DouglasGraham)
Subject:Re:LINUXisobsolete
Date:1Feb9200:26:30GMT
Organization:BellNorthernResearch,Ottawa,Canada

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:

>WhileIcouldgointoalongstoryhereabouttherelativemeritsofthe
>twodesigns,sufficeittosaythatamongthepeoplewhoactuallydesign
>operatingsystems,thedebateisessentiallyover.Microkernelshavewon.

Canyourecommendany(unbiased)literaturethatpointsoutthestrengths
andweaknessesofthetwoapproaches?I'msurethatthereissomething
tobesaidforthemicrokernelapproach,butIwonderhowclosely
Minixresemblestheothersystemsthatuseit.Sure,Minixuseslots
oftasksandmessages,buttheremustbemoretoamicrokernelarchitecture
thanthat.IsuspectthattheMinixcodeisnotsplitoptimallyintotasks.

>Theonlyrealargumentformonolithicsystemswasperformance,andthere
>isnowenoughevidenceshowingthatmicrokernelsystemscanbejustas
>fastasmonolithicsystems(e.g.,RickRashidhaspublishedpaperscomparing
>Mach3.0tomonolithicsystems)thatitisnowalloverbuttheshoutin`.

MymaincomplaintwithMinixisnotit'sperformance.Itisthatadding
featuresisaroyalpainsomethingthatIpresumeamicrokernel
architecureissupposedtoalleviate.

>MINIXisamicrokernelbasedsystem.

Isthereaconsensusonthis?

>LINUXis
>amonolithicstylesystem.Thisisagiantstepbackintothe1970s.
>Thatisliketakinganexisting,workingCprogramandrewritingitin
http://www.oreilly.com/openbook/opensources/book/appa.html

9/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

>BASIC.Tome,writingamonolithicsystemin1991isatrulypooridea.

Thisisafineassertion,butI'veyettoseeanyrationaleforit.
Linuxisonlyabout12000linesofcodeIthink.Idon'tseehow
splittingthatintotasksandblastingmessagesaroundwouldimproveit.

>Don'tgetmewrong,IamnotunhappywithLINUX.Itwillgetallthepeople
>whowanttoturnMINIXinBSDUNIXoffmyback.Butinallhonesty,Iwould
>suggestthatpeoplewhowanta**MODERN**"free"OSlookaroundfora
>microkernelbased,portableOS,likemaybeGNUorsomethinglikethat.

Well,therearenootherchoicesthatI'mawareofatthemoment.But
whenGNUOScomesout,I'llverylikelyjumpshipagain.Isensethat
you*are*somewhatunhappyaboutLinux(andthatsurprisesmesomewhat).
Iwouldguessthatthereasonsomanypeopleembracedit,isbecauseit
offersmorefeatures.Yourapproachtopeoplerequestingfeaturesin
Minix,hasgenerallybeentotellthemthattheydidn'treallywantthat
featureanyway.IsubmitthattheexodusinthedirectionofLinux
provesyouwrong.

Disclaimer:IhadnothingtodowithLinuxdevelopment.Ijustfind
itaneasiersystemtounderstandthanMinix.

[email protected].

From:[email protected](CharlesHedrick)
Subject:Re:LINUXisobsolete
Date:1Feb9200:27:04GMT
Organization:RutgersUniv.,NewBrunswick,N.J.

Thehistoryofsoftwareshowsthatavailabilitywinsoutover
technicalqualityeverytime.That'sLinux'majoradvantage.It'sa
small386basedsystemthat'sfairlycompatiblewithgenericUnix,and
isfreelyavailable.IdroppedoutoftheMinixcommunityacoupleof
yearsagowhenitbecameclearthat(1)Minixwasnotgoingtotake
advantageofanythingbeyondthe8086anytimeinthenearfuture,and
(2)thelicensingwhileamazinglyfriendlystillmadeithard
forpeoplewhowereinterestedinproducinga386version.Several
peopleapparentlydidniceworkforthe386.Butalltheycould
distributewerediffs.Thismadebringingupa386systemajobthat
isn'tpracticalforanewuser,andinfactIwasn'tsureIwantedto
doit.

Iapologizeifthingshavechangedinthelastcoupleofyears.If
it'snowpossibletogeta386versioninaformthat'sreadytorun,
thecommunityhasdevelopedawaytoshareMinixsource,andbringing
upnormalUnixprogramshasbecomeeasierintheinterim,thenI'm
willingtoreconsiderMinix.Idolikeitsdesign.

It'spossiblethatLinuxwillbeovertakenbyGnuorafreeBSD.
However,iftheGnuOSfollowstheexampleofallotherGnusoftware,
itwillrequireasystemwith128MBofmemoryanda1GBdisktouse.
Therewillstillberoomforasmallsystem.MyidealOSwouldbe4.4
BSD.But4.4'sreleasedatehasahistoryofextremeslippage.With
mostoftheirstaffmovingtoBSDI,it'shardtobelievethatthis
situationisgoingtobeimproved.Formyownpersonaluse,theBSDI
systemwillprobablybegreat.Buteventheirveryattractivepricing
islikelytobetoomuchformostofourstudents,andeventhough
userscangetsourcefromthem,thefactthatsomeofitis
proprietarywillagainmeanthatyoucan'tjustputalteredcodeout
forpublicFTP.Atanyrate,Linuxexists,andtherestofthese
alternativesarevapor.

From:[email protected](TheodoreY.Ts'o)
Subject:Re:LINUXisobsolete
Date:31Jan9221:40:23GMT
Organization:MassachusettsInstituteofTechnology
InReplyTo:[email protected]'smessageof29Jan9212:12:50GMT

>From:[email protected](AndyTanenbaum)

>ftp.cs.vu.nl=192.31.231.42indirminix/simulator.)Ithinkitisa
>grosserrortodesignanOSforanyspecificarchitecture,sincethatis
>notgoingtobearoundallthatlong.

It'snotyourfaultforbelievingthatLinuxistiedtothe80386
architecture,sincemanyLinuxsupporters(includingLinushimself)have
madethethisstatement.However,theamountof80386specificcodeis
probablynotmuchmorethanwhatisinaMiniximplementation,andthere
iscertainlyalotless80386specificcodeinLinuxthanhereis
VaxspecificcodeinBSD4.3.

Granted,theporttootherarchitectureshasn'tbeendoneyet.ButifI
weregoingtobringupaUnixlikesystemonanewarchitecture,I'd
probablystartwithLinuxratherthanMinix,simplybecauseIwantto
havesomecontroloverwhatIcandowiththeresultingsystemwhenI'm
donewithit.Yes,I'dhavetorewritelargeportionsoftheVMand
devicedriverlayersbutI'dhavetodothatwithanyotherOS.
MaybeitwouldbealittlebitharderthanitwouldtoportMinixtothe
newarchitecture;butthiswouldprobablybeonlytrueforthefirst
http://www.oreilly.com/openbook/opensources/book/appa.html

10/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

architecturethatweportedLinuxto.

>WhileIcouldgointoalongstoryhereabouttherelativemeritsofthe
>twodesigns,sufficeittosaythatamongthepeoplewhoactuallydesign
>operatingsystems,thedebateisessentiallyover.Microkernelshavewon.
>Theonlyrealargumentformonolithicsystemswasperformance,andthere
>isnowenoughevidenceshowingthatmicrokernelsystemscanbejustas
>fastasmonolithicsystems(e.g.,RickRashidhaspublishedpaperscomparing
>Mach3.0tomonolithicsystems)thatitisnowalloverbuttheshoutin'.

Thisisnotnecessarilythecase;Ithinkyou'repaintingamuchmore
blackandwhiteviewoftheuniversethannecessarilyexists.Irefer
youtosuchpapersasBrentWelsh's([email protected])"The
FilsystemBelongsintheKernel"paper,whereinhearguesthatthe
filesystemisamatureenoughabstractionthatitshouldliveinthe
kernel,notoutsideofitasitwouldinastrictmicrokerneldesign.

Therealsoseveralpeoplewhohavebeenconcernedaboutthespeedof
OSF/1Machwhencomparedwithmonolithicsystems;inparticular,the
nubmerofcontextswitchesrequiredtohandlenetworktraffic,and
networkedfilesystemsinparticular.

Iamawareofthebenefitsofamicrokernelapproach.However,the
factremainsthatLinuxishere,andGNUisn'tandpeoplehavebeen
workingonHurdforalotlongerthanLinushasbeenworkingonLinux.
Minixdoesn'tcountbecauseit'snotfree.:)

Isuspectthatthebalanceofmicrokernelsversusmonolithickernels
dependonwhatyou'redoing.Ifyou'reinterestedindoingresearch,it
isobviouslymucheasiertoripoutandreplacemodulesinamicro
kernel,andsinceonlyresearcherswritepapersaboutoperatingsystems,
ipsofactomicrokernelsmustbetherightapproach.However,Idoknow
alotofpeoplewhoarenotresearchers,butwhoareratherpractical
kernelprogrammers,whohavealotofconcernsoverthecostofcopying
andthecostofcontextswitcheswhichareincurredinamicrokernel.

Bytheway,Idon'tbuyyourargumentsthatyoudon'tneeda
multithreadedfilesystemonasingleusersystem.Onceyoubringupa
windowingsystem,andhaveacompilegoinginonewindow,anewsreader
inanotherwindow,andUUCP/CNewsgoinginthebackground,youwant
goodfilesystemperformance,evenonasingleusersystem.Maybetoa
theoristit'sanunnecessaryoptimizationanda(touseyourwords)
"performancehack",butI'minterestedinaRealoperatingsystem
notaresearchtoy.
===================================
TheodoreTs'obloombeacon!mitathena!tytso
308HighSt.,Medford,[email protected]
Everybody'splayingthegame,butnobody'srulesarethesame!

From:[email protected]
Subject:Re:LINUXisobsolete
Date:31Jan9213:21:44GMT
Organization:ablipofentropy

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>
>MINIXwasdesignedtobereasonablyportable,andhasbeenportedfromthe
>Intellinetothe680x0(Atari,Amiga,Macintosh),SPARC,andNS32016.
>LINUXistiedfairlycloselytothe80x86.Notthewaytogo.

Ifyoulookedatthesourceinsteadofbelievingtheauthor,you'drealise
thisisnottrue!

He'sreplaced'fubyte'byaroutinewhichexplicitlyusesasegmentregister
butthatcouldbeeasilychanged.Similarly,apartfromacoupleofplaces
whichassumethe'386MMU,acoupleofmacrostohidetheexactpagesizes
etcwouldmakeportingtrivial.Using'386TSS'smakesthecodesimpler,
buttheVAXandWE32000havesimilarstructures.

Ashe'salreadyadmitted,abitofplanningwouldhavethethesystem
neater,butmerelyputting'386assembleraroundisn'tacrime!

Andwithallduerespect:
theBookdidn'tmakeanissueofportability(apartfromafew
"#ifdefM8088"s)
bythetimeitwasreleased,Minixhadcometodependonseveral
8086"features"thatcauseduproarfromthe68000users.

>AndyTanenbaum([email protected])

joe.

From:[email protected](LawrenceC.Foard)
Subject:Re:LINUXisobsolete
Date:5Feb9214:56:30GMT
Organization:WorcesterPolytechnicInstitute

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>Don`tgetmewrong,IamnotunhappywithLINUX.Itwillgetallthepeople
>whowanttoturnMINIXinBSDUNIXoffmyback.Butinallhonesty,Iwould
http://www.oreilly.com/openbook/opensources/book/appa.html

11/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

>suggestthatpeoplewhowanta**MODERN**"free"OSlookaroundfora
>microkernelbased,portableOS,likemaybeGNUorsomethinglikethat.

Ibelieveyouhavesomevalidpoints,althoughIamnotsurethata
microkernelisnecessarilybetter.Itmightmakemoresensetoallowsome
combinationofthetwo.AspartoftheIPCcodeI'mwrittingforLinuxIam
goingtoincludecodethatwillallowdevicedriversandfilesystemstorun
asuserprocesses.Thesewillbesignificantlyslowerthough,andIbelieveit
wouldbeamistaketomoveeverythingoutsidethekernel(TCP/IPwillbe
internal).

ActuallymymainproblemwithOStheoristsisthattheyhavenevertested
thereideas!Noneoftheseideas(withapartialexceptionforMACH)hasever
seenthelightofday.32bithomecomputershavebeenavailableforalmosta
decadeandLinuswasthefirstpersontoeverwriteaworkingOSforthem
thatcanbeusedwithoutpayingAT&T$100,000.Apieceofsoftwareinhandis
worthtenpiecesofvaporware,OStheoristsarequicktojumpalloveranOS
buttheyareunwillingtoeverprovideanalternative.

ThegeneralconsensusthatMicrokernelsisthewaytogomeansnothingwhen
arealapplicationhasneverevenrunonone.

ThereleaseofLinuxisallowingmetotrysomeideasI'vebeenwantingto
expermentwithforyears,butIhaveneverhadtheopportunitytoworkwith
sourcecodeforafunctioningOS.

From:[email protected](AndyTanenbaum)
Subject:Re:LINUXisobsolete
Date:5Feb9223:33:23GMT
Organization:Fac.Wiskunde&Informatica,VrijeUniversiteit,Amsterdam

Inarticle<[email protected]>[email protected](Lawrence
C.Foard)writes:
>ActuallymymainproblemwithOStheoristsisthattheyhavenevertested
>thereideas!
I'mmortallyinsulted.IAMNOTATHEORIST.Askanybodywhowasatour
departmentmeetingyesterday(injoke).

Actually,theseideashavebeenverywelltestedinpractice.OSFisbetting
itswholebusinessonamicrokernel(Mach3.0).USLisbettingitsbusiness
onanotherone(Chorus).Bothoftheserunlotsofsoftware,andbothhave
beenextensivelycomparedtomonolithicsystems.Amoebahasbeenfully
implementedandtestedforanumberofapplications.QNXisamicrokernel
basedsystem,andsomeonejusttoldmetheinstalledbaseis200,000systems.
Microkernelsarenotapipedream.Theyrepresentproventechnology.

TheMachguyswroteapapercalled"UNIXasanapplicationprogram."
ItwasbyGolubetal.,intheSummer1990USENIXconference.TheChorus
peoplealsohaveatechnicalreportonmicrokernelperformance,andI
coauthoredanotherpaperonthesubject,whichImentionedyesterday
(Dec.1991ComputingSystems).Checkthemout.

AndyTanenbaum([email protected])

From:[email protected](peterdasilva)
Subject:Re:LINUXisobsolete
Organization:XenixSupport,FICC
Date:Thu,6Feb199216:02:47GMT

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>QNXisamicrokernel
>basedsystem,andsomeonejusttoldmetheinstalledbaseis200,000systems.

Ohyes,whileI'monthesubject...thereareover3millionAmigasoutthere,
whichmeansthattherearemoreofthemthananyUNIXvendorhasshipped,and
probablymorethanallUNIXsystemscombined.

From:[email protected](peterdasilva)
Subject:Re:LINUXisobsolete
Organization:XenixSupport,FICC
Date:Thu,6Feb199216:00:22GMT

Inarticle<[email protected]>[email protected](Lawrence
C.Foard)writes:
>ActuallymymainproblemwithOStheoristsisthattheyhavenevertested
>thereideas!

Ibegtodiffer...therearemanymicrokerneloperatingsystemsoutthere
foreverythingfroman8088(QNX)uptolargeresearchsystems.

>Noneoftheseideas(withapartialexceptionforMACH)hasever
>seenthelightofday.32bithomecomputershavebeenavailableforalmosta
>decadeandLinuswasthefirstpersontoeverwriteaworkingOSforthem
>thatcanbeusedwithoutpayingAT&T$100,000.

ImusthavebeenimaginingAmigaOS,then.I'vebeenusingafigmentofmy
imaginationforthepast6years.

http://www.oreilly.com/openbook/opensources/book/appa.html

12/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

AmigaOSisamicrokernelmessagepassingdesign,withbetterresponsetime
andperformancethananyotherreadilyavailablePCoperatingsystem:including
MINIX,OS/2,Windows,MacOS,Linux,UNIX,and*certainly*MSDOS.

Themicrokerneldesignhasproveninvaluable.Thingslikenewfilesystems
thatarenormallyavailableonlyfromthevendorarehobbyistproductson
theAmiga.Devicedriversaresimplysharedlibrariesandtaskswithspecific
entrypointsandmessageports.Soarefilesystems,thewindowsystem,and
soon.It'saWONDERFULdesign,andvalidateseverythingthatpeoplehave
beensayingaboutmicrokernels.Yes,ittakesmoreworktogetthemoffthe
groundthanacoroutinebasedmacrokernellikeUNIX,buttheversatility
paysyoubackmanytimesover.

IreallywishAndywoulddoanewMINIXbasedonwhathasbeenlearnedsince
thefirstrelease.ThefactoringofresponsibilitiesinMINIXisfairlypoor,
butthebasicconceptisgood.

>ThegeneralconsensusthatMicrokernelsisthewaytogomeansnothingwhen
>arealapplicationhasneverevenrunonone.

I'mdreamingagain.IsurethroughtDeluxePaint,Sculpt3d,PhotonPaint,
ManxC,ManxSDB,PerfectSound,Videoscape3d,andtheotherprogramsI
boughtformyAmigawere"real".I'llhavetosendthedamnthingsbacknow,
Iguess.

TheavailabilityofLinuxisgreat.I'mdelighteditexists.I'msurethat
themacrokerneldesignisonereasonithasbeenimplementedsofast,andthis
isavalidreasontousemacrokernels.BUT...thisdoesn'tmeanthat
microkernelsareinherentlyslow,orsimplyresearchtoys.

From:[email protected](DaveSmythe)
Subject:Re:LINUXisobsolete
Date:10Feb9207:08:22GMT
Organization:NetcomOnlineCommunicationServices(4082419760guest)

Inarticle<[email protected]>[email protected](Lawrence
C.Foard)writes:
>ActuallymymainproblemwithOStheoristsisthattheyhavenevertested
>thereideas!Noneoftheseideas(withapartialexceptionforMACH)hasever
>seenthelightofday.

DavidCheriton(Prof.atStanford,andauthoroftheVsystem)saidsomething
similartothisinaclassindistributedsystems.Paraphrased:

"Therearetwokindsofresearchers:thosethathaveimplemented
somethingandthosethathavenot.Thelatterwilltellyouthat
thereare142waysofdoingthingsandthatthereisn'tconsensus
onwhichisbest.Theformerwillsimplytellyouthat141of
themdon'twork."

HereallyripsontheOSIphilesaswell,forasimilarreason.TheInternet
protocolsareadaptedonlyafterhavingbeeninuseforaperiodoftime,
preventingthingsfromgettingstandardizedthatwillneverbeimplementable
inareasonablefashion.OSIadherents,ontheotherhand,seemintenton
standardizingeverythingpossible,including"escapes"fromthestandard,
beforeareasonablereferenceimplementationexists.Consequently,yousee
obsoleteideasimmortalized,suchassubbyteleveldatafieldpacking,
whichmakesgoodperformancedifficultwhenyourcomputerisdrinkingfrom
a10+Gbsfirehose:).

Justmy$.02

From:[email protected](LinusBenedictTorvalds)
Subject:Apologies(wasRe:LINUXisobsolete)
Date:30Jan9215:38:16GMT
Organization:UniversityofHelsinki

Inarticle<[email protected]>Iwrote:
>Well,withasubjectlikethis,I'mafraidI'llhavetoreply.

AndreplyIdid,withcompleteabandon,andnothoughtforgoodtaste
andnetiquette.Apologiestoast,andthankstoJohnNallforafriendy
"that'snothowit'sdone"letter.Ioverreacted,andamnowcomposing
a(muchlessacerbic)personallettertoast.Hopenobodywasturned
awayfromlinuxduetoitbeing(a)possiblyobsolete(Istillthink
that'snotthecase,althoughsomeofthecriticismsarevalid)and(b)
writtenbyahothead:)

Linus"myfirst,andhopefullylastflamefest"Torvalds

From:pmacdona@sanjuan(PeterMacDonald)
Subject:re:Linuxisobsolete
Date:1Feb9202:10:06GMT
Organization:UniversityofVictoria,Victoria,BC,CANADA

SinceIthinkIpostedoneoftheearliestmessagesinallthisdiscussion
http://www.oreilly.com/openbook/opensources/book/appa.html

13/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

ofMinixvsLinux,Ifeelcompelledtocommentonmyreasonsfor
switchingfromMinixtoLinux.Inorderofimportancetheyare:

1)Linuxisfree
2)Linuxisevolvingatasatisfactoryclip(becausenewfeatures
areacceptedintothedistributionbyLinus).

Thefirstrequiressomeexplanation,becauseifIhavealreadypurchased
Minix,whatposssibleconcerncouldpricehaveforme?Simple.
IftheOSisfree,manymorepeoplewilluse/support/enhanceit.
ThisisalsothesamereasoningIusedwhenIboughtmy386instead
ofasparc(whichIcouldhavegotforjust30%more).Since
PCsarecheapandgenerallyavailable,morepeoplewillbuy/use
themandthusgood,cheap/freesoftwarewillbeabundant.

ThesecondshouldbeprettyobvioustoanyonewhohasbeenusingMinix
forforanyperiodoftime.ASTgenerallydoesnotacceptenhancements
toMinix.Thisisnotmeantasachallenge,butmerelyastatementof
fact.ASThasgoodandlegitimatereasonsforthis,andIdonotdispute
them.ButMinixhassomelimitationswhichIjustcouldnolonger
livewith,andduetothispolicy,theprospectofseeingthemresolved
inreasonabletimewasunsatisfactory.Theselimitationsinclude:

no386support
novirtualconsoles
nosoftlinks
noselectcall
noptys
nodemandpaging/swapping/sharedtext/sharedlibs...(efficientmm)
chmem(inflexiblemm)
noXWindows(advocatedforthesamereasonsasLinuxandthe386).
noTCP/IP
noGNU/SysVintegration(portability)

Someofthesecouldbefixedbypatches(andifyouhavedonethis
yourself,Idon'thavetotellyouhowsatisfactorythatis),butat
leastthelast5itemswere/arebeyondanyreasonableexpectation.

Finally,mycomment(crack?)aboutMinix'ssegmentedkernel,or
microkernelarchitecturewasmoreanexpressionofmyfrustration/
bewildermentatattemptingtousetheMinixPTYpatchesasaguide
ofhowtodoitunderLinux.Thatparticularinstancewasonewhere
messagepassinggreatlycomplicatedtheimplementationofafeature.

IdohaveanopinionaboutMonlithicvsMessagePassing,butwon't
expressitnow,anddidnotmeantoexpresssitthen.Mygoalsare
totallyshortterm(maximumfunctionalityintheminimumamountof
time/cost/hassle),andsomyviewsonthisareirrelevant,andshould
notbemisconstrued.Ifyouarenonplussedbythelackoftheabove
features,thenyoushouldconsiderMinix,aslongasyoudon'tmind
payingofcourse:)

From:[email protected](OlafSchlueter)
Subject:Re:Linuxisobsolete
Date:7Feb9211:41:44GMT
Organization:ToppointMailboxe.V.

JustafewcommentstothediscussionofLinuxvsMinix,whichevolved
partlytoadiscussionofmonolithicvsmicrokernel.

Ithinktherewillbenoaggreementbetweenthetwopartiesadvocating
eitherconcept,iftheyforget,thatLinuxandMinixhavebeendesigned
fordifferentapplications.Ifyouwantacheap,powerfuland
enhancableUnixsystemrunningonasinglemachine,withthepossibility
toadaptstandardUnixsoftwarewithoutpain,thenLinuxisforyou.If
youareinterestedinmodernoperatingsystemconcepts,andwantto
learnhowamicrokernelbasedsystemworks,thenMinixisthebetter
choice.

Itisnotanargumentagainstmicrokernelsystem,thatforthetime
beingmonolithicimplemenationsofUnixonPCshaveabetter
performance.Thismeansonly,thatUnixismaybebetterimplementedas
amonolithicOS,atleastaslongasitrunsonasinglemachine.From
theuserspointofview,theinternaldesignoftheOSdoesn'tmatterat
all.Untilitcomestonetworks.Onthemonolithicapproach,afile
serverwillbecomeauserprocessbasedonsomehardwarefacilitylike
ethernet.Programswhichwanttousethisfacilitywillhavetouse
speciallibrarieswhichofferthecallsforcommunicationwiththis
server.Inamicrokernelsystemitispossibletoincorporatethe
serverintotheOSwithouttheneedfornew"system"calls.Fromthe
userspointofviewthishastheadvantage,thatnothingchanges,he
justgetsbetterperformance(intermsofmorediskspaceforexample).
Fromtheimplementorspointofview,themicrokernelsystemisfaster
adaptabletochangesinhardwaredesign.

Ithasbeencritized,thatASTrejectsanyimprovementstoMinix.Ashe
isinterestedintheeducationalvalueofMinix,Iunderstandhis
argument,thathewantstokeepthecodesimple,anddon'twantto
overloaditwithfeatures.Asaneducationaltool,Minixiswrittenas
amicrokernelsystem,althoughitisrunningonhardwareplatforms,who
willprobablybetterperformwithamonolithicOS.Buttheareaof
networkapplicationsisgrowingandmodernOSlikeAmoebaorPlan9
http://www.oreilly.com/openbook/opensources/book/appa.html

14/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

cannotbewrittenasmonolithicsystems.SoMinixhasbeenwrittenwith
theintentiontogivestudentsapracticalexampleofamicrokernelOS,
toletthemplaywithtasksandmessages.Itwasnottheideatogivea
lotofpeopleacheap,powerfulOSforatenthofthepriceofSYSVor
BSDimplementations.

Resumee:LinuxisnotbetterthanMinix,ortheotherwayround.They
aredifferentforgoodreasons.

From:[email protected](DavidMegginson)
Subject:Mach/Minix/Linux/Gnuetc.
Date:1Feb9217:11:03GMT
Organization:UniversityofTorontoEPAS

Well,thishasbeenafundiscussion.Iamabsolutelyconvincedby
Prof.Tanenbaumthatamicrokernel_is_thewaytogo,butthemore
IlookattheMinixsource,thelessIbelievethatitisa
microkernel.IwouldprobablynotbotherportingLinuxtothe
M68000,butIwantmoreservicesthanMinixcanoffer.

Whataboutamicrokernelwhichismessage/syscallcompatiblewith
MACH?Itdoesn'tactuallyhavetodoeverythingthatMACHdoes,like
virtualmemorypagingitjusthasto_look_likeMACHfromthe
outside,tofoolprogramslikethefutureGnuUnixemulator,BSD,etc.
ThiswouldextendtheusefullivesofourM68000or80286based
machinesforalittlelonger.Inthemeantime,Iwillprobablystay
withMinixformySTratherthanswitchingbacktoMiNTafterall,
MinixatleastlookslikeUnix,whileMiNTlookslikeTOStryingto
looklikeUnix(ithasto,tobeTOScompatible).

David

From:[email protected](peterdasilva)
Newsgroups:comp.os.minix
Subject:Whatgooddoesthiswardo?(Re:LINUXisobsolete)
Date:3Feb9216:37:24GMT
Organization:XenixSupport,FICC

Willyouquitflamingeachother?

Imean,linuxisdesignedtoprovideareasonablyhighperformanceenvironment
onahardwareplatformcrippledbyyearsofbackwardscompatiblekludges.Minix
isdesignedasateachingtool.Neitheristhatgoodatdoingtheother'sjob,
andwhyshouldthey?ThefactthatMinixrunsoutofsteamquickly(andit
does)isn'taprobleminitschosenmileau.It'ssurebetterthantheTOY
operatingsystem.ThefactthatLinuxisn'ttransportablebeyondthe386/AT
platformisn'taproblemwhentherearemillionsofthemoutthere(andquite
cheap:youcangeta386/SXforwellunder$1000).

Amonolithickerneliseasyenoughtobuildthatit'sworthdoingitifitgets
asystemoutthedoorearly.Thinkofitasaperformancehackforprogrammer
time.TheAPIisportable.Youcanreplacethekernelwithamicrokernel
design(andMINIXisn'tthebeallandendallofmicrokerneldesignseither:
evenforlowendPCs...lookatAmigaOS)withoutdisturbingtheapplications.
That'sthewholepointofaportableAPIinthefirstplace.

Microkernelsaredefinitelyabetterdesignformanytasks.Itakesmore
worktomakethemefficient,soasimplerdesignthatdoesn'ttakeadvantage
ofthemicrokernelinanyrealwayisworthdoingforpedagogicalreasons.
Thinkofitasaperformancehackforstudenttime.Thedesignisstillgood
andwhenyoucangetanAPItothemicrokernelinterfaceyoucangetVERY
impressiveperformance(thousandsofcontextswitchespersecondonan8
MHz68000).

From:[email protected](AndyTanenbaum)
Subject:Unhappycampers
Date:3Feb9222:46:40GMT
Organization:Fac.Wiskunde&Informatica,VrijeUniversiteit,Amsterdam

I'vebeengettingabitofmaillatelyfromunhappycampers.(Actually10
messagesfromthe43,000readersmayseemlikealot,butitisnotreally.)
Thereseemtobethreestickingpoints:

1.Monolithickernelsarejustasgoodasmicrokernels
2.Portabilityisn'tsoimportant
3.Softwareoughttobefree

Ifpeoplewanttohaveaseriousdiscussionofmicrokernelsvs.monolithic
kernels,fine.Wecandothatincomp.os.research.Butpleasedon'tsoundoff
ifyouhavenoideaofwhatyouaretalkingabout.Ihavehelpeddesign
andimplement3operatingsystems,onemonolithicandtwomicro,andhave
studiedmanyothersindetail.Manyoftheargumentsofferedarenonstarters
(e.g.,microkernelsarenogoodbecauseyoucan'tdopaginginuserspace
exceptthatMachDOESdopaginginuserspace).

Ifyoudon'tknowmuchaboutmicrokernelsvs.monolithickernels,thereis
someusefulinformationinapaperIcoauthoredwithFredDouglis,Frans
KaashoekandJohnOusterhoutintheDec.1991issueofCOMPUTINGSYSTEMS,the
http://www.oreilly.com/openbook/opensources/book/appa.html

15/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

USENIXjournal).Ifyoudon'thavethatjournal,youcanFTPthepaperfrom
ftp.cs.vu.nl(192.31.231.42)indirectoryamoeba/papersascomp_sys.tex.Z
(compressedTeXsource)orcomp_sys.ps.Z(compressedPostScript).Thepaper
givesactualperformancemeasurementsandsupportsRickRashid'sconclusionthat
microkernelbasedsystemsarejustasefficientasmonolithickernels.

Astoportability,thereishardlyanyseriousdiscussionpossibleanymore.
UNIXhasbeenportedtoeverythingfromPCstoCrays.Writingaportable
OSisnotmuchharderthananonportableone,andallsystemsshouldbe
writtenwithportabilityinmindthesedays.SurelyLinus'OSprofessor
pointedthisout.MakingOScodeportableisnotsomethingIinventedin1987.

Whilemostpeoplecantalkrationallyaboutkerneldesignandportability,
theissueoffreenessis100%emotional.Youwouldn'tbelievehowmuch
[expletivedeleted]IhavegottenlatelyaboutMINIXnotbeingfree.MINIX
costs$169,butthelicenseallowsmakingtwobackupcopies,sotheeffective
pricecanbeunder$60.Furthermore,professorsmaymakeUNLIMITEDcopies
fortheirstudents.Coherentis$99.FSFcharges>$100forthetapeits"free"
softwarecomesonifyoudon'thaveInternetaccess,andIhaveneverheard
anyonecomplain.4.4BSDis$800.Idon'treallybelievemoneyistheissue.
Besides,probablymostofthepeoplereadingthisgroupalreadyhaveit.

ApointwhichIdon'tthinkeveryoneappreciatesisthatmakingsomething
availablebyFTPisnotnecessarilythewaytoprovidethewidestdistribution.
TheInternetisstillahighlyelitegroup.MostcomputerusersareNOTonit.
ItismyunderstandingfromPHthatthecountrywhereMINIXismostwidelyused
isGermany,nottheU.S.,mostlybecauseoneofthe(commercial)German
computermagazineshasbeenactivelypushingit.MINIXisalsowidelyusedin
EasternEurope,Japan,Israel,SouthAmerica,etc.Mostofthesepeoplewould
neverhavegottenitiftherehadn'tbeenacompanysellingit.

Gettingbacktowhat"free"means,whataboutfreesourcecode?Coherent
isbinaryonly,butMINIXhassourcecode,justasLINUXdoes.Youcanchange
itanywayyouwant,andpostthechangeshere.Peoplehavebeendoingthat
for5yearswithoutproblems.Ihavebeengivingfreeupdatesforyears,too.

Ithinktherealissueissomethingelse.I'vebeenrepeatedlyofferedvirtual
memory,paging,symboliclinks,windowsystems,andallmanneroffeatures.I
haveusuallydeclinedbecauseIamstilltryingtokeepthesystemsimple
enoughforstudentstounderstand.Youcanputallthisstuffinyourversion,
butIwon'tputitinmine.Ithinkitisthispointwhichirksthepeoplewho
say"MINIXisnotfree,"notthe$60.

AninterestingquestioniswhetherLinusiswillingtoletLINUXbecome"free"
ofhiscontrol.Maypeoplemodifyit(ruinit?)andsellit?Rememberthe
hundredsofmessageswithsubject"Re:Yoursoftwaresoldformoney"whenit
wasdiscoveredtheMINIXCentreinEnglandwassellingdisketteswithnews
postings,moreorlessatcost?

SupposeFredvanKempenreturnsfromthedeadandwantstotakeover,creating
Fred'sLINUXandLinus'LINUX,bothusefulbutdifferent.Isthatok?The
testcomeswhenasizablegroupofpeoplewanttoevolveLINUXinawayLinus
doesnotwant.Untilthatactuallyhappensthepointismoot,however.

IfyoulikeLinus'philosophyratherthanmine,byallmeans,followhim,but
pleasedon'tclaimthatyou'redoingthisbecauseLINUXis"free."Just
saythatyouwantasystemwithlotsofbellsandwhistles.Fine.Yourchoice.
Ihavenoargumentwiththat.Justtellthetruth.

Asanaside,forthosefolkswhodon'treadnewsheaders,LinusisinFinland
andIaminTheNetherlands.Arewereachingasituationwhereanother
criticalindustry,freesoftware,thathadbeentotallydominatedbytheU.S.
isbeingtakenoverbytheforeigncompetition?Willwesoonsee
PresidentBushcomingtoEuropewithRichardStallmanandRickRashid
intow,demandingthatEuropeimportmoreAmericanfreesoftware?

AndyTanenbaum([email protected])

From:[email protected](AndyTanenbaum)
Subject:Re:Unhappycampers
Date:5Feb9223:23:26GMT
Organization:Fac.Wiskunde&Informatica,VrijeUniversiteit,Amsterdam

Inarticle<[email protected]>[email protected](FredFish)writes:
>IfPHwasnotgrantedamonopolyondistribution,itwouldhavebeenpossible
>foralloftheinterestedminixhackerstoorganizeandsetupagroupthat
>wasdedicatedtoproducingenhancedminix.Thisaimofthisgroupcouldhave
>beentoproduceasingle,supportedversionofminixwithallofthecommonly
>requestedenhancements.Thiswouldhaveallowedminixtoevolveinmuchthe
>samewaythatgcchasevolvedoverthelastfewyears.
ThisISpossible.Ifagroupofpeoplewantstodothis,thatisfine.
Ithinkcoordinating1000primadonnaslivingallovertheworldwillbe
aseasyasherdingcats,butthereisnolegalproblem.Whenanewrelease
isready,justmakeadifflistingagainst1.5andpostitormakeitFTPable.
Whilethiswillrequiresomeworkonthepartoftheuserstoinstallit,
itisn'tthatmuchwork.Besides,Ihaveshellscriptstomakethediffs
andinstallthem.ThisiswhatFredvanKempenwasdoing.Whathedidwrong
wasinsistontherighttopublishthenewversion,ratherthandiffsagainst
thePHbaseline.ThatcutsPHoutoftheloop,which,notsurprisingly,they
weren'twildabout.Ifpeoplestillwanttodothis,goahead.

Ofcourse,Iamnotnecessarilygoingtoputanyofthesechangesinmyversion,
http://www.oreilly.com/openbook/opensources/book/appa.html

16/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

sothereissomeworkkeepingtheofficialandenhancedonesinsync,butI
amwillingtocooperatetominimizework.Ididthisforalongtimewith
BruceEvansandFransMeulenbroeks.

IfLinuswantstokeepcontroloftheofficialversion,andagroupofeager
beaverswanttogooffinadifferentdirection,thesameproblemarises.
Idon'tthinkthecopyrightissueisreallytheproblem.Theproblemis
coordinatingthings.ProjectslikeGNU,MINIX,orLINUXonlyholdtogether
ifonepersonisincharge.Duringthe1970s,whenstructuredprogramming
wasintroduced,HarlanMillspointedoutthattheprogrammingteamshould
beorganizedlikeasurgicalteamonesurgeonandhisorherassistants,
notlikeahogbutcheringteamgiveeverybodyanaxeandletthemchopaway.

Anyonewhosaysyoucanhavealotofwidelydispersedpeoplehackawayon
acomplicatedpieceofcodeandavoidtotalanarchyhasnevermanageda
softwareproject.

>Whereisthesizeablegroupofpeoplethatwanttoevolvegccinawaythat
>rms/FSFdoesnotapproveof?
Acompilerisnotsomethingpeoplehavemuchemotionalattachmentto.If
thelanguagetobecompiledisagiven(e.g.,anANSIstandard),thereisn't
muchroomforpeopletoinventnewfeatures.Anoperatingsystemhasunlimited
opportunityforpeopletoimplementtheirownfavoritefeatures.

AndyTanenbaum([email protected])

From:[email protected](LinusBenedictTorvalds)
Subject:Re:Unhappycampers
Date:6Feb9210:33:31GMT
Organization:UniversityofHelsinki

Inarticle<[email protected]>[email protected](AndyTanenbaum)writes:
>
>IfLinuswantstokeepcontroloftheofficialversion,andagroupofeager
>beaverswanttogooffinadifferentdirection,thesameproblemarises.

ThisisthesecondtimeI'veseenthis"accusation"fromast,whofeels
prettygoodaboutcommentingonakernelheprobablyhaven'tevenseen.
Oratleasthehasn'taskedme,orevenreadalt.os.linuxaboutthis.
Justsothatnobodytakeshisguessforthefullthruth,here'smy
standingon"keepingcontrol",in2words(three?):

Iwon't.

TheonlycontrolI'veeffectivelybeenkeepingonlinuxisthatIknow
itbetterthananybodyelse,andI'vemademychangesavailableto
ftpsitesetc.Thosehavebecomeeffectivelyofficialreleases,andI
don'texpectthistochangeforsometime:notbecauseIfeelIhave
somemoralrighttoit,butbecauseIhaven'theardtoomanycomplaints,
anditwillbeacoupleofmonthsbeforeIexpecttofindpeoplewho
havethesame"feel"forwhathappensinthekernel.(Well,maybe
peoplearegettingthere:tytsocertainlymadesomeheavychangeseven
to0.10,andothershavehackeditaswell)

InfactIhavesentoutfeelersaboutsome"linuxkernel"mailinglist
whichwouldmakethedecisionsaboutreleases,asIexpectIcannot
fullysupportallthefeaturesthatwill/have/tobeadded:SCSIetc,
thatIdon'thavethehardwarefor.Theresponsehasbeennonexistant:
peopledon'tseemtobethateagertochangeyet.(well,oneperson
feltIshouldaskaroundfordonationssothatIcouldsupportitand
ifanybodyhasinterestinghardwarelyingaround,I'dbehappytoaccept
it:)

Theonlythingthecopyrightforbids(andIfeelthisiseminently
reasonable)isthatotherpeoplestartmakingmoneyoffit,anddon't
makesourceavailableetc...Thismaynotbeaquestionoflogic,but
I'dfeelverybadifsomeonecouldjustsellmyworkformoney,whenI
madeitavailableexpresslysothatpeoplecouldplayaroundwitha
personalproject.Ithinkmostpeopleseemypoint.

Thataside,ifFredvanKempenwantedtomakeasuperlinux,he'squite
wellcome.Hewon'tbeabletomakemuchmoneyonit(distributionfee
only),andIdon'tthinkit'sthatgoodanideatosplitlinuxup,butI
wouldn'twanttostophimevenifthecopyrightletme.

>Idon'tthinkthecopyrightissueisreallytheproblem.Theproblemis
>coordinatingthings.ProjectslikeGNU,MINIX,orLINUXonlyholdtogether
>ifonepersonisincharge.

Yes,coordinationisabigproblem,andIdon'tthinklinuxwillmove
awayfrommeas"headsurgeon"forsometime,partlybecausemostpeople
understandabouttheseproblems.Butcopyright/is/anissue:ifpeople
feelIdoabadjob,theycandoitthemselves.Likewisewithgcc.The
minixcopyright,however,meansthatifsomeonefeelshecouldmakea
betterminix,heeitherhastomakepatches(whicharen'tthatgreat
whateveryousayaboutthem)orstartofffromscratch(andbeattacked
becauseyouhaveotherideals).

Patchesaren'tmuchfuntodistribute:Ihaven'tmadecdiffsfora
singleversionoflinuxyet(Iexpectthistochange:soonthepatches
willbesomuchsmallerthanthekernelthatmakingbothpatchesanda
completeversionavailableisagoodideanotethatI'dstillmakethe
http://www.oreilly.com/openbook/opensources/book/appa.html

17/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

wholeversionavailabletoo).Patchesuponpatchesaresimply
impractical,especiallyforpeoplethatmaydochangesthemselves.

>>Whereisthesizeablegroupofpeoplethatwanttoevolvegccinawaythat
>>rms/FSFdoesnotapproveof?
>Acompilerisnotsomethingpeoplehavemuchemotionalattachmentto.If
>thelanguagetobecompiledisagiven(e.g.,anANSIstandard),thereisn't
>muchroomforpeopletoinventnewfeatures.Anoperatingsystemhasunlimited
>opportunityforpeopletoimplementtheirownfavoritefeatures.

Well,there'sGNUemacs...Don'ttelluspeoplehaven'tgotemotional
attachmenttoeditors:)

Linus

From:[email protected](DavidMiller)
Subject:LinuxisObsoleteandfollowuppostings
Date:3Feb9201:03:46GMT
Organization:AppliedComputerGroup

Asanobserverinterestedinoperatingsystemdesign,Icouldn'tresistthis
thread.PleaserealizethatIamnotreallyexperiencedwithminux
orlinux:Ihavebeenintounixformanyyears.First,afewobservations:

MinixwaswrittentobeaneducationaltoolforASTs'classes,notacommercial
operatingsystem.Itwasneveradesignparametertohaveitrunfreely
availablesourcecodeforunixsystems.Ithinkitwasalsoastatementof
howoperatingsystemsshouldbedesigned,withamicrokernelandseperate
processescoveringasmuchoftherequiredfunctionalityaspossible.

LinuxwaswrittenmostlyasalearningexerciseonLinusparthowto
programthe386family.Designingtheultimateoperatingsystemwasnot
anobjective.Providingausable,freeplatformthatwouldrunallsorts
ofwidelyavailablefreesoftwarewasaconsideration,andonethatappears
tohavebeenwellmet.

Criticismfromanyonethateitherofthesesystemsisn'twhat*they*would
likeittobeismisplaced.Afterall,anybodythathasacomputerthatwill
runeithersystemisfreetodowhatLinusandAndrewdid:writeyourown!

I,forone,applaudLinusforhisconsiderableeffortindevelopingLinux
andhisdecisiontomakeitfreetoeverybody.IapplaudASTforhis
efforttomakeminixaffordableIhaverealtroublerelatingtocomplaints
thatminixisn'tfree.Ifyoucanaffordthetimetoexploreminix,anda
basiccomputersystem,$150isnotmuchmoreandyoudogetabooktogo
withit.

Next,afewquestionsfortheprofessor:

Isminixsupposedtobea"realoperatingsystem"oraneducationaltool?
Asaneducationaltoolitisanexcellentwork.Asarealoperatingsystem
itpresentssometerriblyroughedges(whynomalloc()?,justforstarters)
MyfeelingfromreadingTheBookandlisteningtopostingshereisthatyou
wantedatooltoteachyourclasses,andalotofotherswantedtoplaywith
anaffordableoperatingsystem.Theseothershavebeentryingtobolton
enoughfeaturestomakeita"realoperatingsystem",withlessthan
outstandingsuccess.

Whysplitfundementalosfunctions,suchasmemorymanagement,intouser
processes?Asallgood*nixgurusknow,themeanstosuccessisto
divideandconquer,withthegoalbeingto*simplify*theprobleminto
managable,welldefinedcomponents.Ifsplittingbasicpartsofthe
operatingsystemintouserspaceprocessescomplicatesthefunctionby
introducingadditionalmechanisms(messagepassing,complicatedsignals),
havewemettheobjectiveofsimplifyingthedesignandimplementation?

Iagreethat*nixhassufferedabadcaseoffeatureitisespecially
sysVr4.Perhapsthefeaturesthatpeoplewantforeitherfunctionality
orcompatibilitycouldbeofferedbyruntimeloadablemodules/libraries
thatofferthesefeatures.Themicrokernelwouldstillbeabaselevel
resourcemanagerthatalsoroutesfunctionrequeststotheappropriate
module/library.Themodulescouldbethreadsoruserprocesses.(Ithink
oshackerspleasecorrectme:))

Justmy$.04worthpleasefeelfreetopostoremailresponses.
Ihavenoformalprogressivetrainingincomputerscience,soIamreally
askingthesequestionsinignorance.Isuspectalotofothersonthe
nethavesimilarquestionsintheirownminds,butI'vebeenwrongbefore.

David

From:[email protected](MichaelHaardt)
Subject:1.6.17summaryandwhyIthinkASTisright.
Date:6Feb9220:07:25GMT
ReplyTo:[email protected](MichaelHaardt)
Organization:Gandalfa38620machine

IwillfirstgiveasummaryofwhatyoucanexpectfromMINIXin*near*
future,andthenexplainwhyIthinkASTisright.

http://www.oreilly.com/openbook/opensources/book/appa.html

18/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

Sometimeago,IaskedfordetailsaboutthenextMINIXrelease(1.6.17).
Igotsomeresponse,butonlyfrompeoplerunning1.6.16.Thefollowing
informationsarenotofficialandmaybewrong,buttheyareallIknow
atthemoment.Correctmeifsomethingiswrong:

The1.6.17patcheswillberelativeto1.5asshippedbyPH.

Theheaderfilesareclean.

Thetwotypesoffilesystemscanbeusedtogether.

ThesignalhandlingisrewrittenforPOSIX.Theoldbugisremoved.

TheANSIcompiler(availablefromTransmediar,Iguess)comeswith
compilerbinariesandnewlibraries.

Theredon'tseemtobesupportfortheAmoebanetworkprotocol.

times(2)returnsacorrectvalue.termios(2)isimplemented,butit's
moreahack.Idon'tknowif"implemented"meansinthekernel,orthe
currentemulation.

Thereisnodocumentationaboutthenewfilesystem.Thereisanewfsck
andanewmkfs,don'tknowaboutde.

WiththeANSIcompiler,thereisbetterfloatingpointsupport.

Theschedulerisimproved,butnotasgoodaswrittenbyKaiUweBloem.

IaskedthesethingstogetfactsforthedecisionifIshouldupgradeto
MINIX1.6.17ortoLinuxaftertheexamensareover.Well,thedecision
ismade:IwillupgradetoLinuxattheendofthemonthandremoveMINIX
frommywinchester,whenLinuxrunsallthesoftwareIneedandwhichcurrently
runsunderMINIX1.5withheavypatches.Iguessthismaytakeuptotwo
months.Thesearethemainreasonsformydecision:

Thereisno"current"MINIXrelease,whichcanbeusedasbasisfor
patchesandnobodyknows,when1.6.17willappear.

ThelibrarycontainsseveralbugsandfromwhatIhaveheard,thereis
noworkdoneatthem.Therewillnotbeanewcompiler,andthe16bit
usersstillhavetousebuggyACK.

1.6.17shouldoffermorePOSIX,butacompletetermiosisstillmissing.

Idoubtthatthereisstillmuchdevelopmentfor16bitusers.

IthinkIwillstopmaintainingtheMINIXsoftwarelistinafewmonths.
Anyoneoutthere,whowouldliketocontinueit?UntilLinuxruns
*perfect*onmymachine,eachupdateofOrigamiwillstillrunon16bit
MINIX.Iwillannouncewhenthelastoftheseversionsappears.

Inmyopinion,ASTisrightinhisdecisionaboutMINIX.Ireadtheflame
warandcan'tresisttosaythatIlikeMINIXthewayitis,nowwhere
thereisLinux.MINIXhassomeadvantages:

Youcanstartplayingwithitwithoutawinchester,youcaneven
compileprograms.Ididthisafewyearsago.

Itissosmall,youdon'tneedtoknowmuchtogetasmallsystemwhich
runsok.

Thereisthebook.Ok,onlyforversion1.3,butmostofitisstillvalid.

MINIXisanexampleofanonmonolithickernel.Callitamicrokernel
orahacktoovercomebraindamagedhardware:Itdemonstratesaconcept,
withitsprosandconsadocumentedconcept.

Inmyeyes,itisanicesystemforfirststepsinUNIXandsystems
programming.IlearnedmostofwhatIknowaboutUNIXwithMINIX,in
allareas,fromprogramminginCunderUNIXtosystemadministration
(andsecurityholes:)MINIXgrewwithme:1.5.xxupgrades,virtual
consoles,mail&news,textprocessing,crosscompilingetc.Nowitis
toosmallforme.Idon'tneedateachingsystemanymore,Iwouldlike
togetamorecomplicatedandfeaturefulUNIX,andthereisone:Linux.

Backintheolddays,v7wasstateoftheart.TherewasMINIXwhich
offeredmostofit.Inoneortwoyears,POSIXiswhatyouareusedto
see.Hopefully,therewillbeMINIX,offeringmostofit,withanew
book,forpeoplewhowanttorunasmallsystemtoplayandexperimentwith.

Stopflaming,MINIXandLinuxaretwodifferentsystemswithdifferent
purposes.Oneisateachingtool(andagoodoneIthink),theotheris
realUNIXforrealhackers.

Michael

From:[email protected](NielsSkovOlsen)
Subject:Re:1.6.17summaryandwhyIthinkASTisright.
Date:10Feb9217:33:39GMT
Organization:DepartmentofComputerScience,UofCopenhagen

http://www.oreilly.com/openbook/opensources/book/appa.html

19/20

1/7/2015

AppendixATheTanenbaumTorvaldsDebate

[email protected](MichaelHaardt)writes:

>Stopflaming,MINIXandLinuxaretwodifferentsystemswithdifferent
>purposes.Oneisateachingtool(andagoodoneIthink),theotheris
>realUNIXforrealhackers.

Hear,hear!AndnowLinuxarticlesinalt.os.linux(orcomp.os.misc
ifyoursitedon'treceivealt.*)andMinixarticleshere.

eoff(endofflamefest:)

Niels

AppendixB>
oreilly.comHome|O'ReillyBookstores|HowtoOrder|O'ReillyContacts
International|AboutO'Reilly|AffiliatedCompanies|PrivacyPolicy
2000,O'Reilly&Associates,Inc.

http://www.oreilly.com/openbook/opensources/book/appa.html

20/20

You might also like