Sie sind auf Seite 1von 5

Captulo2

Gernciadeatividades
1.Expliqueoque,paraqueserveeoquecontmumPCBProcessControlBlock.
R:PCBumaestruturadedadosqueserveparaarmazenarasinformaesrelativasaocontextoe
osdemaisdadosnecessriosgerenciadeumatarefapresentenosistema.Eleservetambmpara
quesejaefetuadaaTrocadeContextooque:interromperaexecuodeumatarefaeretornara
elamaistarde,semcorromperseuestadointerno.
UmTCBtipicamentecontmasseguintesinformaes:
Identificadordatarefa(podeserumnmerointeiro,umapontador,umarefernciade
objetoouumidentificadoropaco);
Estadodatarefa(nova,pronta,executando,suspensa,terminada,...);
Informaesdecontextodoprocessador(valorescontidosnosregistradores);
Listadereasdememriausadaspelatarefa;
Listas de arquivos abertos, conexes de rede e outros recursos usados pela
tarefa(exclusivosoucompartilhadoscomoutrastarefas);
Informaesdegernciaecontabilizao(prioridade,usurioproprietrio,datadeincio,
tempodeprocessamentojdecorrido,volumededadoslidos/escritos,etc.).

Oquesignificatimesharingequalasuaimportnciaemumsistemaoperacional?
R:Timeshare,emportuguscompartilhamentodetempo,foiumconceitointroduzidonosanos60
pararesolverainviabilizaodosistemadevidoaumatarefaemexecuoquenuncaterminae
nemsolicitaoperaesdeentrada/sada,monopolizandooprocessadoreimpedindoaexecuo
dasdemaistarefas.Nessasoluo,cadaatividadequedetmoprocessadorrecebeumlimitede
tempo de processamento, denominado quantum. Esgotado seu quantum, a tarefa em execuo
perdeoprocessadorevoltaparaumafiladetarefasprontas,queestonamemriaaguardando
suaoportunidadedeexecutar.
Como e com base em que critrios escolhida a durao de um quantum de
processamento?
R:Aduraoatualdoquantumdependemuitodotipodesistemaoperacional.NoLinuxelavaria
de 10 a 200 milissegundos, dependendo do tipo e prioridade da tarefa.
Vrioscritriospodemserdefinidosparaaavaliaodeescalonadores(quemdefineadurao
dosquantums).Osmaisfrequentementeutilizadosso:
Tempodeexecuooudevida(turnaroundtime):dizrespeitoaotempototaldavidade
cadatarefa,ouseja,otempodecorridoentreacriaodatarefaeseuencerramento,

computando todos os tempos de processamento e de espera. uma medida tpica de


sistemasemlote,nosquaisnohinteraodiretacomosusuriosdosistema.Nodeve
serconfundidocomotempodeprocessamento,queotempototaldeusodeprocessador
demandadopelatarefa.
Tempodeespera (waitingtime):otempototalperdidopelatarefanafiladetarefas
prontas,aguardandooprocessador.Deveseobservarqueessetemponoincluiostempos
deesperaemoperaesdeentrada/sada(quesoinerentesaplicao).
Tempoderesposta(responsetime):otempodecorridoentreachegadadeumeventoao
sistemaeoresultadoimediatodeseuprocessamento.Porexemplo,otempodecorridoentre
apertarumateclaeocaracterecorrespondenteaparecernatela,emumeditordetextos.
Essamedidadedesempenhotpicadesistemasinterativos,comosistemasdesktopede
temporeal;eladependesobretudodarapideznotratamentodasinterrupesdehardware
peloncleoedovalordoquantumdetempo,parapermitirqueastarefascheguemmais
rpidoaoprocessadorquandosaemdoestadosuspenso.
Eficincia:aeficinciaE,conformedefinidonaSeo4.2,indicaograudeutilizaodo
processadornaexecuodastarefas dousurio.Eladependesobretudodarapidez da
trocadecontextoedaquantidadedetarefasorientadasaentrada/sadanosistema(tarefas
dessetipogeralmenteabandonamoprocessadorantesdofimdoquantum,gerandoassim
maistrocasdecontextoqueastarefasorientadasaprocessamento).
Considerandoodiagramadeestadosdosprocessosapresentadonafiguraaseguir,completeo
diagramacomatransiodeestadoqueestfaltando(t6)eapresenteosignificadodecada
umdosestadosetransies.
Noachoquesejaocasoparaaprova
Indiquesecadaumadastransiesdeestadodetarefasaseguirdefinidaspossvelouno.
Seatransioforpossvel,dumexemplodesituaonaqualelaocorre(N:Nova,P:pronta,
E:executando,S:suspensa,T:terminada).

