|
|
- Dennis de Ruiter
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 ComputerSystemenenApplicaties CSA deel#1vanhetcollegedictaat PatrickvanderSmagt September1995 Secondedition
2 2 thenamesoftheauthorsandtheuniversityofamsterdamarementioned.permissionisalso grantedtousethisbookfornon-commercialcourses,providedtheauthorsarenotiedofthis thisbookfornon-commercialuse,aslongasitisdistributedasawholeinitsoriginalform,and c1994,1995theuniversityofamsterdam.permissionisgrantedtodistributesinglecopiesof beforehand. Theauthorscanbereachedat Kruislaan403,NL{1098SJAmsterdam UniversityofAmsterdam FacultyofMathematics&ComputerScience THENETHERLANDS Phone: Fax: September1994 ComputerSystemenenApplicaties
3 Contents 1Introduction 1.2Structure1:Layersofcomputation:::::::::::::::::::::::::: 1.1Howtounderstandacomputer?::::::::::::::::::::::::::: 2Operatingsystems 1.3Overviewofthisbook::::::::::::::::::::::::::::::::: Tasksofanoperatingsystem::::::::::::::::::::::::::::: Memorymanagement::::::::::::::::::::::::::::: Processmanagement::::::::::::::::::::::::::::::15 2.2Operatingsystemstructure:::::::::::::::::::::::::::::: Themonolithicstructure::::::::::::::::::::::::::: Filemanagement:::::::::::::::::::::::::::::::: Theclient-serverstructure::::::::::::::::::::::::::: Communication:::::::::::::::::::::::::::::::::22 3Networks 3.1Introduction::::::::::::::::::::::::::::::::::::::: Goalsofcomputernetworks:::::::::::::::::::::::::: Buildingblocksofanetwork::::::::::::::::::::::::: TheISO/OSImodel:::::::::::::::::::::::::::::::::: Typesofnetworks::::::::::::::::::::::::::::::: Thesessionandtransportlayers::::::::::::::::::::::: Thepresentationlayer::::::::::::::::::::::::::::: Theapplicationlayer:::::::::::::::::::::::::::::: Thenetworklayer::::::::::::::::::::::::::::::: Thephysicallayer::::::::::::::::::::::::::::::: Thedatalinklayer:::::::::::::::::::::::::::::::37 4Computerarchitecture 3.2.7Summingup:Thereality:::::::::::::::::::::::::::37 4.2Thebus:::::::::::::::::::::::::::::::::::::::::43 4.1Generations::::::::::::::::::::::::::::::::::::::: Architectureofacomputer::::::::::::::::::::::::::41 4.4Processors::::::::::::::::::::::::::::::::::::::::46 4.3Memory::::::::::::::::::::::::::::::::::::::::: Bits,bytes,sizes:::::::::::::::::::::::::::::::: CISCvs.RISCprocessors::::::::::::::::::::::::::: Measuringprocessorspeed:::::::::::::::::::::::::: Memorytypes::::::::::::::::::::::::::::::::: Pipelining,superscalarandvectorprocessors::::::::::::::::50 3
4 Oddmanout::::::::::::::::::::::::::::::::::51 CONTENTS ATechnologietrendsindeinformatica 4.5I/O:::::::::::::::::::::::::::::::::::::::::::: Videodisplays:::::::::::::::::::::::::::::::::52 A.3Mijlpalen::::::::::::::::::::::::::::::::::::::::58 A.2Watiseencomputer?:::::::::::::::::::::::::::::::::56 A.1Inleiding:::::::::::::::::::::::::::::::::::::::::55 A.4Hetexponentieletechnologie-groeimodel:::::::::::::::::::::::60 A.3.3Bedrijfssystemen::::::::::::::::::::::::::::::::60 A.3.1Hardware::::::::::::::::::::::::::::::::::::58 A.4.1Voorbeeldvanexponentieleontwikkeling:geheugenelementen:::::::60 A.3.2Programmeertalenen-methoden:::::::::::::::::::::::59 A.4.2Waarvoorwordtdierekenkrachtgebruikt?::::::::::::::::::61 A.4.3Waaromsteedskleiner?::::::::::::::::::::::::::::61 A.6Toekomstigeontwikkelingen::::::::::::::::::::::::::::::64 A.5Delevensloopvaneencomputer:::::::::::::::::::::::::::63 A.4.5Andereaspecten::::::::::::::::::::::::::::::::63 A.4.4Chipsvandichtbijbekeken::::::::::::::::::::::::::62 Bibliography BGlossary September1994 ComputerSystemenenApplicaties
5 ListofFigures 1.1Threeexamplesoflogicalgates:OR,AND,andNOT.::::::::::::::11 2.2Virtualvs.realmemoryspace.::::::::::::::::::::::::::::19 2.3AnexamplelesystemonaUnixcomputer.::::::::::::::::::::20 2.4Theexecutionofasystemcallinamonolithicoperatingsystem.:::::::::25 2.1Anexampleprocesstree.:::::::::::::::::::::::::::::::17 2.6Theclient-serveroperatingsystemlendsitselfperfectlyforatransparentlydistributedarchitecture.::::::::::::::::::::::::::::::::::27 2.5Theclient-serverstructureoftheMINIXoperatingsystem.::::::::::::26 3.1Alocalareanetwork,consistingofanethernetconnectingvariousdevicestogether 3.2TwohostsAandBcommunicatingoveranOSInetwork.:::::::::::::37 4.1Apictureoftheinsideofa1994workstation.::::::::::::::::::::42 andwiththeoutsideworld.::::::::::::::::::::::::::::::32 4.4Pipelininginaprocessor.:::::::::::::::::::::::::::::::51 4.3TheinsideofaCPU.::::::::::::::::::::::::::::::::::47 4.2Schematicdrawingof(partof)theinsideofacomputer.::::::::::::::42 B.1Virtualmachinesstackedontopofeachother.:::::::::::::::::::67 B.2Atypicaldiskstructure(yetthetrackwidthismuchenlarged).::::::::::68 5
6 6 LISTOFFIGURES September1994 ComputerSystemenenApplicaties
7 ListofTables 1.1Apossibleanatomyofthemoderndigitalcomputer(after(Tanenbaum,1984)).: 2.1BSDandSysVimplementationsofUnixoperatingsystems.::::::::::::14 3.1Namesofthehighest-levelInternetdomains.:::::::::::::::::::: Thehistoryofcomputerarchitecturegenerations.::::::::::::::::::40 3.2TheISO/OSIreferencemodelfornetworking.::::::::::::::::::::34 4.2Comparisonoftypesofmemory.:::::::::::::::::::::::::::46 4.4Numberofdhrystonespersecondforvariouscomputers.::::::::::::::50 4.3Variousprocessorsthroughouttheages.:::::::::::::::::::::::49 B.1TypicaldataforaSunSCSIharddisk.::::::::::::::::::::::::68 7
8 8 LISTOFTABLES September1994 ComputerSystemenenApplicaties
9 Chapter1 Introduction Whatmakesacomputerrun?Therearemanypossibleanswerstothisquestion,dependingon 1.1 thepointofviewofthequestioner.forinstance,anelectricalengineerwho'susedtobuilding Howtounderstandacomputer? circuitshimselfmayhaveatotallydierentviewthanasecretarytypinglettersforhisbosson amaccomputer. systems:thehierarchical,layeredstructure.thislayeredstructuredescribesincreasinglevels andmanyauthorssincethen. ofcomplexityofviewingacomputersystem.inthiswefollowtanenbaum(tanenbaum,1984) Inthischapter,andthroughoutthisbook,we'lladoptanot-so-shockingviewoncomputer 1.2Owego. intable1.1isusefultobreaksacomputersystemdownintosmallerparts.althoughthe Togetabetterunderstandingofthecomputer'sinnerworkings,thelayeredstructureasshown Structure1:Layersofcomputation LevelAbstraction 2546 high-levelprogramming 13 imperativeprogramming assemblylanguage operatingsystemkernel machinelanguage Table1.1:Apossibleanatomyofthemoderndigitalcomputer(after(Tanenbaum,1984)). 0 microprogram digitallogic dissection,aspresentedinthetable,willnotbeunfamiliarorcontroversialtotheinitiated, thedistinctionbetweenthelevelsisnotasclear-cutasthetablemaysuggest.thereisone importantdierence,however,whichmayberegardedasaguideline:ingeneral,thetranslation betweenthehigherlevelsoccursthroughcompilation;thetranslationamongthelowerlevels throughinterpretation.thatistosay,apascalprogramatlevel5will,ingeneral,becompiled thatcomputerwhich,ontheonehand,considersitlevel-by-level,butontheother,alsoexamines isactuallyinterpretedinthemicroprogramatlevel1,insteadofcompiled. tolevel4beforeitisexecuted.ontheotherhand,aprogramatlevel2(inmachinelanguage) Bydissectingadigitalcomputerinsuchaway,thistextwillattempttopresentaviewof 9
10 10 CHAPTER1.INTRODUCTION level-to-level.let'sconsiderthelevelsinturn. 6:Highlevelprogramming.Programminglanguageshavedevelopedalongseverallines.At thetoplevelwethereforedistinguishthree(mutuallyincomparable)programmingstyles: visualprogramming,declarativeprogrammingandobject-orientedprogramming.alanguagemaybelongtoseveralofthesecategories.eachofthethreecategoriescanbe explainedbestbycomparingittoimperativeprogrammingatlevel5(whereyouwillread: aprograminanimperativelanguageisanorderedsequenceofstatementsandprocedures callsspecifyingthestepsthecomputermustfollow). Visualprogrammingallowstheusertousegraphicstocreateaprogram.Sometypes ofcomplexprograms,suchasthosethatuseconcurrentprocessesordealwithreal-time systems,arediculttodescribewithtextuallanguages;graphicalspecicationsmaybe moreappropriate.forinstance,partoftheexspectlanguagethatweuseintheprogramminglabofthiscourseisgraphicalandistypicallyusedtospecifynetworksofinteracting components. Aprogramindeclarative(non-procedural)styletellsthecomputeronlywhatistobe accomplished,butnothowtodoit.logicallanguageslikeprolog,functionallanguages, andalgebraicspecicationlanguagesformsubclassesofdeclarativelanguages. Whereasprogramsinanimperativestyleareprocess-oriented,object-orientedprogrammingfocusesonthedescriptionofobjects:data-structureswiththerelatedoperations.Object-orientedprogrammingnaturallyleadstomodularstyleofprogramming. Somelanguageswithfeaturessupportingtheobject-orientedprogrammingparadigmare Simula,Smalltalk,C++andEiel. 5:Imperativeprogramming.Imperativeorproceduralprogrammingisstilltheprevalent style.aprograminanimperativelanguageisanorderedsequenceofstatementsand procedurescallsspecifyingthestepsthecomputermustfollow.thestatementsreect basicmachineoperations.thenumberandsizeoftherequiredstepsvarywithvarious imperativelanguages.wellknownlanguagesinthisclassarepascal,fortran,algol, COBOL,BASICandC. 4:Assemblylanguage.Thisisthelowestlevelthattheuserusuallysees,ifatall.Assembly languageprogramsconsistoflongsequencesofcodedinstructionssuchasadd,jump,load. Eachinstructiondirectlycorrespondswithaprocessorinstruction.Thereforeassembly languagesarelow-levellanguages:theyaretotallymachinedependent.thisincontrast withthelanguagesatlevels5{8,calledhigh-levellanguages,whichcanusuallybeported fromonemachinetoanotherwithoutmuch(orany)adaptation. Inassemblylanguages,thereareonlyafewdatatypesavailable(forinstance,oating point,character,andinteger),andnoinstructionstobuildnewtypesfromtheexisting ones,suchasispossibleinallhigh-levellanguages.secondly,thereareinstructionsfor jumpingtootherinstructionsand,often,thepossibilitytocallsubroutines(procedures, functions).itisalsopossibletomakesystemcallsbyjumpingtosystemsubroutines:read akeyboardcharacter,readablockfromdisk,etc.suchcallsarehandledbytheoperating system. 3:Operatingsystemkernel.Thislevelcanbeseenasanextensiontolevel2.Thelanguage availableatthatlevelisstillavailablehere,butiscomplementedwiththeoperatingsystem, whichhidesmuchofthelargeintestineofthecomputer.chapter2discussesoperating systems. 2:Machinelanguage.Machinelanguageislikelevel4(assembly),butdoesnotprovidecalls totheoperatingsystem.thisisbare-boneassembly,andgivesthefullpowerofthe September1994 ComputerSystemenenApplicaties
11 1.2.STRUCTURE1:LAYERSOFCOMPUTATION machinetotheuser.prettycumbersometoprogram,this,andwewillnotgointothis 11 1:Microprogram.Onsomecomputers,instructionsonlevel2areinterpretedbythemicroprogramintomicrocodeonlevel1.Considerthefollowingexample.Aninstructionto levelanyfurther. addtonumbers,oneinmemorylocationaandtheotherinmemorylocationb,together andstoretheresultina,mightbeinterpretedasfollows: 2.decodetheinstruction;inthiscase,itisfoundthatthevaluesofaandbmustalso 1.readthenextinstructionstoredatthememoryaddressindicatedbytheprogram befetched. counter. 3.fetchthevalueofa. 4.fetchthevalueofb. 5.getcontentsofmemorylocationa. 6.getcontentsofmemorylocationb. 9.incrementtheprogramcountertoskiptothenextinstruction. 8.storetheresultbackinmemorylocationa. 7.addtwonumberstogetherintheprocessor. tion4.4),theallowableinstructionsaresocomplexthattheycannotbedirectlyexecuted Insomeprocessordesigns(tobeprecise,CISCprocessorswhicharediscussedinsecstructionstoredinmemoryiskept. Theprogramcounterisaregisterintheprocessorinwhichtheaddressofthenextin- 0:Digitallogic.Thenallevel,thatofthedigitallogic,representsthecomputerprogram hardware.nomoreonthislevel,too. inhardwarebutarebrokenintosmaller,simpler,instructionsthatcanbeexecutedin anddataby0and1valuesontheso-calledlogicalgates.thesegatesperformboolean operationssuchasandandorontheirinputs.someexamplesareshowningure1.1. symbol: x1 x2 x1 NOT y=x1jx2 y x2y=x1&x2y zy=xy truthtable: Cnotation: standardnotation: y=x1+x2 00 x1x2y y=x1x2 00 x1x2y y=x 01x y10 can'tbuildaclock,though,withoutacrystal).indeed,computersconsistforalargepart TheAND,OR,andNOTgatestogethersuce(inprinciple)tobuildacomputer(you Figure1.1:Threeexamplesoflogicalgates:OR,AND,andNOT. ComputerSystemenenApplicaties September1994
12 12 fromtheselogicalgates.bycombiningseveraltypesofgates,youcanbuildadders(i.e., CHAPTER1.INTRODUCTION circuitsthataddtwonumbers)andmemory. allnumbersareeither0or1,isnamedaftergeorgeboole(1815{1864)whorstpublished onthesubject.thegatesarefunctionsinthatalgebra,andeachfunctioncanbedescribed Todesigncircuitryusingthesegates,Booleanalgebraisused..Thisalgebra,inwhich byatruthtableasshowninthegure.thesetruthtablesgivetheoutputofthegate Example1Showhowasinglememorycell(i.e.,apieceofcircuitrythatcanstorea0 or1)canbedesignedfromtwonand's(anandisanandfollowedbyanot,which foreachinput;thisispossibleduetothefactthattheinputsarebinary. Letustakeanotherview,somewhatmorehigh-level,atcomputersystems. thereforeoutputsa0whenbothinputsare1,and1otherwise.insymbolsy=x1+x2). Clearly,theauthorstrytocramawholecurriculumintoonecourse.Firstofallwewanttolook 1.3 thelevelsofcomputationinmoredetail.chapter2,forinstance,looksattheoperatingsystem, Overviewofthisbook aroundlevel3andgropingupwardsanddownwards.chapter3makes,literallyandguratively, howtheyconnect.thisleadstoanewlayeredsystemknownasosi.backtobasicsinchapter4, architectures.nextsetoflevels:theprogramminglanguages.moretobewrittenonthatin aside-stepbyplacingafewofthelevel-hierarchiesofcomputersystemsinanetwork,andsee whichconcentratesondesignissuesoccurringbelowlevel3:thehow,what,andwhyofcomputer thisintroduction. underlyingtheoreticalconcepts.howdowemodeltheconnectionbetweentoprocessesrunning ononecomputer?howtopreventdeadlocks?toensuresecurecomputation(nicewhenyou're operatinganuclearplantorasubmarine)?eachchapterwillshowsidestepstosuchtopics. So,apartfromwalkingalongtheroadofboringfactafterfact,wealsowanttoelucidatethe Thuswewillnotonlygointothewhatofcomputerscience,butalsothewhy. toofartoexplainindetail,butareinterestingtoknowanyway. And,thewheniscoveredinappendixA.AppendixBgivesaglossaryoftopicswhichgo September1994 ComputerSystemenenApplicaties
13 Chapter2 Operatingsystems theoperatorprogrammedthemachinebyprovidingitwithasetofinstructions,whichwere Earlycomputing1inthe1940'sand1950'swasabitlikeworkingonapowerfulpocketcalculator: directlyexecutedbythehardware.programmingoccurredinmachinelanguage,codedasbinary orhexadecimalnumbers.withthedevelopmentoftechnologyduringthe1960's,computers becamelarger,faster,andmorecomplex.soonitbecameinfeasibletohaveasingleperson controlallpartsofthecomputersystembyhand.partbypartthesetaskswereautomatedto easethejoboftheoperator:therstoperatingsystemswereborn.inthe1960'scomputers becamepowerfulenoughtoservemultipleusersatthesametime,inordertodecreasethe alsoknownasmultiprogramming,wasborn.mit,belllabs,andgeneralelectricmadean timethatsomeonehadtowaitbeforehecouldgetaccesstothecomputer.thustime-sharing, ofuserstoconnectsimultaneouslytoasinglecomputer. attemptatwritinganoperatingsystemtosupporttime-sharing.thisoperatingsystem,called MULTICS(MULTiplexedInformationandComputingService),wastoallowseveralhundreds Indeed,acurrent-daycomputerwithoutoperatingsystemisunthinkableandvirtuallyunusable. ity,too,inordertokeepthecomputerusableandunderstandableforalargevarietyofusers. Inthelayeredstructureofacomputersystemshownintable1.1,themiddlelayerisrepresentedbytheoperatingsystem.Thismiddlelayerisveryimportant,sinceitshieldsthe particularitiesoftheunderlyinghardwarefromtheabovelayersasmuchaspossible(andde- Asthecomplexityofcomputersincreased,operatingsystemsincreasedinsizeandcomplex- whatevermachinewithoutmuchextrawork;or,thatyoucanupdatetoanext,faster,version thisusercandothesameoperationsonverydierentcomputers.thisasksfortheexistence sired).theoperatingsystempresentstheuserwithavirtualmachine(glossaryp.67)suchthat ofstandards,suchthatyourprogramscanbeusedonasun,silicongraphics,next,pc,or anditwillbeusedeverafter.withpatches,extensions,andalterationstillkingdomcome, ofthesamecomputerwithouthavinganysideeects. ormakesacomputerarchitecturewhichissubsequentlywell-marketed,itspopularitybooms, tokeepupwithnewtrends.unixisaverygoodexample(see(goodheart&cox,1994)fora Unfortunately,standardsareusuallydefacto.Thatistosay,someonewritesaprogram camemuchfurtherthanrunningonafewcomputersatmit.however,kenthompsonfrom toocomplexaproject,belllabsandgeneralelectricbailedout,andtheoperatingsystemnever wonderfuldescriptionofthehistoryofunix).atthetimethatmulticswaswritten,itwas BellLabs,whohadbeenworkingontheMULTICSproject,simpliedMULTICStoprovide accesstoacomputerforoneuser(infact,hehimselfrunningapdp{7),leadingtoanoperating systemwhichhedubbedunics(uniplexedinformationandcomputingservice).together AppendixAislessconcise. withdennisritchie,alsofrombelllabs,theyrewrote,redesigned,andrespelledtheoperating 1Therstsectioninchapter4alsogivesaconcisehistoryofcomputing,notverydierentfromthisone. 13
14 systemtounixinthehigh-levelprogramminglanguagecdesignedbyritchie.whyisunixso 14 CHAPTER2.OPERATINGSYSTEMS popular?well,whenthompsonandritchiehadwrittenunix,at&tlicensedtheoperating systemtouniversitiesalmostforfree,andthusitgainedverymuchinpopularity.sincethen manyavoursofunixsawthelight,andafewattemptsforstandardisationleadtoanincreasing 4;see(Goodheart&Cox,1994)). mess. (SystemFive)wasdesignedatAT&TBellLabs,andintendedasastandardisationofUnix isaavourofunixthathasbeendevisedattheuniversityofcaliforniaatberkeley.sysv ThetwomainstandardisationsareBSDandSysV(alsoknownasSVR4forSysVRevision whichwouldsurpassprevioushacks ataskthathasmostlybeenreached.oneofthemost BSDstandsforBerkeleyStandardDistributionand versions,takingthebestfromallworlds.table2.1showssomeuniximplementations,and importantfeaturesofsysvunixisthatitcombinesbsd,svr3,sunos,andotherunix whetherthey'rebsdorsysv.so,whatisthedierencebetweenthesetwoavours?well,it Table2.1:BSDandSysVimplementationsofUnixoperatingsystems. SunOS(=Solaris1) Solaris(v.2andhigher)Sun Irix NeXTStep OSname machine NeXT,486,Sun,:::BSD SiliconGraphics type Tondoutwhichoperatingsystemyou'reusing,typeuname-a.IfitsaysSunOS5.2orhigher,thenit'sSolaris. Linux PC SysV wouldbepossibletoprovidealistofdetailswheretheonediersfromtheother(wewon't; don'tworry.ifyoureallyneedsuchalist,consult(frisch,1991)and(goodheart&cox,1994)). But:::fundamentaldierences?AccordingtoPerryHutchison, fromstrenuousdisagreementastowhichisthebrokenone. Thefundamentaldierenceisthatoneisbroken,theotherisnot.Theamesarise thesunos4.1.3bsdenvironmentmaybebroughttolight. But,ofcourse,manypeopledisagree. areforthisenvironment,butinafewcasesdierencesbetweensuchasysvenvironmentand Asthetableshows,Solaris2.3isSysVbased.Mostoftheexamplespresentedinthisbook Thematerialinthischapterisforalargepartbasedon(Tanenbaum,1987)and(Hwang,1993), amodulardescriptionofthetasksthathavetobeperformedbyanoperatingsystem. useful. butalsoderivedfromdiscussionswithvariousknow-it-all's.forthis,theinternetisextremely partsarecombinedinsection2.2,whichshowsagoodandanot-so-goodwayofsettingupan operatingsystem. Thestructureofthischapterisasfollows.Insection2.1,therealworkisbegun:itgives Morepracticalissuesarecoveredintheprogramminglabmanual,whichalsocoverstheshell All September1994 indetail.sincetheshellisactuallynotapartoftheoperatingsystembutratheraninterface towardsit,itisnotcoveredhere. ComputerSystemenenApplicaties
15 2.1.TASKSOFANOPERATINGSYSTEM Tasksofanoperatingsystem Aswehaveseeninsection1.2,acomputersystemcanbedissectedinanumberoflayers.One ofthelayersistheoperatingsystem,whichagainconsistsofafewlayers2.inthischapterwe willstudythelayeredstructureofanoperatingsystem. Traditionallythe`layeredness'ofoperatingsystemswasmoreaprinciplethanafact.After all,ifyoureallywanttoseparatepartsofthefunctionalityofanoperatingsystem,youwillalso havetoprovideameansofcouplingthosepartstogether.inatrulymodularsystemthatmeans communication,andcommunicationmeansoverhead:itsimplycoststimetocommunicate,and ifthattimebecomesnoticeable,userswilltendtochooseafasteroperatingsystem.yet,with theincreaseofmemorysize(seesection4.3)andcomputingpower(seesection4.4)ofcomputers, modernoperatingsystemscanindeedassumealayeredstructure,wherethepartsofthesystem arecompletelyseparatedandcooperatebypassingmessages. Theintroductionofthischapterattemptedtoshowwhyyoureallyneedanoperatingsystem. Inthesubsequentsectionswewillstudysometasksanoperatingsystemhastoperform.In ordertosimplifytheunderstandingofanoperatingsystem,thetasksithastoperformcanbe dissectedinanumberofclasses.theseclassesarerelatedtopartsofthecomputer:thecpu (processmanagement),i/o(lemanagement),andthememory(memorymanagement).we willdiscussthesethreepartsinturn.notethatthistrisectionisonlyexemplar;forexample,a textdescribingacomputerdedicatedtodatabasesmighthaveincludedasectionondatabase management;thiscouldalsobeincludedasapartoftheoperatingsystem.or,asystemusedfor imageprocessingmayhaveaspecialpartoftheoperatingsystemdedicatedtospecicoperations forimageprocessing.putallpartstogetherandyouhaveanoperatingsystem Processmanagement Inthemostsimpleoperatingsystems,suchasMSDos,thereisalwaysoneprogramrunning atanytime.forexample,theuserstartstoeditaprogram,andwhennishedquitsthe editor.next,thecompilercanbestartedtocompiletheprogram.thentheuserrunsit.this schememaybesucientforsuchsimpleuse,butisveryinecientandannoyingwhenmore complicatedproblemshavetobetackled.forinstance,aminimumrequirementwouldbeto useacomputerwhileatextisbeingprinted.thisexampleiseasilyextendedtothedesireto runatime-consumingcomputation,whilethecomputercanstillbeusedforediting,compiling, orwhatever.thisalsoleadstoamuchmoreecientuseofacomputer:forinstance,during editingtheeditorspendsintheorderof99.6%3ofitsrunningtimewaitingfortheusertopress thenextkey valuabletimewhichcanbeusedforotherthings. Perhapsthemostimportantsingletaskofanoperatingsystemistoprovidetheuserwith processmanagement.belowtheoperating-systemlevel,adigitalcomputerconsistsofa`stream' ofsimplecommandsinmachinelanguage.thesesimplecommandswillberecognisedbythe processorandleadtosomekindofaction:jump(conditional)toapartoftheprogramstored inmemory,orcallaprocedure(i.e.,retainthereturnaddress);addormultiply;assignvalues. Clearly,atthislevelitwouldnotbeeasytomakeaprogramwhichallowsausertorunmultiple programsatthesametime. Thereforeanoperatingsystemoersprocessmanagement.Aprocess,withincomputer scienceterminology,isaprograminaction.eventhoughwewouldliketorunmultipleprocesses, weoftenhaveonlyoneprocessoratourdisposal.thisproblemissolvedwithtimeslicing. Therunningtimeoftheprocessorisslicedintoverysmallparts,intheorderof10{500ms. 2Andtheshell?Well,theshellactuallyisaninterpreterofadeclarativelanguage.Itmaythereforebeplaced atlevel5,althoughthisisnotreallywhatismeantbythatlevel. 3ThiswasmeasuredbymonitoringvariousviprocessesrunningonSun's. ComputerSystemenenApplicaties September1994
16 16 CHAPTER2.OPERATINGSYSTEMS OnaUnixmachine,theprogrampsshowsalistofprocessesrunningunderthatshell.To getacompletelistofprocesses,typeps-waxu(bsd)orps-edf(sysv).thetopprogram continuouslyshowstherunningprocesses.mostimportantaretheowner,name,processid, andstatusthatareshown. Aprocesscanbecreatedby,forexample,startingaprogramfromtheshell.E.g.,whenyou typetop,youwillalsoseetopasanactiveprocess.youcansendthis(oranyotherprocess ofwhichyouaretheowner)asignal.e.g.,youcankillthetop-processbytyping,inanother window,kill-killprocnr,withprocnrtheprocessidoftop. Duringeachtimeslice,aprocessischosenbytheschedulerandsubsequentlyexecuted.Atthe endoftheslice,theprocessisputinthewaitingstate,andanextprocessischosen.switching fromoneprocesstoanextoneiscalledacontextswitchorprocessswitchandmaytake intheorderof100sonasunsparc.sotheprocessorcontinuouslyswitchesfromrunningone processtoanotherone.thetimethatoneprocessisrundependsonvariousfactors:howmany processesarerunning,howimportantistheprocess,howlongdoesacontextswitchtake.for instance,when100processesarerunningandeachprocessisaallowedtorun100ms,thenit willtake10sbeforeyoureditorwilldisplaythecharacteryoutyped wellabovetheirritation limit. Anoperatingsystemwheretheschedulercontinuouslyswitchesfromonerunnableprocess toanotherissaidtoimplementpreemptivescheduling.thisasopposedtoaso-calledrun tocompletionsystemwhereeachprocessiscompletedbeforeanotheroneisstarted.aswe shallseebelow,althoughpreemptiveschedulingisanecessityonmodernoperatingsystems, itcanleadtoraceconditionswhenmorethanoneprocessneedtoshareresources(e.g.,the disk).aconsiderableeortneedstobeputintheoperatingsystemtosolvethesefacts-of-life. Anotherdisadvantageofpreemptiveschedulingisthatthecomputercannotbeusedforprocess controlanymore.therunningtimeofanyprocesscannotbepredicted,sinceitdependsonother processes.thesystemisnotreal-timeanymore;whenyoutrytocontrolanuclearplantora robotwithsuchasystemyoumayendupwithnastysurpriseswhensomeimportantprocess hadtowaitafewmsbecausenewmailarrived!4 Aprocessisalwaysstartedbyanotherprocessusingoneofvarioussystemcalls.Asystem callislikeanordinaryfunctioncall,butthefunctioniscodedintheoperatingsystem.when processacreatesprocessb,aiscalledtheparentprocessandbthechild.thisleadstoa processtreeasshowningure2.1. Foreachprocessthatisrunningonasinglemachineanentryintheprocesstableis maintained.eachprocesshasaprocessnumber,aprocessstate,andaparentprocess number.theprocessnumberisauniqueidenticationofthatprocess,andisusedtochange therunningpriorityoftheprocess,killaprocessorsenditanothersignal,andsoon.the processstate(seebelow)indicateswhetheraprocessisrunning,sleeping,etc.theparent processnumberindicateswhichprocessstartedthisone;forinstance,forprocessesthatwere startedbytheuser(e.g.,ls,vi)thisistheshellprocessinwhichtheprocesswasinitiated. Theimportanceoftheprocessconceptisthatonecandescribethecomputerintermsofautonomousentities. Processstateandscheduling. Aswasalreadymentioned,anyprocesscanbeinoneofseveralstates.Thesestatesinclude: 4Ofcourse,processescanbegivenaprioritylevel.OnSolarisitisevenpossible(fortrustedusers)tostart real-timeprocesses.theschedulerwillalwaysrunareal-timeprocesstocompletionbeforestartingpreemptive schedulingagain.anyway,caremustbetaken. September1994 ComputerSystemenenApplicaties
17 2.1.TASKSOFANOPERATINGSYSTEM 17 rpcbind sched ttymon init xinit startxpageout keyservfsflushstartedfromkernel ttymonprocessreplacedbyxwindowsession X theuserdecidedtorunxwindows syslogd tcsh xterm xterm tcsh xterm tcsh xclock xcalc OnUnixsystems,initisalwaystherstprocess.Initisthereforetherootofthetree(not Figure2.1:Anexampleprocesstree. xtetris memorymanagerandlesystem).finallytheuserendsupwithxterm,whichinfactstartsashell. runningaprocessisrunning,i.e.,ithasbeenselectedbythescheduler.alsoknownasactive. countingthethreeotherprocessesstartedfromthekernel:thescheduler,andtwoprocessesforthe sleepingasleepingprocessisaprocesswaitingforaninterrupt,orforanotherprocesstoreturn runnablearunnableprocessisabletorun,butcurrentlynotchosenbythescheduler.also controltothisprocess.forinstance,whenaprocessissuesasystemcalltoreaddatafrom knownasreadyorwaiting. Thusthestateofaprocessdependsonwhattheprocessisdoing,andwhetherthescheduler sleepingprocesswillneverbechosenbythescheduler.alsoknownasblocked. disk,theprocesswillbeputinsleepingstateuntiltherequesteddataisavailable.a choseittorunornot.forexample,whenaprocessawantstoreadsomedatafromdisk, theprocesswillbeputintosleepingstatewhileitsrequestisbeinghandled,suchthatother processesmayutilisetheprocessorduringthetimethataiswaitingforitsdata. tocomplywithafewrules.usually,short-runningprocessesareprevalentoverlong-running ones,inordertokeeptheuser,whojustwantstolistadirectory,notwaitingtoolong.secondly, processesmayhaveahigh(0)orlow(127)priority,dependingonhowimportanttheyare,how Whenisaprocesschosenforexecution?Thereareseveralschedulingalgorithms,whichhave longtheyhaverunalready,andothersimilarfactors. Whenmanyprocessesareloaded(eventhoughtheymaybedormant),eachoftheseprocesses 2.1.2Memorymanagement willtakingupapartthecomputer'smemory.notonlyisitwastefulthatnotactiveprocesses isallowedtoreadfromorwritetoeachmemoryaddress,orelseitwouldbeeasytostealor importantmethodsforsolvingthisproblem:swappingandpaging.theissueofsecuritywill usethatmemory,buttheresimplymaynotbeenoughmemorytoholdthemall.therearetwo changesomeoneelse'sdata! notbetreatedhere;however,itbenotedthatthisissueisequallyimportant:noteveryuser ComputerSystemenenApplicaties September1994
18 18 CHAPTER2.OPERATINGSYSTEMS Run,onSolaris(SysV),ps-el(makesureyouhavetherightone.Thispsisstored whichhasthesamefunctionalitybutdierentags(c.q.,-waxu).).everyprocesswillhave /usr/bin/ps.ifnot,specifythefullpath.thealternativemightbethebsd/usr/ucb/ps in/usr/bin;whenyouexecutetheshell-builtincommandwhichpsitshouldshow oneofthefollowingstates: Orunning; Iidle:theprocessisbeingcreated; Ssleeping,i.e.,waitingforaneventtooccur(e.g.,diskinterrupt); Rrunnable,i.e.,itmaybeselectedbytheschedulertorun; Zzombie.Thisoccurswhenaprocesshasnished,butitsparentprocessiskilled.Thechild Ttraced:theprocesshasreceivedaSIGSTOPsignalbecausetheparentistracingit; isstillpresentintheprocesstable. processisnotaliveanymore(thereforecannotbekilled;hencethename`zombie'),but OfeachprocessisalsoshowntheID(processnumber)ofitsparentinthePPIDcolumn.The Xtheprocessiswaitingforamemorypagetobeputintomemory; treehasinitatitsroot. fsflushwritesdiskblocksbacktodiskatregularintervals(`ushing').notethattheprocess pageoutispartofthememorymanager,towritepagesofmemorybacktodiskatintervals, rstfourprocessesare:schedisthescheduler,initistheparentofallfollowingprocesses, InUnixaprocesscanbeassignedanicevalue,whichisanintegerbetween?20and+19 (valueslessthan0canonlybesetbythesuper-user).normally,processesrunatnice-value 0;aprocesswithahighernice-valuehasalowerchancetobepickedbytheschedulerfor execution.atvalue19,aprocessisonlyexecutedifnootherprocess(withalowernice-value) iswaiting.nice-valuescanbecheckedandsetwithtop. September1994 ComputerSystemenenApplicaties
19 2.1.TASKSOFANOPERATINGSYSTEM Swapping 19 WhenaprocessAissleeping,andthememoryitreservesisneededbyanotherprocessB,A canberemovedfromthemainmemory(swappedout)andwrittenonapartitionofthelocal disk,calledtheswapspace.thefreespace,whenbdoesnotneedmorememorythanadid, cannowbeoccupiedbyb. muchswappingmakesacomputerslow.whereasittakesonlyafewmsforacputoswitch fromrunningoneprocesstorunninganother,swappingoutafewmegabytesofmemorytakes tensuptohundredsofmilliseconds. Duetotheharddiskusage(whichareveryslowincomparisonwithmainmemory(table4.2), Paging Butwhatdoyoudowhenasingleprogramistoolargetotintheavailablememory?InMSDos, whenasingleprogramistoolargetotinthemainmemory,usesoverlaysinwhichaprogram issplitup somethingwhichisnotdonebytheoperatingsystembutbytheprogrammer. Firsttherstpartofaprogram(the.exe)isloadedandrun;thispartismainlythecontrol part.itloadstherstoverlay(an.ovlle,usually)fromdiskintomemoryandrunsit.when nished,thesecondoverlayisloadedandrun,andsoon.ofcoursethisisverycumbersomeand inexible;therefore,matureoperatingsystemssupportasystemcalledpaging.theavailable memoryofthecomputerisdividedinanumberofpages.theamountofvirtualmemorythat pagesofthevirtualmemoryareactuallypresentinrealmemory(gure2.2).whenablockof theoperatingsystempresentstotheuserisarbitrarily5larger.atanytime,onlyafewofthe realmemory page1 page2 page3 memoryisrequiredthatisnotinrealmemory,anotherblockwillbemovedoutandreplaced bytherequestedblock.variousmethodsexisttooptimallyimplementapagereplacement Figure2.2:Virtualvs.realmemoryspace. technique(tanenbaum,1987). mainmemoryorram(randomaccessmemory):thememorychipsinyourcomputer.but Withoutexplicitlysayingso,theprevioussectiondiscussedonlyonekindofmemoryknownas 2.1.3Filemanagement thereareothertypesofmemoryfordierentpurposes.thissectiondiscusseshowanothertype ofmemory,viz.diskisused. ComputerSystemenenApplicaties andsegmentation. 5Naturally,thereexistdesignconsiderations.Consult,e.g.,(Tanenbaum,1987)tolearnmoreaboutpaging September1994
20 20Duetothefactthatadiskaveryslowmediumiscomparedtomainmemory(i.e.,the CHAPTER2.OPERATINGSYSTEMS transferofdataismuchslower),itisusedfordierentpurposes.dataondisksisusually accessedthroughles.aleisaprogramorapieceoftextordataonadisk.forexample, alemaybeacprogram,oraletterformattedwithawordprocessor,orindeedthatword processoritself.fileshavenamesandcontents. doesnotstorelesbutblocksofdata;itisthetaskoftheoperatingsystemtolettheuser transfersofblocksofdata. accessthedataonthediskthroughles.theoperatingsystemtranslatestheseletransfersto However,alehasnothingtodowithhowadisk(glossaryp.68)actuallyoperates;adisk les.adirectoryisanodeinthedirectorytreeandmaycontainvariouslesanddirectories. Therootdirectoryingure(2.3)iscalled/inUnix.Subdirectoriescanbeaccessedthrough Filesaregroupedtogetherwithdirectories.Directoriescanbeseenasaspecialkindof opt devices home share man include adam includeles.thedirectory/homeisusedforstoringtheso-calledhomedirectoriesoftheusers optionalsoftwareisstored.thesubdirectorymanstoresmanpages,andincludeisusedforc Therootdirectoryiscalled/.OnSolaris,itcontains,forinstance,thedirectoryoptinwhich Figure2.3:AnexamplelesystemonaUnixcomputer. theirabsolutepath,e.g.,thegamesdirectoryofadamcanbeaccessedas/home/adam/games. onthatcomputer.eachuseragainmayhaveherorhistreeofdirectoriestostoreprogramsand However,whenAdamhasloggedinonthesystem,hiscurrentworkingdirectory(CWD) data. willmostlikelybe/home/adam(whichisknownasadam'shomedirectory).adamcanthen movetohisgamesdirectorybytypingcdgamesinsteadofcd/home/adam/games;heneedonly I/Omanagement specifytherelativepath. terminology.buttwoothertypesofleexist:characterspeciallesandblockspecial Apartfromthedirectories,theleswehaveconsideredsofarareknownasnormallesinUnix les.thesespeciallesareassociatedwithi/o(input/output)devices.forinstance,whereas thekeyboardonacomputerisadevice,itcanbetreatedasifitwereale,anditispossible toreadfromitandwritetoitjustasifitwerealestoredonadisk;nospecialprogramsor systemcallsarerequired.thekeyboardisanexampleofacharacterspecialle:transfergoes September1994 thesedevicesgoesperblockoftypically512or1,024bytes. onecharacteratatime.blockspeciallesaretypicallydisksortapes.transfertoandfrom ComputerSystemenenApplicaties
21 2.1.TASKSOFANOPERATINGSYSTEM Theprogrampwd(printworkingdirectory)descendsthedirectorytree,startingfromthe21 currentworkingdirectory,uptotherootandprintsthepathitdescended.thereisalsoa followingchangedirectory(cd)commands. shellbuilt-incommanddirswhichprintsthecurrentworkingdirectorywhichiskeptfrom Thebasicprogramtoreadfromorwritetoaleiscat.Sincethe`keyboardinput',known asstandardinputorstdin,isalsoale,asis`screenoutput'knownasstandardoutput toprinttheinputofletostdout. promptechoestheinput,linebyline,untiltheend-of-lecharacter^disgiven.typecatle orstdout,thesimplestoperationofcatistocopystdintostdout.typingcatattheshell directoryusingls-l/dev.youwillnoticethatcharacterspeciallesaremarkedbya`c' OnUnixmachines,thespeciallesarekeptinthedirectory/dev.Geta`longlist'ofthe andblockspeciallesbya`b'.mark,forinstance,thele/dev/floppy:thisisthele associatedwiththeoppydisk(providedyourmachinehasone).youwillhavedirectaccess tothediskthroughthisblock-specialle:forinstance,youcanreadfromthediskbytyping, Interrupthandlers.Inaprevioussectionwediscussedthescheduler,whichisapieceof more/dev/floppy. theoperatingsystemwhichrepeatedlychoosesaprocessfromtheprocessqueue,andallowsit Afterall,theschedulerisjustanotherprocess. torunforashortwhile.onequestionwedidnotask,however:whoschedulesthescheduler? aninterrupt.thisinterruptisgeneratedby,inhardware,switchingoneoftheprocessor's aprocessforexecution,itissuesasleep()systemcall,whichallowsittogotosleepfor thespeciedamountoftime.whenthistimehaselapsed,thesystemclockwillgenerate Theanswertothatquestionisthefollowing.Whentheschedulerhasnishedchoosing instructiontellstheprocessorwhichinterrupthandleritwillhavetoexecute. workingon,andreadthenextinstructionfromthedevicethatinitiatedtheinterrupt.this interruptlines`on.'theprocessorwillnowbeinterrupted,stoprunningtheprocessitwasjust interrupthandlerwouldcausetheschedulertoberunagain.whentheschedulerisnished playingaroundwiththeprocesstable,thenextprocesswillbeallowedtorun. handlerfortheharddisk,fortheclock,etc.wouldexist.inthecaseofthescheduler,theclock Thisinterrupthandlerisapieceofcodeintheoperatingsystem.Typically,aninterrupt willstartrunningthedevicedriverforthedisk,andonlyresumecontroltotheinterrupted nishedloadingablockfromthedisktomemory).inthiscase,however,theinterrupthandler programwhenthatdevicedriverisnished. Asimilarthingoccurswhenadiskcontrollergeneratesaninterrupt(e.g.,becauseithas systemonedevicedriverexistsforeachconnectedtypeofdevice;i.e.,onefortheoppydrive, Devicedrivers.WitheachI/Odeviceisassociatedadevicedriver.Ineachoperating oneforthekeyboard,oneforthescreen,etc.thedevicedrivescontainthedevice-dependent softwarenecessarytocontrolthatdevice.forinstance,forascreenthatmaybecodetowrite abytetothescreen,toscrollthescreenonelineup,toclearthescreen,etc. system,andthei/odevices.forinstance,auserprocessmayissuearead()systemcall.the device-independentpartofthei/osoftwareintheoperatingsystemwill,dependingonwhere theissuedreadissupposedtoreadfrom(ale,keyboard,anetwork,:::)forwardthecallto Thedevicedriversprovidetheinterfacebetweenthedevice-independentpartoftheoperating ComputerSystemenenApplicaties thecorrespondingdevicedriver. September1994
22 22 CHAPTER2.OPERATINGSYSTEMS 2.1.4Communication Averyimportantsubjectthatwehavetoconsideriscommunication.Communicationwithin computersystemsconsistsatvariouslevels:communicationbetweenthevariouspartsofthe operatingsystem;communicationbetweentwoprocessesrunningonasingleprocessor;communicationbetweentwoprocessorsinaparallelcomputer;communicationbetweenprocesses runningontwocomputersconnectedtogether;communicationbetweentwoprocessesrunning oncomputersthousandsofmilesapart. Chapter3willstudythistopicinmoredetail.However,inthissectionwewanttodiscuss afewimportantissuesofcommunicationencounteredincomputerscience.inparticular,we willonlydiscussthoseissuesthatareencounteredininter-processcommunicationoripc: thecommunicationbetweenvariousprocessesononecomputer(or,insomecases,betweentwo computersinanetwork). Considerthefollowingcase.SupposetherearetwooperatorsZoe,workinginatravelagency inzierikzee,andzachary,workinginzurich,whobothwanttobookaseatonight521 fortheirrespectivecustomer.thedatabaseforallightbookingsiscentrallymaintainedby Airlines.Asithappens,ZoeandZacharybothmaketheirreservationviaamodematthesame time.accordingtomurphy'slaw6,thefollowingwillhappen.whenzoerequeststheseating availabilityoftheplane,thisdatawillbesenttoher.shepassesittohercustomer,whoneeds afewsecondstodecidehewantstohaveawindoworanaisleseat.whileheisattempting tomakeupismind,zacharygetsthesameinformationfromthecentraldatabase,andhis customerthendecidesshewantstotakeseat11a,whichisstillfree.dittozoe'scustomer!so, Zoewritesbackareservationforseat11a,andsodoesZachary,thusoverwritingZoe'srequest. Who'sgoingtogettheseat? Situationslikethisareknownasraceconditions. Withalittleimaginationitiseasy toseethatthiscaseisalsoverylikelytooccurinanoperatingsystem,forinstancewhentwo processeshavesimultaneousaccesstoadiskblock.whenraceconditionsarenotproperlytaken careof,deadlocksareboundtooccur.adeadlockisaconditionwhereprocessaiswaiting forprocessbwhileprocessbiswaitingfora.inasituationlikethis,neitherprocesswillever continueoperation:adeadlock.naturally,deadlocksshouldalwaysbeprevented. Criticalsections Howcantheseraceconditionsbeavoided?Asolutiontothisproblemistheintroduction ofcriticalsections.acriticalsectionisthatpartofaprogramwheresharedread/write resourcesareaccessed;forexample,accesstosharedmemoryorshareddatabases.whenitcan beguaranteedthatatnotimetwoprocessesaresimultaneouslyintheircriticalsections,race conditionscanbeprevented. Throughouttheyearsofcomputingmanywaysofimplementingcriticalsectionshavebeen invented.mostoperatingsystembookslistmanyoftheseinventions,butwewillkeepthelist downanddiscussonlytwoprincipalmethods. Disablinginterrupts.Theeasiestmethod,whichwouldworkonasingle-usersingle-process machine:disableinterrupts,i.e.,donotallowthecurrentprocesstobeinterruptedbythe scheduler.allcomputershaveaninstructiontothiseect.however,suchapowerfulinstruction couldneverbegiventoauseronatime-sharingsystem:shewouldhavethemachineentirely toherself,andnallythemachinewouldcometoagrindinghalt!fortunately,bettersolutions exist. 6Murphy'srstlawreads:`everythingthatcangowrongwillgowrong.'That'stheonewereferto.His secondlaw,alsonottobeforgotten,maintains,`everythingthatcan'tgowrong,willgowrongnonetheless.' September1994 ComputerSystemenenApplicaties
23 2.1.TASKSOFANOPERATINGSYSTEM Semaphores.Semaphores,introducedbyE.W.Dijkstrain1965,arecounterswhichcan 23 beincrementedanddecrementedbytheinstructionsupanddown,respectively.thedown sleepingonthatsemaphore,oneoftheseprocessesiswokenupandcancompleteitsdown instructiononasemaphorechecksifitsvalueis0.ifitis,theprocessissuingthatdown instruction. Theupinstruction,ontheotherhand,incrementsasemaphore.Ifoneormoreprocesseswere instructionisputtosleep;otherwise,thesemaphoreisdecrementedandtheprocesscontinues. processesthathavetobeexecuted:thebaker'sjob,inwhichacookieisbakedandbroughtto thestore;andthecookie-monster'sjob,inwhichthecookiehastobeboughtandsubsequently computer)whocontinuouslyalternatesinbeingabakerandacookie-monster.therearetwo Considerthefollowingexample.Itconsistsofasingleperson(cf.theprocessorinyour eaten. twovariablesindicatewhetherthestoreisfull(nomorecookiescanbestored)orempty(no don't-interrupt.thecookievariableindicatestheshelfcontainingthecookies.thenext morecookiescanbebought).finally,don't-interrupthastomakesurethatthecookiemonsterdoesnotdecrementthecookiecounter(i.e.,bybuyingacookie)whenthebakerisjust incrementingit.theprogramlookslikethis: processbaker's-job: repeat bake-cookie(cookie); down(store-is-empty); down(don't-interrupt); Thereareafewsharedvariables:cookie,store-is-empty,store-is-full,and forever bring-to-store(cookie); up(don't-interrupt); up(store-is-full); processcookie-monster's-job: repeat down(store-is-full); down(don't-interrupt); buy(cookie); up(don't-interrupt); up(store-is-empty); Notethatthedownandupinstructionsmayneverbeinterrupted!Inanoperatingsystem forever eat-cookie(cookie); theywouldbeimplementedassystemcalls;thesesystemcallsthencouldbewritteninsucha ifthetwodown'sinthebaker'sandcookiemonster'sjobswerereversed,deadlockswouldbe However,youmustbevery,verycarefulwhenprogrammingwithsemaphores.Forinstance, waythattheyneverbeinterruptedbythescheduler. Interprocesscommunication boundtooccur(why?). ComputerSystemenenApplicaties Nowthatwehavelookedintoraceconditionsbetweentwoprocessesrunningononeprocessor, letusshortlylookintosomecommunicationprimitivestobroadentheperspective.theabove September1994
24 solutionwillonlyworkwhentheprocessessharingresourcesrunononeormoreprocessors 24 CHAPTER2.OPERATINGSYSTEMS whichhaveaccesstocommonmemory,i.e.,apieceofmemorytheycanallwritetoandread from.whenyoumovethisideatoadistributedsysteminwhicheachprocessorhasitsownbit Messagepassing.Tothisend,twocommunicationprimitivesareintroduced: betweenremoteprocesses. ofmemory,thatsolutionisnotfeasibleanymore.somehow,theinformationmustbeshared totheoperatingsystem.oneprocesssendsamessagetoanotherprocess,andmayblockuntil send(destination,message)andreceive(source,message)whicharebothsystemcalls thetimeuntilamessagearrives. ananswerarrives.thereceivingprocesscouldbeservingtherstprocess,andmayblockall Remoteprocedurecall.Insomeoperatingsystems,interprocesscommunicationisdone throughremoteprocedurecallorrpc.inrpc,amessageispassedbyaclientprocess sendsamessagetotheserverstubprocedure,whichthencallstherequiredprocedureswithin theservertohandlethemessage.then,amessageissentback,theclientstubwillreceivethe toaserverprocessbycallingaprocedurecalledtheclientstubprocedure.thisprocedure message,andtheclientprocesswillcontinueoperation. getsitsanswer. clientandserver.foralltheycare,thestubprocedurescanbeimplementedusingsemaphores. `Generally,'sincesomethingscangowrong.Forinstance,theservermaycrashbeforetheclient Naturally,thenicepartaboutthisisthatthecommunicationisgenerallytransparenttothe 2.2 Intheprevioussectionsomeofthemoreimportanttasksthatanoperatingsystemhasto performhavebeenlaidout.assumingthatallthesetaskscanbeseparatelysolved,allofthese Operatingsystemstructure discusstwowaysofdoingto:themonolithicstructure,andtheclient-serverstructure. solutionshavetobebroughttogetherintoasingleoperatingsystem.inthissectionwewill 2.2.1Themonolithicstructure Anoperatingsystemwithamonolithicstructurehas,infact,nostructureatall.Allpartsare puttogetherintoonebigchunkofprogram.thisappearstobethemostsimplechoice:make lestogetherintooneexecutable.anyprogrammerwithabitofexperiencewithdesigninglarge separatesourcecodesforthedierentparts,compilethoseintoobjectles,andlinkallobject Unix.Thisisbecauseofthecomputationaleciency:whenallpartsarelinkedtogetherinto fromthepointofviewofmaintenance,portability,clarity,andsoon.yetitisthestructure followedbymanyoperatingsystems,suchasmsdosand,inlesserextent,earlyversionsof programswillimmediatelyrecognisethatthismostobviouschoiceisalsotheworstone,ifonly toandfro.however,withthenecessaryincreasingcomplexityofoperatingsystems,theprice ofthisoverheadtradesverywellagainstthepriceofmaintainingmonolithicoperatingsystems. oneprogram,theycansharedatathroughglobalvariables,insteadofhavingtosendmessages Also,thecostofoverhead(theoperatingsystemrunsslowerbecauseofthetimeneededtopass messagesbetweenitsparts)decreaseswithincreasingcomputerpower. modereal-timemodeexists,whichhasthehighestprecedence).userprocessesnormallyrun berunninginusermodeorkernelmode(insomeoperatingsystemssuchassolaris,athird inusermode.whenauserprocessrequestssomeactionfromtheoperatingsystem,suchas LetusshortlystudyhowamonolithicUnixoperatingsystemworks.Themachinecaneither September1994 openingaleorreadingablock,theuserprocessissuesasystemcall.so,thissystemcall ComputerSystemenenApplicaties
25 2.2.OPERATINGSYSTEMSTRUCTURE userlevel 25 systemcallhandler userprogram kernellevel system le manager memory hardwarelevel hardwarecontrol Figure2.4:Theexecutionofasystemcallinamonolithicoperatingsystem. transferscontroltotheoperatingsystem(seegure2.4),i.e.,theprogramissuingthesystem willbesetinkernelmode:theprocessnowrunningwillhavemanymorepermissions,e.g.,todo callwillbeputinsleepingstateandtheoperatingsysteminrunningstate.next,thecomputer I/Ocontrol,killprocesses,andsoon.Therequestedactionwillbeperformedbytheoperating systemkernel,whichpossiblyhastowaitfori/odevicestocompletearead/writeoperation. Whenthekernelisnishedwithhandlingtherequest,controlisreturnedtotheuserprocess (i.e.,itwillbeputinrunnablestate).induetime,itwillbechosenforexecutionagainbythe scheduler Theclient-serverstructure Thereasonthatthisstructureisonlynowbecomingpopularisthatthecommunicationoverhead ideaisverygeneral:thereisoneserverwhichhandlesrequestsofmanyclients.thisstructureis alsorapidlyincreasingpopularity(or,infact,alreadybecomingstandard)inoperatingsystems. Wehavealreadycomeacrosstheclient-serverstructurebetweencommunicatingprocesses.The computersthatareavailablenowadays.pcownerswhohaveeverexperimentedwithrunning MINIX7ona8088ora80286processorwillquicklylearntoappreciatetheirMSDosoperating system,eventhoughitisuser-unfriendlybeyondcomparison.minix,albeitanoperating (messagepassingoripc)thatitleadstoisonlynowbecomingnegligibleduetothefast aslittleaspossiblecodeintothekernel.thekernel,whichisnowreducedtoamicrokernel, systemwithacrystal-clearorganisation,isjusttooslowforsucharchaiccomputerarchitectures. operatesasaservertohandlerequestsofvariousclients.thetaskthatislefttothismicrokernelisverylimited:handlethecommunicationbetweentheprocesses,andgivetheprimitives Theideabehindtheclient-serverstructureforoperatingsystemsisthefollowing.One:put server8,leserver,memorymanager,etc.theremainingmicrokernelisleftwithonlyonetask: necessarytopreventraceconditions. 7MINIXisaUnix-likeoperatingsystem(BSD)writtenbyA.S.Tanenbaum(Tanenbaum,1987)forPC's.The Two:migrateasmuchaspossiblefunctionalitytostand-aloneclients,suchastheprocess ofminixasanoperatingsystemislimited,however,duetothefactthatitisratherslow thecommunication overhead,whilethreads(seebelow)arenotavailable,neckitwhentoomanyprocessesareactive. fromscratch,partlyforteachingpurposes,andendedupwithaverywell-structuredproduct.thepopularity distributionandthereforestudyoftheiroperatingsystem.tanenbaumthendecidedtorewriteasimilarproduct reasonhewroteitwasthat,inthe1980's,at&tbecameawareofthedistributabilityofunix,andprohibitedthe ComputerSystemenenApplicaties 8Inthiscasetheword`server'hasanotherconnotationthanthesamewordwhenusedfortheclient-server September1994
26 handlethecommunicationbetweenthevariousclients. 26 CHAPTER2.OPERATINGSYSTEMS AlthoughMINIXisnotactuallyusedonmanycomputers,itsclearstructureaidsintheunderstandingofhowoperatingsystemswork.ThestructureoftheMINIXoperatingsystemisbuild upoutoffourlevels,asdepictedingure2.5.atthelowestlevel,thecommunicationbetween Asaveryneatexampleofaclient-serverbasedoperatingsystemwewillconsiderisMINIX. clockdiskcamera::: useruser manager memory user system le::: processmanagement Figure2.5:Theclient-serverstructureoftheMINIXoperatingsystem. andmessagepassing Themicro-kernelonlyperformsprocessmanagementandhandlesthecommunication(passingof theprocessesistakencareof,andtrapsandinterrupts(explainedbelow)arecaught.this messages)betweenthememorymanager,lesystem,etc.i.e.,thekernelservestheother lowestlevelisverysimilartothemicrokerneldiscussedbefore,exceptthatprocessmanagement processors. devicedrivers.theseprocessesareallcompletelystand-aloneandcommunicatewitheachother bymessagepassingthroughthemicrokernel.layer3,containing(amongothers)thememory isalsodoneatthislevelandnotbyaseparateclient.atthesecondlowestlevelarethei/o memorymanagement(e.g.,forkforstartinganewprocessorbrkforchangingtheamountof managerandlesystem,presentstheuserwithsystemcalls.forinstance,allsystemcallsfor manager,whichwillsubsequentlysendmessagestothelowerlevels. inthreedierentways: memorythatisreservedforaprocesstostoreitsdata)arecallstofunctionsinthememory interruptaninterrupt,aswesawbefore,isaconditionthatisnotinuencedbytherunning Atlayer4theuserprocessesarerunning.Ingeneral,userprocesseshaveaccesstothekernel hascompletedthetransferofablockofdata.thediskcontrollerchipwillgeneratean Asanotherinterruptexample,assumeaprogramArunningwhilethediskhardware areused,amongotherthings,fortheschedulertochoosewhentorunanextprocess. programbutratherbysomethingexternal,e.g.,adisk,ortheclock.clockinterrupts backtoa.so,aninterruptcanbeseenasatransparentprocedurecall,instantiatedby thediskinterrupthandler.whenthisprogramisnished,controlwillbetransferred interrupt.theprocessorwillthenstopexecutingprogramaandtransferexecutionto trapatrapissimilartoaninterrupt,butisdirectlygeneratedbytherunningprogramitself. externalinuences. Therearetwokindoftraps:thoseresultingfromanerrorofsomekind,andthoseresulting themachineinkernelmode.theformer,error-generated,trapsresultforinstancewhen servestotransfercontrolfromauser-programtotheoperatingsystem'skernel,andput aspecialinstructioncalledthetrapinstruction,alsoknownasakernelcall.thistrap fromasystemcall,e.g.,readingfromale.thissystemcallmakestheprocessorexecute model;admitted,veryunfortunate::: adivisionby0occurs,oraoatingpointoverow,anillegalinstruction,orareferenceto apartofmemorywhereaprogramisnotallowedtoreadorwrite. September1994 ComputerSystemenenApplicaties
[ Overzicht bomen A6. Page 1 of 8. Programma Schiphol - Amsterdam - Almere. Verklaring
Nadere informatie
Computerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 10 september 2018 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieComputerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 12 september 2016 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieMachinevirtualisatie. Raphael kena Poss Universiteit van Amsterdam. Besturingsystemen
Machinevirtualisatie Raphael kena Poss Universiteit van Amsterdam Besturingsystemen 1 vandaag... zal je leren: wat machinevirtualisatie is waarvoor het wordt gebruikt hoe het werkt het verschil tussen
Nadere informatieslides2.pdf April 12,
Werking van CPU CSN CS2 CPU, I/O en Memory management Piet van Oostrum 12 april 2002 De ALU kan alleen eenvoudige operaties uitvoeren (bijv. twee getallen optellen, vermenigvuldigen of testen of iets >
Nadere informatieHoofdstuk 3: Processen: Beschrijving en Besturing. Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces?
Hoofdstuk 3: Processen: Beschrijving en Besturing Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces? 1 Wat is een proces? Een proces is een programma in uitvoering
Nadere informatieGeheugen en Adressering. Binding. Binding (2) Logische en Fysieke adresruimten. relocatie register. Dynamic loading
Geheugen en Adressering Binding Geheugen (main memory, primary storage) is noodzakelijk voor de uitvoering van programma's. te beschouwen als array van adresseerbare bytes (of woorden). verschillende processen
Nadere informatieA2: Bedrijfssystemen. A2 en PC. Boek. Voorkennis
A2 en PC De eerste helft van het 2e jaars vak, oude curriculum A2 (Bedrijfssystemen) is het 1e jaars vak, nieuwe curriculum PC (Processen & Concurrency) geworden (ivm. Master/Bachelor gedoe) Erik Poll
Nadere informatieCentrale begrippen hoofdstuk 3. Waarom multiprogramming? Vandaag. processen proces state: running, ready, blocked,... Vragen??
Vragen?? Vandaag Hoofdstuk 4: threads (tentamenstof : 4.1 t/m 4.2) Kleine Opgaven 4.1 (niet alleen ja of nee, ook waarom!) en 4.4 inleveren maandag Centrale begrippen hoofdstuk 3 processen proces state:
Nadere informatieTim Mallezie Architectuur van besturingssystemen: Vraag A2.
Procesbeheer: kenmerken van moderne besturingssystemen. 1. Bespreek de (drie) meest typische kenmerken van moderne besturingssystemen. 2. In hoeverre beantwoorden UNIX, Linux en Windows NT hieraan? Geef
Nadere informatieVereenvoudigingvangedistribueerde IntegratievanSunRPCenC Applicatieontwikkeling DoctoraalscriptievanAskePlaat 24juni1992 ansic prp? rpcgen? Studienummer53697 FaculteitderEconomischeWetenschappen ErasmusUniversiteitRotterdam
Nadere informatieDe PROFIBUS, PROFINET & IO-Link dag. Edegem, 8 juni 2010. PROFIBUS Belgium VZW PROFIBUS, PROFINET & IO-Link
De PROFIBUS, PROFINET & IO-Link dag Edegem, 8 juni 2010 PROFIBUS Belgium VZW PROFIBUS, PROFINET & IO-Link 2010 2 Agenda 1. Omschrijving project 2. Voorstelling materialen 3. Redundancy 4. Visualisatie
Nadere informatie' Het tentamen is gesloten boek, dus het is niet toegestaan om het tekstboek, slides of eigen gemaakte aantekeningen te gebruiken.
Tentamen Operating Systems Dinsdag 14 juni 2016,10:00-13:00 Examinator: dr. K. F. D. Rietveld ' Het tentamen is gesloten boek, dus het is niet toegestaan om het tekstboek, slides of eigen gemaakte aantekeningen
Nadere informatieIN1805 I Operating System Concepten
IN1805 I Operating System Concepten Hoofdstuk 8: Main memory 6-1 Geheugen en Adressering Geheugen (main memory, primary storage) is noodzakelijk voor de uitvoering van programma's. te beschouwen als array
Nadere informatieWaarmaken van Leibniz s droom
Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais
Nadere informatieWindows NT 4.0. Performance Monitoring. Gino Damen 28 oktober 1997 Versie: 1.0
Performance Monitoring Gino Damen 28 oktober 1997 Versie: 1.0 Inhoudsopgave 1. Opbouwen en starten van een systeem log...2 1.1. Aandachtspunten...2 1.2. Aanmaken van een log file...2 1.3. Starten van het
Nadere informatieSuperOffice Systeemvereisten
Minimale systeemvereisten voor SuperOffice CRM De minimale systeemvereisten voor SuperOffice CRM zijn tevens afhankelijk van het besturingssysteem en de services/applicaties die op het systeem actief zijn.
Nadere informatieComputerarchitectuur en netwerken Toets 1 4 okt
11.00 13.00 De open vragen moet je beantwoorden op tentamenpapier. De multiple-choice antwoorden moet je op het vragenblad invullen in de rechtervakjes en dat blad inleveren. Schrijf je naam, studentnummer
Nadere informatieIO-Link is Smart Industry
De toenemende vraag naar informatie en intelligente interactie op alle communicatieniveau 's IO-Link presentatie 02.06.2015 Avans Hogeschool Den Bosch Inhoud Filmpje"What is IO-Link" Smart Industry: Doel
Nadere informatieApplications & Clients
Applications & Clients APPLICATIONS & CLIENTS OS Financieel Wind ows XP Windows Home of Starter Editions Windows XP Windows Vista Windows Vista Business, Enterprise 32-bits zonder SP, SP1 32-bits Windows
Nadere informatieApplications & Clients
Applications & Clients APPLICATIONS & CLIENTS OS Financieel Wind ows XP Windows Home of Starter Editions Windows XP Windows Vista Windows Vista Business, Enterprise 32-bits zonder SP, SP1 32-bits Windows
Nadere informatieManual Debug software. VMC next
Manual Debug software VMC next Land: NL Ned Air bv maart 2012 Ver. 0.05 1 Algemeen... 3 2 Opbouw VMC next... 3 3 VMC Next Debugger... 4 4 Status... 7 5 Registers... 8 5.1 Knoppen... 9 5.1.1 Download...
Nadere informatieTotally Integrated Automation. Realizing visions every day in every industry
Totally Integrated Automation Realizing visions every day in every industry Industriële trends Hardware complexer en krachtiger Kortere innovatiecycli en snellere modelwijzigingen om in te spelen op veeleisende
Nadere informatieInleiding Practicum Operating Systems
Inleiding Practicum Operating Systems Mattias Holm & Kristian Rietveld Tot nu toe Shell: verkennen interface tussen user-space en kernelspace. User space System calls Kernel space Doel van deze presentatie
Nadere informatieMOSIX Clusters voor iedereen
MOSIX Clusters voor iedereen Geert Vernaeve & Jan De Beule Ghent University Mosix: clusters voor iedereen p.1/10 Clusters voor iedereen? Standaard huis-, tuin- en keukenhardware Mosix: clusters voor iedereen
Nadere informatieInleiding Practicum Operating Systems
Inleiding Practicum Operating Systems Mattias Holm & Kristian Rietveld Doel - In komende 3 practica zullen we gaan werken met een custom OS. - Kort introduceren van: - Hardware. - Kernel. - Tools. - De
Nadere informatieICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers
ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers English Instructions Windows 8 out-of-the-box supports the ICARUS Illumina (E653) e-reader. However, when users upgrade their Windows
Nadere informatieHoofdstuk 7. Computerarchitectuur
Hoofdstuk 7 Computerarchitectuur 1 controlebus CPU MEMORY I/O databus adresbus Figuur 71 Schematische opbouw van een computersysteem 8 Figuur 72 Een busverbinding Buslijn Out E A In Out E B In Out E C
Nadere informatieHet configureren van de NETGEAR.
AVAYA VPN Phone met een NETGEAR VPN Router. Thuis werken in dezelfde omgeving zoals op het werk, geen aanpassingen als mobiele werkers vanaf huis willen werken en de identieke omgeving voor thuiswerkers.
Nadere informatieViktor van den Berg. Xpert Training Group VMware Authorized Training Center Citrix Authorized Learning Center Microsoft CPLS Eigen datacenter
VIRTUALISATIE IRTUALISATIE & C...EEN EEN INTRODUCTIE & CLOUD COMPUTING VIKTOR VAN DEN BERG (XTG) INTRODUCTIE Viktor van den Berg VMware Certified Instructor Product Manager VMware Trainingen Dutch VMUG
Nadere informatieHMI s ontsluiten machines naar het WEB
HMI s ontsluiten machines naar het WEB Grip op uw machine onafhankelijk van zijn locatie Door: Bert-Jan Ruesink Email: b.ruesink@duranmatic.nl Machinebouw event 2015 Pag. 1 Duranmatic B.V. Technische handelsonderneming,
Nadere informatieOnderzoeksnetwerk via Linux
Onderzoeksnetwerk via Linux Het onderzoeksnetwerk biedt opslagruimte en printers voor onderzoeksdoeleinden. Deze quickreference beschrijft hoe u vanaf een Linux computer de gedeelde opslagruimte kunt benaderen
Nadere informatieVan Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam
Van Poort tot Pipeline Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Van Poort tot Pipeline Pipeline processor One cycle machine Calculator File of registers Assembly
Nadere informatieCONFIGURATIEHANDLEIDING. File Exchange
CONFIGURATIEHANDLEIDING File Exchange Contents Contents... 2 1. Benodigde software... 3 1.1. Geostar 200/250... 3 1.1.1. Sync Software... 3 1.1.2. Sync Account... 3 1.1.3. Perceel Manager... 3 1.2. Viper4...
Nadere informatieTentamen 17 augustus 2000 Opgaven Computerarchitectuur
Tentamen 17 augustus 2000 Opgaven - 1 - Computerarchitectuur Tentamen Computerarchitectuur (213005) 17 augustus 2000 2 bladzijden met 5 opgaven 3 antwoordbladen Het raadplegen van boeken, diktaten of aantekeningen
Nadere informatieBelangrijkste ideeën/concepten uit OS, incl. proces
Operating System Overview (Hfst 2) Wat is een OS? Wat was een OS? Evolutie van OS. OS als virtuele machine OS als beheerder van hulpbronnen (resources) Belangrijkste ideeën/concepten uit OS, incl. proces
Nadere informatieHoe werkt een rekenmachine?
Hoe werkt een rekenmachine? Uit welke hardware-componenten bestaat een rekenmachine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachine I Constante getallen Instructies van het type
Nadere informatieWindows Basics. yvan vander sanden. 22 februari 2015
Windows Basics yvan vander sanden 22 februari 2015 Windows is nog altijd een veel gebruikt operating system. Als technicus moet je bekend zijn met het Windows operating system om gebruikers te kunnen helpen,
Nadere informatieVirtueel Geheugen en demand paging (1)
Virtueel Geheugen en demand paging (1) Programma's zijn vaak niet in hun geheel in het geheugen nodig, vanwege: zelden gebruikte onderdelen groter gedeclareerde arrays dan nodig als programma helemaal
Nadere informatieVoltijdse dagopleiding PC technicus
Voltijdse dagopleiding PC technicus Kies je voor een opleiding bij SYNTRA Midden-Vlaanderen, dan kan je rekenen op een professionele opleiding die steeds vertrekt vanuit de praktijk. Je krijgt les van
Nadere informatieMitel User Group. Mitel-licentiestructuur. Jan Jansen. Account Director april 2015
Mitel User Group Mitel-licentiestructuur Jan Jansen Account Director april 2015 De concrete vraag Kan iemand van Mitel de licentiestructuur uitleggen? 2 Agenda Waarom licenties Basis Mitel-licentiestructuur
Nadere informatieSIM-PL, auteursomgeving voor digitale componenten
SIM-PL, auteursomgeving voor digitale componenten Ben Bruidegom en Wouter Koolen-Wijkstra, AMSTEL-insituut UvA Samenvatting SIM-PL is een auteursomgeving om componenten te construeren en te simuleren voor
Nadere informatieApplicaties op afstand draaien met X11
LinuxFocus article number 222 http://linuxfocus.org Applicaties op afstand draaien met X11 door Guido Socher (homepage) Over de auteur: Guido houdt van Linux en niet alleen omdat het interessant is te
Nadere informatieIntel Pentium G3258. Productinformatie ARTIKELNUMMER FABRIKANTNUMMER BX80646G3258 FABRIEKSGARANTIE. Bring in Service (36 maanden) Processor
Intel Pentium G3258 ARTIKELNUMMER FABRIKANTNUMMER 48693 BX80646G3258 FABRIEKSGARANTIE Bring in Service (36 maanden) Productinformatie Processor Processorfamilie Frequentie van processor Intel Pentium G
Nadere informatieLes 11: systeemarchitectuur virtuele machines
Les 11: systeemarchitectuur virtuele machines Geavanceerde computerarchitectuur Lieven Eeckhout Academiejaar 2008-2009 Universiteit Gent Virtuele machines Motivatie Interfaces Virtualisatie: inleiding
Nadere informatieCOIL MACHINE Probleemoplossingsgids. Coil Machine Troubleshooting Guide
COIL MACHINE Probleemoplossingsgids Coil Machine Troubleshooting Guide CribMaster. 2013 All rights reserved. Windows is a registered trademark of Microsoft Corporation CribMaster 1955 West Oak Circle Marietta,
Nadere informatieDe PROFIBUS, PROFINET & IO-Link dag. Ede, 18 november
De PROFIBUS, PROFINET & Ede, 18 november 2011 IO-Link dag 2011 The basics of PROFINET Harm Geurink Product Manager AUTOMATION Phoenix Contact bv hgeurink@phoenixcontact.nl PROFINET Trends in de markt:
Nadere informatieInstellen van IP-Aliasing op een Linux Machine Mini-HOWTO
Instellen van IP-Aliasing op een Linux Machine Mini-HOWTO Harish Pillay h.pillay@ieee.org Vertaald door: Ellen Bokhorst bokkie@nl.linux.org Dit is een procedure handboek over hoe IP aliasing op een Linux
Nadere informatieStappenplan bij het gebruik van SQL 2008 Versie 2.0, 17-09-2010
Stappenplan bij het gebruik van SQL 2008 Versie 2.0, 17-09-2010 Installatie stappen Microsoft SQL Server 2008 Express: Het is raadzaam om de volledige installatie met een gebruiker zonder beperkingen uit
Nadere informatieAvaya IP Office release 8.0 update
Avaya IP Office release 8.0 update Patrick Kneefel Pre Sales Specialist Westcon Convergence 14 maart 2012 Avaya IP Office 8.0 update Samenvatting nieuwe features IP Office Editions en licenties Beschikbaar
Nadere informatieASUS DESKTOP GT51CH-BE016T 2 099,00. Kenmerken COMPUTRADE. Artikelcode : ITASGT51CHBE016
ASUS DESKTOP GT51CH-BE016T Artikelcode : ITASGT51CHBE016 ASUS ROG GT51CH-BE016T. Frequentie van processor: 4,2 GHz, Processorfamilie: Zevende generatie Intel Core i7, Processormodel: i7-7700k. Intern geheugen:
Nadere informatieAccess to innovation. Televersal Deltatraining OpensScape Business. OpenScape Business Deltatraining. Backup en restore.
Access to innovation OpenScape Business Deltatraining Backup en restore Backup & Restore Backup & Restore devices Scheduled Backups Complete Backup vs. Diagnosis data only Notes / Hints 2 Via Backup en
Nadere informatieRemote maintenance 4.0
Locatie A Locatie B Remote maintenance 4.0 Onderwerpen 1 2 Uitleg Remote maintenance 4.0 Verschillende manieren van Remote maintenance 3 Remote maintenance als een service 4 Twee voorbeelden van services
Nadere informatieWriting a Bachelor Thesis in Computer Science. Siegfried Nijssen
Writing a Bachelor Thesis in Computer Science Siegfried Nijssen Motivation In a few weeks, you will be writing a thesis Writing a text is not easy for many academics Bad Academic Writing is a Problem Differences
Nadere informatieMVoice PP Dealer Handleiding 1.0
MVoice PP Dealer Handleiding 1.0 Inleiding MVoice PP is de Pre Paid Cloud telefonie oplossing van MaXXus en is geschikt voor alleen uitgaand verkeer. Met MVoice PP zijn bespairngen tot 70 % op de gesprekkosten
Nadere informatieHow To Do mbspider met VIPA Modbus-TCP coupler
How To Do mbspider met VIPA Modbus-TCP coupler Inhoud 1. Inleiding... 2 2. Instellingen hardware... 2 2.1 VIPA 053-1MT00... 2 2.2 mbspider... 4 3. Instellingen mbconnect24 V2... 4 3.1 Network Component...
Nadere informatieACER CHROMEBOX CXI3 289,00. Kenmerken VBC COMPUTERS. Artikelcode : ITACCHROMEBOXCL
ACER CHROMEBOX CXI3 Artikelcode : ITACCHROMEBOXCL Acer Chromebox Chromebox CXI3. Frequentie van processor:,8 GHz, Processorfamilie: Intel Celeron, Processormodel: 3865U. Intern geheugen: 4 GB, Intern geheugentype:
Nadere informatieEM7680 Firmware Update by OTA
EM7680 Firmware Update by OTA 2 NEDERLANDS/ENGLISH EM7680 Firmware update by OTA Table of contents 1.0 (NL) Introductie... 3 2.0 (NL) Firmware installeren... 3 3.0 (NL) Release notes:... 3 4.0 (NL) Overige
Nadere informatieWinCCFlex. WinCC Flex MeRa 1/22
WinCCFlex 1. Invoegen van TP in het S7 project...2 2. Instellen van communicatie HMI...2 3. Aanmaken van tags...4 4. Aanmaken van de schermen...5 5. Invoegen van een objecten...6 5.1. Invoegen van een
Nadere informatieStudietaak 5 Hoe installeer ik software? ProFTPD FTP-Server
Studietaak 5 Hoe installeer ik software? ProFTPD FTP-Server Opdracht Installeer op je Knoppix installatie de ProFTPD ftp-server. Doelstelling Het leren van: 1. het installeren van ProFTPD, en 2. de basis
Nadere informatieComputerarchitectuur en netwerken 4 Processen en Threads
Computerarchitectuur en netwerken 4 Processen en Threads Lennart Herlaar 19 september 2016 Inhoud Scheduling scheduler prioriteiten real-time scheduling Processen ouder-kind processen Unix: fork en exec
Nadere informatieOracle Cloud, slim bekeken!
Oracle Cloud, slim bekeken! van zachte theorie naar harde praktijk Spreker(s) : Datum : E-mail : Patrick Munne / Laurus de Jonge 13 december 2016 vragen@transfer-solutions.com WWW.TRANSFER-SOLUTIONS.COM
Nadere informatieL A TEX-cursus 5 e sessie: scriptie in L A TEX
L A TEX-cursus 5 e sessie: scriptie in L A TEX TEXniCie A Eskwadraat 17 november 2014 Vorige week Vorige week hebben jullie het volgende geleerd: Vectorplaatjes importeren Presentaties maken met beamer
Nadere informatieVMWORLD 2011 US WRAP
VMWORLD 2011 US WRAP UP VIKTOR VAN DEN BERG MARCEL VAN OS WELKOM ELKOM & A & AGENDA Viktor van den Berg, Dutch VMUG Leader Marcel van Os, Senior Technical Trainer @ XTG Agenda VMUG Update (Viktor) VMware
Nadere informatieARTIKELNUMMER FABRIKANTNUMMER PRIJS 415,90 FABRIEKSGARANTIE. Vierde generatie Intel Core i7. Intel Core i Desktop series.
Intel Core i7 4790K ARTIKELNUMMER FABRIKANTNUMMER 48690 BX80646I74790K PRIJS 415,90 FABRIEKSGARANTIE Bring in Service (36 maanden) Productinformatie Processor Processorfamilie Frequentie van processor
Nadere informatieNetwerkprinter Dell 1320C installeren op Ubuntu 10.04 LTS - Lucid Lynx
Netwerkprinter Dell 1320C installeren op Ubuntu 10.04 LTS - Lucid Lynx Er is geen Linux driver voor deze printer, maar het werkt ook met de driver van de Fuji Xerox DocuPrint C525A Direct link to Linux
Nadere informatieHow To Do Visualisaties met mbconnect24 V2
How To Do Visualisaties met mbconnect24 V2 Inhoud 1. Inleiding... 2 2. Aanmaken Network Component (VIPA PLC) & Tag Server... 3 2.1 Network Component; VIPA PLC... 3 2.2 Tag Server... 4 3. Tags aanmaken...
Nadere informatieKeynote. Innovatiedag. November Opleidingen Consultancy Detachering Remote Services
Keynote Innovatiedag November 2018 Wat is de Innovatiedag? Iedere eerste vrijdag van de maand organiseert AT Computing een Innovatiedag. Deze dag staat in het teken van het opdoen en delen van kennis en
Nadere informatieVIDEO RECORDING Afstand beheren
DIGITAL VIDEO RECORDER (DMR): Afstands toegang (adres gegeven door S & P) Internet Explorer Windows Chrome of Firefox computer Programma NIET AANBEVOLEN: met ActiveX (erratische werking) Apple computer
Nadere informatieVoltijdse dagopleiding netwerkbeheerder
Voltijdse dagopleiding netwerkbeheerder Kies je voor een opleiding bij SYNTRA Midden-Vlaanderen, dan kan je rekenen op een professionele opleiding die steeds vertrekt vanuit de praktijk. Je krijgt les
Nadere informatieGeheugenbeheer. ICT Infrastructuren 2 december 2013
Geheugenbeheer ICT Infrastructuren 2 december 2013 Doelen van geheugenbeheer Reloca>e (flexibel gebruik van geheugen) Bescherming Gedeeld/gemeenschappelijk geheugen Logische indeling van procesonderdelen
Nadere informatieSocial Media en webanalyse Social media analytics en Social reports
Social Media en webanalyse Social media analytics en Social reports Roel Willems Consultant, OrangeValley 21 maart 2012 Even voorstellen Wat is Social Media Waarom Social Media marketing Social media web
Nadere informatieProcedure Reset tv-toestellen:
Procedure Reset tv-toestellen: Volgende procedure is te volgen wanneer er een tv-toestel, op een van de kamers niet meer werkt. TV Re-installation Factory Default Her-installeren van de TV Fabrieksinstellingen
Nadere informatieMobile Devices, Applications and Data
Mobile Devices, Applications and Data 1 Jits Langedijk Senior Consultant Jits.langedijk@pqr.nl Peter Sterk Solution Architect peter.sterk@pqr.nl Onderwerpen - Rol van Mobile IT in Tomorrow s Workspace
Nadere informatieGebruiker afschermen van de hardware
Device driver 1 Gebruiker afschermen van de hardware Prog1 Prog2 System calls/ API Operating Systeem Device drivers Hardware 2 Introductie Een device driver is een computer programma dat direct communiceert
Nadere informatieIO-Link : de industriële communicatiestandaard. IO-Link Group Belgium stelt voor
IO-Link : de industriële communicatiestandaard IO-Link Group Belgium stelt voor Trends in production & automation Industry 4.0 digitizes the entire industrial value chain R&D Supplier Procurement Production
Nadere informatieIndustrie 4.0 /Industrial IoT: de praktijk aan de hand van case studies en referenties
Industrie 4.0 /Industrial IoT: de praktijk aan de hand van case studies en referenties Jim ten Broeke Business Development Manager ifactory Advantech Europe B.V. 4 Milestones voor een succesvolle Smart
Nadere informatieContents. Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation
TeleBank Contents Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation Introduction - TeleBank Automatic bank services Initiates a Dialog with
Nadere informatieTentamen Computersystemen
Tentamen Computersystemen baicosy6 2e jaar bachelor AI, 2e semester 21 oktober 213, 9u-11u OMHP D.9 vraag 1 Van een Single Cycle Harvard machine hebben de componenten de volgende propagation delay time:
Nadere informatieIntroductie UNIX/Linux
Introductie UNIX/Linux Erik Poll en Martijn Warnier Katholieke Universiteit Nijmegen http://www.cs.kun.nl/~erikpoll/linux October 31, 2002 Abstract Dit is een collectie opdrachten om wat aspecten van het
Nadere informatieInstallatiehandleiding TiC Narrow Casting Manager
Installatiehandleiding TiC Narrow Casting Manager Inhoudsopgave 1. Algemeen - 3-2. Installatie PostgreSQL database server - 4-3. Installatie FTP server - 9-4. Aanmaken account in FileZilla server - 13
Nadere informatieConfiguratiehandleiding
Configuratiehandleiding Cisco / Linksys Type: IP Phone Configuratiehandleiding Cisco / Linksys Versie 1.2 Contents 1 Inleiding 1 2 Begrippen en afkortingen 1 3 Firmware-versie controleren 1 4 Inloggen
Nadere informatieWat is een busverbinding?
Wat is een busverbinding? gemeenschappelijke verbinding tussen CPU, geheugen en I/O-schakelingen onderscheid tussen: databus/adresbus/controlbus intern/extern serieel/parallel unidirectioneel/bidirectioneel
Nadere informatieOude Bomgar B200 Teardown
Oude Bomgar B200 Teardown Ik nam apart een oude Network Streaming (nu Bomgar) B200, en nam foto's. Geen echte verrassingen. Deze website is de laatste plaats waar je deze foto's zou verwachten. Als u overweegt
Nadere informatieFunctionele beschrijving: Scannen naar Fidura-oplossing
Functionele beschrijving: Scannen naar Fidura-oplossing Algemeen Met KYOCERA scannen naar Fidura beschikt u over een efficiënte oplossing om uw documenten te scannen naar Fidura. Met deze oplossing kunnen
Nadere informatieReal-Time Systems (RTSYST)
Real-Time Systems (RTSYST) Week 2 Process/Thread states ready running Wait for I/O or I/O or completion blocked / sleeping Scheduler = deel van OS dat de toestanden van processen/threads bepaald. OS gebruikt
Nadere informatieNetwerken. 6 januari 2014 David N. Jansen
Netwerken 6 januari 2014 David N. Jansen Huiswerkopdracht 2 donderdag 9 januari al inleveren! Leerstof voor vandaag. Stallings hoofdst 17 www.williamstallings.com /OS/OS6e.html M17_STAL6329_06_SE_C17.QXD
Nadere informatieNMOZTMKUDLVDKECVLKBVESBKHWIDKPDF-WWUS Page File Size 9,952 KB 29 May, 2016
NAVIJVEN MINILAMPJES OM ZELF TE MAKEN KERSTFIGUREN UIT DE LAPPENMAND VOOR DE KINDERSSALOON EN COWBOYS VAN LOLLYSTOKJES KAMERBREED BOEKENREK VOOR EEN SMAL BUDGETGEBAKKEN KOEKFIGUURTJES HANGEN WE IN DE KERSTBOOM
Nadere informatieBeter, Sneller, Mooier. Processoren 27 maart 2012
Beter, Sneller, Mooier Processoren 27 maart 2012 Beter! Sneller! Krach:gere CPU: microcode Snellere CPU: pipeline, out- of- order execu:on Sneller RAM: cache meer mogelijkheden... Welke extra s kan processor-
Nadere informatieHet SDT200 en SDT270-stuurprogramma installeren
Het SDT200 en SDT270-stuurprogramma installeren Het SDT200 en SDT270-stuurprogramma installeren in windows XP Het SDT200 en SDT270-stuurprogramma installeren in Windows 7 of Vista Het SDT200 en SDT270-stuurprogramma
Nadere informatie11/05/2015. Deel 1. Hardware en sporendragers. Hardware en sporendragers. Hardware en sporendragers. Hardware en sporendragers
Didactische doelstellingen Deel 1 De cursist : herkent en benoemt de belangrijkste digitale gegevensdragers waarop sporen kunnen worden teruggevonden. Oost-Vlaamse Politieacademie vzw Sprendonkstraat 5
Nadere informatieAlarmShield Interactive Security System Quickstart Guide. Model No. OPG2204
AlarmShield Interactive Security System Quickstart Guide Model No. OPG2204 Nederlands Stap 1: Installatie Zorg dat u toegang heeft tot uw router (max. 3 meter afstand). Verbind de Security Shuttle met
Nadere informatiewe secure YOUR network Veilige verbindingen Ries van Son
we secure YOUR network Veilige verbindingen Kooy Symposium 2011 Cyber Operations Ries van Son Agenda Ontwikkeling Nederlandse beveiligingsproducten NBV Cyber security strategie Bestaande Nederlandse oplossingen
Nadere informatie- Installatie-instructie CHECK PC2Web
Handleiding - Installatie-instructie CHECK PC2Web (bijgewerkt tot en met versie 2011.07 / 5.1) augustus 2011 ComponentAgro B.V. augustus 2011 (HL201107001/4081/RH) Pagina 1 van 7 2009 ComponentAgro B.V.,
Nadere informatieSelling software anno 2014, een vak apart? Reint Jan Holterman 14 mei 2014
Selling software anno 2014, een vak apart? Reint Jan Holterman 14 mei 2014 Even voorstellen Marketingadvies voor softwarebedrijven Marketing strategie Product positionering Content creatie Interim marketing
Nadere informatieData Acquisitie in een modern jasje. Wordt het de tablet of toch iets anders?
Data Acquisitie in een modern jasje. Wordt het de tablet of toch iets anders? Marco Bischoff Yokogawa Europe BV 7 november 2013 Yokogawa IA Control Products --- Business domain Technologischeontwikkelingen
Nadere informatieOperating Systems. Hoofdstuk 3 Beschrijving en besturing van processen. William Stallings. Windows Cluster UNIX. Apple ANDROID.
William Stallings Operating Systems Hoofdstuk 3 Beschrijving en besturing van processen UNIX Windows Cluster ANDROID Apple unix G..A. van Lierop LOGO LINUX www.themegallery.com Operating Systems: Internals
Nadere informatieVirtualisatie met SAN 12/10/2010
Virtualisatie met SAN 12/10/2010 1 Wat is virtualisatie? Extra laag tussen hard en software OS onafhankelijk van de hardware Laat verschillende OS toe op éénzelfde hardware 2 Klassieke situatie Een server
Nadere informatieFunctioneel IDS7 beheerder (Geavanceerd) Training programma
Functioneel IDS7 beheerder (Geavanceerd) Training programma Uitleg van het programma Het programma is onderverdeeld in verschillende modules en is gebaseerd op basieke kennis van het PACS systeem zowel
Nadere informatie