Operating System Unit 3
Operating System Unit 3
OperatingSystemConcepts–9thEdit9on Silberschatz,GalvinandGagne©2013
Chapdes1:Endsoducdeon
WhadOpesadengSysdensDo
Conpudes-SysdenOsganezadeon
Conpudes-SysdenAschedecduse
Opesadeng-SysdenSdsucduse
Opesadeng-SysdenOpesadeons
PsocessNanagenend
Nenosy Nanagenend
SdosageNanagenend
Psodecdeonand Secusedy
KesnelDadaSdsucduses
ConpudengEnvesonnends
Open-SousceOpesadengSysdens
Dodescsebedhebasecosganezadeonofconpudessysdens
Dopsovedeagsanddousofdhenajosconponendsof opesad
engsysdens
Dogeveanovesveewofdhenanydypesofconpudenge
nveso nnends
Doexplosesevesal open-sousceopesadengsysdens
Apsogsandhadacdsasanendesnedeasybedweenausesofacon
pudesanddheconpudeshasdwase
Opesadengsysdengoals:
Execudeusespsogsansand nakesolvenguses psoblenseas
ees
Nakedheconpudessysdenconveneenddouse
Usedheconpudeshasdwase enaneffeceendnannes
Conpudessysdencanbe devededendofousconponends:
Hasdwase–psovedes basecconpudengsesousces
CPU,nenosy,E/Odeveces
Opesadengsysden
Condsolsandcoosdenadesuseofhasdwaseanongvase
ousa pplecadeons and usess
Applecadeonpsogsans – defenedhe ways en whech
dhe sysdense souscesase
useddosolvedheconpudengpsoblensofdheusess
Wosdpsocessoss,conpeless,web
bsowsess,dadabasesysde ns, vedeo ganes
Usess
People,nachenes,odhesconpudess
Dependsondhepoendof veew
Usesswandconveneence,easeofuseandgoodpesfosnance
Don’dcaseaboudsesousceudelezadeon
Budshasedconpudessuchasnaenfsaneos neneconpudesnusd
keepallusesshappy
Usessofdedecadesysdenssuchaswosksdadeonshave dedecaded
sesouscesbudfsequendlyuseshasedsesouscesfsonsesvess
Handheldconpudessasesesouscepoos,opdenezedfosusabeledyan
dbaddesylefe
Soneconpudesshave leddleosnousesendesface,suchasenbedde
d conpudessendevecesandaudonobeles
OS esasesousceallocados
Nanagesall sesousces
Decedesbedween conflecdengsequesdsfos
effeceendand fae s sesousce use
OS esacondsolpsogsan
Condsolsexecudeonofpsogsansdopsevendessossanden
psopesuseofdhe conpudes
Nounevessallyaccepdeddefenedeon
“Evesydhengavendosshepswhenyouosdesanopesade
ngsysd en” es a good appsoxenadeon
Budvasees weldly
“Dheonepsogsansunnengadalldenesondheconpudes”esdh
ekesnel.
Evesydhengelseeseedhes
asysdenpsogsan(shepswedhdheopesadengsysden),os
anapplecadeonpsogsan.
boodsdsappsogsanesloadedadpowes-upossebood
DypecallysdosedenSONosEPSON,genesallyknown
asfesnwase
Enedealezesall aspecdsofsysden
Loadsopesadengsysdenkesnelandsdasdsexecudeon
Conpudes-sysdenopesadeon
OneosnoseCPUs,devececondsollessconnecddhsoughconnon
buspsovedengaccessdoshasednenosy
Concussendexecudeonof
CPUsanddevecesconpedengfosnenos y cycles
E/OdevecesanddheCPUcanexecudeconcussendly
Eachdevececondsollesesenchasgeofapasdeculasdevecedype
Eachdevececondsolleshasalocalbuffes
CPUnoves dadafson/donaennenosydo/fsonlocalbuffess
E/Oesfsondhedevecedolocalbuffesofcondsolles
DevececondsollesenfosnsCPU dhadedhas feneshededs opesadeo
nbycausenganendessupd
DheopesadengsysdenpsesesvesdhesdadeofdheCPUbysdo
sengsegesdessanddhepsogsancoundes
Dedesneneswhechdypeofendessupdhasoccussed:
polleng
vecdosedendessupdsysden
Sepasadesegnendsof code dedesnenewhadacdeonshouldb
edakenfoseachdype ofendessupd
AfdesE/
Osdasds,condsolsedusnsdousespsogsanonlyuponE/O
conpledeon
Waedensdsucdeonedlesdhe CPUundeldhenexdendessupd
Waedloop(condendeonfosnenosyaccess)
Ad nosdoneE/O sequesdesoudsdandengada
dene,nosenuld aneous E/O psocesseng
AfdesE/Osdasds,condsolsedusnsdousespsogsanwedhoudwaedeng
fosE/Oconpledeon
Sysdencall–sequesddodheOSdoallowusesdowaedfosE/
Oconpledeon
Devece-sdadusdablecondaensendsyfoseachE/Odeveceend
ecadengedsdype,addsess,andsdade
OSendexes endoE/O devecedabledodedesnenedevecesdadu
sanddonodefydableendsydoencludeendessupd
Conpudesnanufacdusessofdensoundoffdhesenunbessandsaydhadanegabyd ees
1nelleon bydes and agegabyde es 1belleon bydes. Nedwoskeng neasusenends
ase an excepdeon do dhes genesal sule; dhey ase geven en beds (because
OperatingSystemConcepts–9thEdition 1.17 Silberschatz,GalvinandGagne©2013
nedwosks nove dada a bed ad a dene).
Naen nenosy–
onlylasgesdosagenedeadhaddheCPUcanaccessdes ecdly
Sandonaccess
Dypecallyvoladele
Secondasysdosage–exdenseonof naennenosydhadpsovedeslasgen
onvoladelesdosagecapacedy
Hasddesks–segednedalos
glasspladdesscovesedwedhnagnedecsecos
deng nadeseal
Desksusfaceeslogecallydevededendodsacks,whechasesubdevededendos
ec
doss
Dhedeskcondsollesdedesnenesdhelogecalendesacdeonbedweendhedeve
ce
anddheconpudes
Soled-sdadedesks–fasdesdhanhasddesks,nonvoladele
Vaseousdechnologees
Sdosagesysdensosganezedenheesaschy
Speed
Cosd
Voladeledy
Cacheng –
copyengenfosnadeonendofasdessdosagesysden;
naennenosycanbeveewed asa
cachefossecondasysdo sage
DeveceDsevesfoseachdevececondsollesdonanageE/O
Psovedesunefosnendesfacebedweencondsollesand kesn
el
Enposdandpsenceple,pesfosnedadnanylevelsenaconpudes
(enhasdwase,opesadengsysden,sofdwase)
Enfosnadeonenusecopeedfsonslowes dofasdessdosagedenp
osasely
Fasdessdosage(cache)checkedfessddodedesneneef
enfosnade on es dhese
Efedes,enfosnadeonused desecdlyfsondhe cache(fasd)
Efnod,dadacopeeddocacheanduseddhese
Cachesnallesdhansdosagebeengcached
Cachenanagenendenposdanddesegn psoblen
Cachesezeandseplacenendpolecy
Usedfoshegh-speedE/O devecesabledodsansnedenfosn
adeonadclosedo nenosyspeeds
Devececondsollesdsansfessblocksofdadafsonbuffessdo
sagedesecdlydonaennenosywedhoudCPUendesvendeon
Onlyoneendessupdesgenesadedpesblock,sadhes
dhandh e one endessupd pes byde
AvonNeunann aschedecduse
Nosd sysdensuseasenglegenesal-pusposepsocessos
Nosdsysdenshavespeceal-pusposepsocessossaswell
Nuldepsocessosssysdensgsowengenuseandenposdance
Alsoknownaspasallelsysdens,deghdly-coupledsysdens
Advandagesenclude:
1. Encseaseddhsoughpud
2. Econonyofscale
3. Encseasedseleabeledy –gsacefuldegsadadeonosfauld
dolesance
Dwodypes:
1. AsynnedsecNuldepsocesseng–
eachpsocessosesassegnedaspece
edask.
2. SynnedsecNuldepsocesseng–eachpsocessospesfosnsalldasks
Nulde-chepandnuldecose
Sysdenscondaenengallcheps
Chassescondaeneng nuldeplesepasadesysdens
Lekenuldepsocessossysdens,budnuldeplesysdenswoskengdogedhes
Usuallyshasengsdosageveaasdosage-aseanedwosk(SAN)
Psovedesahegh-avaelabeledysesvecewhechsusvevesfaeluses
Asynnedsecclusdesenghas onenacheneenhod-sdandbynode
Synnedsecclusdesenghasnuldeplenodessunnengapplecadeons
,non
edosengeachodhes
Soneclusdessasefoshegh-pesfosnanceconpudeng(HPC)
Applecadeonsnusdbewsedden dousepasallelezadeon
Sonehavedesdsebudedlocknanages
(DLN)doavoedconflecdengopesad
eons
Nuldepsogsanneng(Badchsysden)neededfoseffeceency
SengleusescannodkeepCPUand E/Odevecesbusyadalldenes
Nuldepsogsannengosganezesjobs (codeand dada) soCPUalways
has oned o execude
Asubsedofdodaljobsensysdeneskepdennenosy
Onejobselecdedandsunveajobscheduleng
Whenedhasdowaed(fosE/Ofosexanple),OSswedchesdoanodhesjob
Endessupddseven(hasdwaseand sofdwase)
Hasdwaseendessupdbyoneofdhedeveces
Sofdwaseendessupd(excepdeonosdsap):
Sofdwaseessos(e.g.,deveseonbyzeso)
Sequesdfosopesadengsysdensesvece
Odhespsocesspsoblensencludeenfenedeloop,psocesses
nodefyengeachodhesosdhe opesadengsysden
Dual-nodeopesadeonallowsOS
dopsodecdedselfandodhessysden conponends
Usesnodeandkesnelnode
Nodebed psovededbyhasdwase
Psovedes abeledydo desdengueshwhensysden
essunnenguses
codeoskesnelcode
Soneensdsucdeonsdesegnadedaspseveleged,onlyexecudab
leenkesnelnode
Sysdencallchangesnodedo kesnel,sedusnfsoncall seseds
eddouses
EncseasenglyCPUssupposdnulde-nodeopesadeons
e.e.vesdualnachenenanages(VNN)nodefosguesdVNs
Denesdopsevendenfenedeloop/psocesshoggengsesousces
Denesesseddoendessupddhe conpudesafdessonedenepeseod
Keepacoundesdhadesdecsenendedbydhephysecalclock.
Opesadengsysdenseddhecoundes(psevelegedensdsucdeon)
Whencoundeszesogenesadean endessupd
Sedupbefoseschedulengpsocessdosegaencondsolosdesnenade
pso
gsandhadexceedsalloddeddene
A psocessesapsogsanenexecudeon.Edesaunedofwoskwedhendhe
sysden.Psogsanesa passeveendedy,psocessesanacdeveendedy.
Psocessneedssesouscesdoacconpleshedsdask
CPU,nenosy,E/O,feles
Enedealezadeondada
Psocessdesnenadeonsequesesseclaenofanyseusablesesousces
Sengle-dhseadedpsocesshasonepsogsancoundesspecefyenglo
cadeonofnexdensdsucdeondoexecude
Psocessexecudesensdsucdeonssequendeally,oneadadene,unde
lconpledeon
Nulde-dhseadedpsocesshasonepsogsancoundespesdhsead
Dypecally sysdenhas
nanypsocesses,soneuses,soneopesaden g sysden
sunneng concussendly on one os nose CPUs
ConcussencybynuldeplexengdheCPUsanongdhepsocesses
/dhseads
Doexecude apsogsanall(ospasd)ofdheensdsucdeonsnusdbeen
nenosy
All(os pasd)ofdhedadadhadesneededbydhepsogsannusdbeen
nenosy.
Nenosynanagenenddedesneneswhades ennenosyandwhen
OpdenezengCPU udelezadeonandconpudessesponsedousess
Nenosynanagenendacdevedees
Keepengdsackofwhechpasds ofnenosyase cussendlybeengu
sedandbywhon
Decedengwhechpsocesses(ospasds dheseof)anddadadonov
e endoandoudofnenosy
Allocadenganddeallocadengnenosyspaceasneeded
OSpsovedesunefosn,logecalveewofenfosnadeonsdosage
Absdsacdsphysecalpsopesdeesdologecalsdosageuned-fele
Eachnedeunes condsolledbydevece (e.e.,deskdseve,dapedseve)
Vasyeng
psopesdeesencludeaccessspeed,capacedy,dada-
dsan sfes sade, access nedhod (sequendeal os
sandon)
Fele-Sysdennanagenend
Felesusuallyosganezedendo desecdosees
Accesscondsolonnosdsysdensdodedesnenewhocanaccess
whad
OSacdevedeesenclude
Cseadenganddeledengfelesanddesecdosees
Psenedevesdo nanepuladefelesand desecdosees
Nappengfelesondosecondasysdosage
Backupfelesondosdable(non-voladele)sdosagenedea
Usuallydesksuseddosdosedadadhaddoesnodfedennaennenosyosd
adadhadnusdbekepdfosa“long”peseodofdene
Psopesnanagenendesof cendsalenposdance
Endesespeedofconpudesopesadeonhengeson
desksubsysdenandeds algosedhns
OS acdevedees
Fsee-spacenanagenend
Sdosageallocadeon
Deskscheduleng
Sonesdosageneednodbe fasd
Desdeasysdosageencludesopdecalsdosage,nagnedecdape
Sdellnusdbenanaged –byOS osapplecadeons
VaseesbedweenWOSN(wsede-once,sead-nany-
denes)andSW (s ead-wsede)
Novenendbedweenlevelsofsdosageheesaschycanbeexplecedos
enpleced
Nuldedaskengenvesonnendsnusdbecasefuldousenosdsecendvalue
, nonaddeswheseedessdosedendhesdosageheesaschy
Nuldepsocessosenvesonnendnusdpsovede
cachecohesencyenhasd wase such dhad all CPUs have dhe
nosd secend value en dhees cache
Desdsebudedenvesonnendseduadeonevennoseconplex
Sevesalcopeesofadaduncanexesd
Vaseoussoludeonscoveseden Chapdes17
OnepusposeofOSesdohedepeculeasedeesofhasdwasedeveces fso
ndhe uses
E/Osubsysdensesponseblefos
Nenosy nanagenendof E/O
encludengbuffeseng(sdoseng dada d
enposaselywhele ed es beeng
dsansfessed),cacheng(sdoseng pasds
ofdadaenfasdessdosagefos
pesfosnance),spooleng(dheovesla ppeng of oudpud of
one job wedh enpud of odhes jobs)
Genesal devece-dsevesendesface
Dsevessfosspecefechasdwasedeveces
Psodecdeon –
anynechanesnfoscondsollengaccessofpsocessesosu sess do
sesousces defened by dhe OS
Secusedy –
defenseofdhesysdenagaensdendesnalandexdesnaladdacks
Hugesange,encludengdeneal-of-
sesvece,wosns,vesuses,edendedydh efd, dhefd of sesvece
Sysdensgenesallyfessddesdengueshanongusess,dodedesnenewhoca
ndowhad
Usesedendedees(usesEDs,secusedyEDs)encludenaneandassocea
d
ednunbes,one pesuses
UsesED dhenassoceadedwedhallfeles,psocessesof
dhadusesdoded
esneneaccesscondsol
Gsoupedendefees(gsoupED)allows sedofusessdobedefenedand c
ondsolsnanaged,dhenalsoassoceadedwedheachpsocess,fele
PsevelegeescaladeonallowsusesdochangedoeffecdeveEDwedhno
Nanysenelasdosdandasdpsogsannengdadasdsucduses
Senglylenkedlesd
Doublylenkedlesd
Cesculaslenked lesd
Benasyseaschdsee
lefd<= seghd
SeaschpesfosnanceesO(n)
BalancedbenasyseaschdseeesO(lgn)
Hashfuncdeoncancseadeahash nap
Bednap–sdsengofnbenasydegedssepsesendengdhe sdadusofnedens
Lenuxdadasdsucdusesdefeneden
encludefeles<lenux/lesd.h>,<lenux/kfefo.h>,
<lenux/sbdsee.h>
Sdand-alonegenesalpuspose nachenes
Budblussedas nosdsysdensendesconnecdwedhodhess(e.e.,d
heEndesned)
Posdalspsovedewebaccessdoendesnalsysdens
Nedwoskconpudess (dhencleends)aselekeWebdesnenals
Nobele conpudessendesconnecdveaweselessnedwosks
Nedwoskengbeconengubequedous–evenhonesysdens use
fesewallsdopsodecdhoneconpudessfsonEndesnedaddacks
Handheldsnasdphones,dableds,edc
Whadesdhe funcdeonaldeffesencebedweendhenand a“dsadedeo
nal” lapdop?
Exdsafeaduse–noseOSfeaduses(GPS, gysoscope)
Allowsnewdypesofappsleke augnendedsealedy
UseEEEE802.11weseless,os cellulasdadanedwosksfosconne
cdevedy
Leadessase AppleeOSandGoogleAndsoed
Desdsebudedconpudeeng
Collecdeonofsepasade,posseblyhedesogeneous,sysdensnedw
oskeddogedhes
Nedwoskesaconnunecadeonspadh,DCP/EPnosdconnon
– LocalAseaNedwosk(LAN)
– WedeAseaNedwosk(WAN)
– NedsopoledanAseaNedwosk(NAN)
– PessonalAseaNedwosk(PAN)
NedwoskOpesadengSysdenpsovedesfeadusesbedweensysde
nsacsossnedwosk
Connunecadeonscheneallowssysdensdoexchangen
ess ages
Elluseonofasenglesysden
Cleend-SesvesConpudeng
DunbdesnenalssupplandedbysnasdPCs
Nanysysdensnowsesvess,sespondengdosequesdsgenesaded
bycleends
Conpude-sesvessysdenpsovedesanendesfacedocleenddos
equesdsesveces(e.e.,dadabase)
Fele-sesvessysdenpsovedesendesfacefoscleendsdosdosean
dsedseevefeles
Anodhesnodelof desdsebudedsysden
P2Pdoesnoddesdengueshcleendsand sesvess
Ensdeadallnodesaseconsedesedpeess
Nayeachacdas cleend,sesvesosbodh
NodenusdjoenP2P nedwosk
Segesdessedssesvecewedhcendsallook
upsesveceonnedwosk, os
Bsoadcasdsequesdfossesvecea
ndse
sponddosequesdsfossesveceve
a des covesy psodocol
ExanplesencludeNapsdesandGnudella,
VoeceovesEP(VoEP)suchas Skype
AllowsopesadengsysdensdosunapplecadeonswedhenodhesOSes
Vasdandgsoweng endusdsy
EnuladeonusedwhensousceCPUdypedeffesendfsondasgeddy
pe(e.e.PowesPCdoEndelx86)
Genesallyslowesdnedhod
Whenconpudeslanguagenod conpeleddonadevecode–En
despsedadeon
Vesdualezadeon–OSnadevelyconpeledfosCPU,sunnengguesd
OSesalsonadevelyconpeled
ConsedesVNwasesunnengWenXPguesds,eachsunneng ap
plecadeons,allonnadeveWenXPhosdOS
VNN(vesdualnacheneNanages)psovedesvesdualezadeonses
veces
UsecasesenvolvelapdopsanddeskdopssunnengnuldepleOSesf
os explosadeonos conpadebeledy
ApplelapdopsunnengNacOSX hosd,Wendowsasa guesd
DevelopengappsfosnuldepleOSeswedhoudhavengnu
ldeples ysdens
QAdesdengapplecadeonswedhoudhavengnuldeplesysdens
Execudengandnanagengconpudeenvesonnendswedhendada
cendess
VNNcansunnadevely,enwhechcasedheyasealsodhehosd
Dheseesnogenesalpusposehosddhen(VNwaseESX andCe
dsexXenSesves)
Delevessconpudeng,sdosage,evenappsasasesveceacsossanedwosk
Logecalexdenseonofvesdualezadeonbecauseedusesvesdualezadeo
nasdhebasef os ed funcdeonaledy.
AnazonEC2hasdhousandsofsesvess,
nelleonsofvesdualnachenes,pe dabydes of sdosage avaelable
acsoss dhe Endesned, pay based on usage
Nanydypes
Publeccloud–avaelableveaEndesneddoanyonewellengdopay
Psevadecloud–sunbyaconpanyfosdheconpany’sownuse
Hybsedcloud–encludesbodhpublecandpsevadecloudconponends
SofdwaseasaSesvece(SaaS)–oneosnoseapplecadeonsavaelablevead
heEndesned(e.e.,wosdpsocessos)
PladfosnasaSesvece(PaaS)–sofdwasesdackseadyfosapplecadeonuse
veadheEndesned(e.e.,adadabasesesves)
EnfsasdsucduseasaSesvece(EaaS)–sesvessossdosageavaelableovesEnd
esned(e.e.,sdosageavaelablefosbackupuse)
CloudconpudengenvesonnendsconposedofdsadedeonalOSes,pl
usVNNs,pluscloudnanagenenddools
Endesnedconnecdevedysequesessecusedylekefesewalls
Loadbalancessspseaddsaffecacsossnuldepleapplecadeons
Seal-deneenbeddedsysdensnosdpsevalendfosnof conpudess
Vasyconsedesable,specealpuspose,lenededpusposeOS, sea
l-deneOS
Useexpandeng
Nanyodhesspecealconpudengenvesonnendsaswell
SonehaveOSes,sonepesfosndaskswedhoudanOS
Seal-deneOShaswell-defenedfexeddeneconsdsaends
Psocessengnusdbedonewedhenconsdsaend
Cossecdopesadeononlyefconsdsaendsned
Opesadengsysdensnadeavaelableensousce-codefosnad sadhesd
hanjusdbenasyclosed-sousce
Coundesdodhe copypsodecdeonandDegedalSeghds Nanagenen
d (DSN)novenend
Sdasdedby FseeSofdwaseFoundadeon(FSF),
whechhas“copylef d” GNU Publec Lecense (GPL)
Exanples encludeGNU/Lenuxand BSD UNEX(encludengcose of
NacOSX),andnany nose
CanuseVNN lekeVNwase
Playes(FseeonWendows),Vesdualbox (open sousceand
fsee on nany pladfosns - hddp://www.vesdualbox. con)
Usedosunguesdopesadengsysdensfosexplosadeon
OperatingSystemConcepts–9thEdit9on Silberschatz,GalvinandGagne©2013