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,
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.
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