Relacioneasafirmaesabaixoaosrespectivosestadosnociclodevidadastarefas(N:Nova,
P:Pronta,E:Executando,S:Suspensa,T:Terminada)
[N]Ocdigodatarefaestsendocarregado.
[P]Atarefassoordenadasporprioridades.
[E]Atarefasaidesteestadoaosolicitarumaoperaodeentrada/sada.
[T]Osrecursosusadospelatarefasodevolvidosaosistema.
[P]Atarefavaiaesteestadoaoterminarseuquantum.
[E]Atarefasprecisadoprocessadorparapoderexecutar.
[S]Oacessoaumsemforoemusopodelevaratarefaaesteestado.
[E]Atarefapodecriarnovastarefas.
[E]Humatarefanesteestadoparacadaprocessadordosistema.
[S]Atarefaaguardaaocorrnciadeumeventoexterno.

Desenhe o diagrama de tempo da execuo do cdigo a seguir, informe qual a sada do


programanatela(comosvaloresdex)ecalculeaduraoaproximadadesuaexecuo.
Noachoquesejaocasoparaaprova
IndiquequantasletrasXseroimpressasnatelapeloprogramaabaixoquandoforexecutado
comaseguintelinhadecomando:a.out4321
Observaes:
a.outoarquivoexecutvelresultantedacompilaodoprograma.
Achamadadesistemaforkcriaumprocessofilho,clonedoprocessoqueaexecutou,
retornandoovalorzeronoprocessofilhoeumvalordiferentedezeronoprocessopai.
Oquesothreadseparaqueservem?
R:Deformageral,cadafluxodeexecuodosistema,sejaassociadoaumprocessoounointerior
doncleo,denominadothread.Threadsservemparaseexecutarmaisdeumprocessoaomesmo
tempo.
Quaisasprincipaisvantagensedesvantagensdethreadsemrelaoaprocessos?
R:Vantagens: Leveedefcilimplementao.Comooncleosomenteconsideraumathread,a
cargadegernciaimpostaaoncleopequenaenodependedonmerodethreadsdentroda
aplicao.
Desvantagens: Comoessasoperaessointermediadaspeloncleo,seumthreaddeusurio
solicitarumaoperaodeE/S(recepodeumpacotederede,porexemplo)othreaddencleo
correspondentesersuspensoataconclusodaoperao,fazendocomquetodososthreadsde
usurioassociadosaoprocessoparemdeexecutarenquantoaoperaonoforconcluda.Outro
problemadessemodelodizrespeitodivisoderecursosentreastarefas.Oncleodosistema
divideotempodoprocessadorentreosfluxosdeexecuoqueeleconheceegerencia:asthreads
de ncleo. Assim, uma aplicao com 100 threads de usurio ir receber o mesmo tempode
processadorqueoutraaplicaocomapenasumthread(considerandoqueambasasaplicaes
tmamesmaprioridade).Cadathreaddaprimeiraaplicaoirportantoreceber1/100dotempo
querecebeothreadnicodasegundaaplicao,oquenopodeserconsideradoumadiviso
justadesserecurso.
Forneadoisexemplosdeproblemascujaimplementaomultithreadnotemdesempenho
melhorquearespectivaimplementaosequencial.
R:Omodelodethreads1:1(multithread)adequadoparaamaioriadassituaeseatendebems
necessidadesdasaplicaesinterativaseservidoresderede.Noentanto, poucoescalvel:a
criaodeumgrandenmerodethreadsimpeumcargasignificativaaoncleodosistema,
inviabilizando aplicaes com muitas tarefas (como grandes servidores Web e simulaes de
grandeporte).

Associeasafirmaesaseguiraosseguintesmodelosdethreads:a)manytoone(N:1);b)
onetoone(1:1);c)manytomany(N:M):
[a]Temaimplementaomaissimples,leveeeficiente.
[b]Multiplexaosthreadsdeusurioemumpooldethreadsdencleo.
[b]Podeimporumacargamuitopesadaaoncleo.
[a]NopermiteexplorarapresenadevriasCPUspelomesmoprocesso.
[c]Permiteumamaiorconcorrnciasemimpormuitacargaaoncleo.
[b]omodeloimplementadonoWindowsNTeseussucessores.
[a]Seumthreadbloquear,todososdemaistmdeesperarporele.
[c]Cadathreadnonveldousuriotemsuacorrespondentedentrodoncleo.
[c]omodelocomimplementaomaiscomplexa.
Considerandoasimplementaesde threadsN:1e1:1paraotrechodecdigoaseguir,a)
desenheosdiagramasdeexecuo,b)informeasduraesaproximadasdeexecuoec)
indiqueasadadoprogramanatela.Considereaoperaosleep()comoumachamadade
sistema(syscall)
noachoquesejaocasodaprova
Expliqueoqueescalonamentoroundrobin,dandoumexemplo.
R: Roundrobin (RR)umdosalgoritmosmaissimplesdeagendamentodeprocessosemum
sistemaoperacional,queatribuifraesdetempoparacadaprocessoempartesiguaisedeforma
circular,manipulandotodososprocessossemprioridades.EscalonamentoRoundRobinsimples
efcildeimplementar.AadiodapreempoportempoaoescalonamentoFCFSdorigema
outro algoritmo de escalonamento bastante popular, conhecido como escalonamento por
revezamento,ouRoundRobin.
FIFO(Firstin,firstout)ouFCFS(Firstcome,firstserved):Ondecomoseuprprionomejdiz,o
primeiroquechegaseroprimeiroaserexecutado;
SJF(ShortestJobFirst):OndeomenorprocessoganharaCPUeatrsdomesmoformaruma
filadeprocessosporordemcrescentedetempodeexecuo;

Considereumsistemadetempocompartilhadocomvalordequantumtqeduraodatrocade
contextottc.Consideretarefasdeentrada/sadaqueusamemmdiap%deseuquantumde
tempocadavezquerecebemoprocessador.DefinaaeficinciaEdosistemacomoumafuno
dosparmetrostq,ttcep.
Noachoquesejaocasodaprova
R:E=tq/tq+ttc

Expliqueoque,paraqueserveecomofuncionaatcnicadeaging.
R:Para evitar a inanio( quando um processo nunca assegura um recurso) e garantir a
proporcionalidade expressa atravs das prioridades estticas, um fator interno denominado
envelhecimento(taskaging)deveser definido.Oenvelhecimentoindicahquantotempouma
tarefaestaguardandooprocessadoreaumentasuaprioridadeproporcionalmente.Dessaforma,
oenvelhecimentoevitaainaniodosprocessosdebaixaprioridade, permitindo a eles obter o
processador periodicamente.

Questes17e18noparecemserocasodaprova
Expliqueosconceitosdeinversoeheranadeprioridade.
R: A inverso de prioridades consiste em processos de alta prioridade serem impedidos de
executarporcausadeumprocessodebaixaprioridade.Umexemplodecomopodeocorreruma
inversodeprioridades:
1.Emumdadomomento,oprocessadorestlivreealocadoaumprocessodebaixaprioridade
pb;
2.duranteseuprocessamento,pbobtmoacessoexclusivoaumrecursoRecomeaauslo;
3.pbperdeoprocessador,poisumprocessocomprioridademaiorqueadele(pm)foiacordado
devidoaumainterrupo;
4.pbvoltaaofinaldafiladetarefasprontas,aguardandooprocessador;enquantoelenovoltar
aexecutar,orecursoRpermaneceralocadoaeleeningumpoderuslo;
5.UmprocessodealtaprioridadeparecebeoprocessadoresolicitaacessoaorecursoR;comoo
recursoestalocadoaoprocessopb,pasuspensoatqueoprocessodebaixaprioridadepb
libere o recurso. Neste momento, o processo de alta prioridade pa no pode continuar sua
execuo,porqueorecursodequenecessitaestnasmosdoprocessodebaixaprioridadepb.
Dessa forma, pa deve esperar que pb execute e libere R, o que justifica o nome inverso de
prioridades.
Questo20...nomepareceserocasodaprova

Das könnte Ihnen auch gefallen