Instituto Federal de Educação, Ciência e Tecnologia da Paraíba – Campus Cajazeiras 
1 
Curso: Tecnologia em Análise e Desenvolvimento de Sistemas; 
Disciplina: Sistemas Operacionais; 
Professor: André Atanásio; 
Fátima Ferreira 
Sérgio Diniz
Roteiro 
Histórico; 
Principais Versões; 
Estrutura do Sistema; 
Inicialização e Registro; 
Processos e Threads; 
Gerenciamento de memória; 
Caching; 
Entrada/Saída; 
Sistema de Arquivos NT; 
Segurança; 
2
3
Um pouco de história... 
MicrosoftWindowséumapopularfamíliadesistemasoperacionaiscriadospelaMicrosoft,empresafundadaporBillGatesePaulAllen.OWindowséumprodutocomercial. 
Éosistemaoperacionalmaisusadodomundo,emboraumagrandequantidadedecópiassejamilegais. 
AatualversãoestáveldoWindowsparadesktopéoWindows7,lançadoem2009.ParaservidoresoWindowsServer2008R2éaversãomaisrecenteeestável. 
OWindowsnãofoiinovador,foiumacópiadeumsistemadesenvolvidopelaApple,que,porsuavez,foiumamelhoriadosistemadaXerox. 
4
Um pouco de história 
OssistemasoperacionaisdaMicrosoftparadesktops,portáteiseservidoressãodivididosemtrêsfamílias: 
MS-DOS; 
WindowsbaseadonoMS-DOS; 
WindowsbaseadoemNT; 
5
Década de 1990 -Windows MS-DOS 
Eraumsistemaoperacionalde16bits; 
Monousuário; 
Memórialimitadaa1Mb->640eradedicadoaprocessosusuários; 
FAT16; 
6
Década de 1990: Windows baseado no MS-DOS 
Windowsinspiradonainterfacegráficacomousuário. 
Principaisversões:Windows3.0,Windows95,Windows98, WindowsMe. 
Estessistemasincluíaminterfacesdeprogramaçãode32bits. 
Porém,eleaindanãoeratotalmenteseguroeoisolamentoentreasaplicaçõeseosistemaoperacionaleraprecário. 
7
Década de 2000: Windows baseado em NT 
Windowsdesenvolvidoparafuncionaremdiferentesprocessadoreseenfatizavaasegurançaeaconfiança,bemcomoacompatibilidadecomasversõesbaseadasnoMS-DOS. 
Problemas:ONTdemandavamaismemória,incompatibilidadeentreosdriversdedispositivoseasaplicações. 
8
9
Windows 1.0 
Lançadoem1985; 
SO16bitsexigiaMS-DOS2.0numamaquinacom256KBdememóriaRAMeHD. 
OproblemaéqueopróprioWindows1.0ocupavatodaamemóriadosistema; 
10
Windows 95 
Lançadoem1994; 
VinhacomoMS-DOSembutido; 
FAT16eFAT32esuporteaUSBeconceitoscomoaduplaÁreadeTrabalho+ MenuIniciar+InternetExplorer1.0. 
Memóriavirtualemultiprogramação; 
11
Windows 98 
UsavasistemasdearquivoFAT32nativamente,permitindousarHDscomcapacidadesuperiora2GB. 
Comopontosnegativos,osistemaeramaislentoeinstávelqueoWindows95. 
IntegraçãoentreInternetedesktop. 
12
Windows ME 
MuitosemelhanteaoWindows98,sóquecommuitomaisproblemas; 
Melhorcompartilhamentodeimagens,musicasevídeos,aplicaçõesvoltadasparainternet; 
RestoreSystem; 
13
Windows 2000 
Possibilidade de cluster: duas ou mais maquinas como se fosse uma única; 
Finalmente, livre do MS-DOS; 
14
Windows XP 
Lançadoem2001,representouofimdafamília9xdosistemaoperacional; 
32e64bits; 
AdisponibilidadedatecnologiaNTparausuáriosdomésticos; 
Separaçãoentresistemasparaestaçõesdetrabalhoesistemasparaservidores. 
15
Windows Vista 
Exigemuitosrecursosdamaquina; 
32e64bits; 
Instalaçãodedriversemmodokernel; 
16
Windows 7 
SucessordoWindowsVistalançadoem2009. 
InstalaçãodosistemaemHDvirtual; 
Conceitodebibliotecas; 
IE8e9; 
17
Windows 8 
Lançadoem2012; 
Essesistemaécapazdesecomunicaremtodasasplataformas,sejaemtablets,smartphoneecomputadores; 
Melhoraproveitamentodetempo,maisintuitivo,perfeitaintegraçãocomARMeX86. 
18
19
Estrutura do Sistema 
20
Estrutura do Sistema 
Acamadadeabstraçãodohardware; 
Acamadadonúcleo; 
Chamadasdeprocedimentodiferidas–DPC; 
Chamadadeprocedimentoassíncrona-ACP; 
Objetosdespachantes 
Acamadaexecutiva; 
Osdriversdedispositivos; 
21
A camada de abstração do hardware -HAL 
Camadaresponsávelporofereceraorestodosistemaoperacionalhardwaresabstratosqueocultamdetalhesespecíficos; 
EssasabstraçõesdaHALsãoapresentadasnaformadeserviçosindependentesdemáquinas; 
22
Modo Núcleo 
Servedeponteentreaplicativoseoprocessamentorealdedadosfeitoaníveldehardwareesuaresponsabilidadeégerenciarosrecursosdosistema(acomunicaçãoentrecomponentesdehardwareesoftware); 
Abstraçõessãomaneirasdeesconderdetalhesdeimplementaçãodeumconjuntoparticulardefuncionalidades. 
23
Modo Núcleo 
ChamadasdeprocedimentoDiferidas 
SãoresponsáveispordiminuirotempogastonaexecuçãodeISRs(rotinasdeserviçodeinterrupção) 
CamadadeProcedimentoAssíncrona 
Sãosimilaresàdiferidaporémtrabalhamnocontextodethreads(maisespecífico)nãonocontextodeCPU(geral). 
ObjetosDespachantes 
Esteéqualquerumdosobjetoshabituaisdomodonúcleo,issoincluisemáforos,mutexes,evento,temporizadoreseoutrosobjetospelosquaisosthreadspodemesperarparasincronizaçãocomoutrosthreads. 
24
CamadaExecutiva 
Contémumasériedecomponentesdiferentesetodosfuncionamusandoasabstraçõesdecontrolefornecidaspelacamadadonúcleo; 
Estescomponentessãodivididosemestruturasinternaseexternas; 
Tambémsãoconhecidoscomogerenciadores; 
Gerenciadordememória,E/S,Cache,Objetos,processor 
25
Osdriversdedispositivos 
Bibliotecasdeligaçãodinâmica,carregadaspeloexecutivodoNTOS; 
Alémdeseremusadosparaimplementarosdriversparahardwareespecíficos,tambémsãousadosparaummecanismogeraldeextensibilidadedomodonúcleo. 
26
Estrutura do Sistema 
27
Inicialização do Windows Vista 
28
Inicialização do Windows Vista 
QuandoumPCéligado,umúnicocódigodisponívelestánaformanãovolátilnamemóriadoCMOS,queéinicializadapelofabricantedocomputador. 
NamaiorparteelaeinicializadapelaBIOS,quesabesecomunicarcomodispositivopadrãodocomputador. 
Sãocarregadosprimeiroospequenosprogramasdeinicialização(bootstrap)encontradosnoiniciodaspartiçõesdodisco. 
Essesprogramasdeinicializaçãosabemondeencontrarasinformaçõessuficientesparaverificaroestadodosistema. 
29
Inicialização do Windows Vista 
Verificaoestadodosistema:suspenso,hibernadooudesligado; 
HibernadoouSuspenso–CarregaeexecutaoWindResume.exe; 
Desligado–CarregaeexecutaoWindoLoad.exe; 
Lidacomproblemascomunsqueousuárioencontraquandoainicializaçãofalha. 
Hásuporteparaignorarmudançasrecenteserealizarainicializaçãoparaultimaconfiguraçãoseguradosistema.; 
Incluemainicializaçãosegura,quedesligamuitodosdriversopcionais; 
Consolederecuperação,quedisparaumajaneladelinhadecomandocmd.exe; 
30
Inicialização do Windows Vista 
GerenciadordeObjetos 
OcomponentemaisimportantenoexecutivodoWindows, eleforneceumainterfaceconsistenteeuniformeparagerenciarosrecursosdesistemaeestruturasdedados; 
Essauniformidadedogerenciadordeobjetosfazcomquetodososobjetosusemomesmomecanismoparacomosãocriados,destruídos; 
31
Inicialização do Windows Vista 
GerenciadordeObjetos 
Quandoosistemareinicializa,todososobjetossãoperdidos; 
Quandoumobjetonãoémaisnecessário,eledeveserremovidoesuamemoriaeendereçosdevemserdevolvidosaosistema; 
32
Inicialização do Windows Vista 
OWindowsusamanipuladoresparafazerreferênciaaobjetosdomodonúcleo. 
Essesmanipuladoressãoorganizadosemtabelas; 
33
Registro do Windows 
34
Sistema de arquivos 
OSistemadearquivosdoWindowséchamadoderegistroéorganizadoemvolumesseparados,chamadosdecolmeias. 
QuandooWindowséinicializado,umacolmeiaemparticular, chamadaSYSTEMécarregadanamemória; 
WindowsmantémumagrandequantidadedeinformaçãocrucialnacolmeiaSYSTEM,porexemplo:informaçõessobrequaisdriversutilizaremquaisdispositivos,qualsoftwareexecutarprimeiroetc. 
35
Sistema de arquivos 
Antesdaintroduçãoderegistros,asinformaçõesdeconfiguraçãonoWindowserammantidasemcentenasdearquivos.iniespalhadospelodisco. 
Oregistroreúneessesarquivosemumarmazenamentocentral,queficadisponívelnoprocessodeinicializaçãodosistema. 
Osregistros,entretanto,tornaram-sedesorganizados, conformeoWindowsevolui. 
36
Sistema de arquivos 
Paraexploraroregistro,oWindowstemumprogramadeGUIchamadoderegedit,quepermitequeseabrameexploremosdiretórios(chaves)eitensdedados. 
Quandoosistemaédesligado,amaioriadasinformaçõesdoregistroéarmazenadaemdisconascolmeias. 
Backupssãofeitosautomaticamenteparaimpediracorrupçãonaeventualidadedeumtravamentodosistema. 
Aperdadoregistroimplicanareinstalaçãodetodosossoftwaresdosistema. 
37
As colmeias do registro no Windows vista 
38
Processos e threads no Windows Vista 
39
Processos 
Processossãocriadosporobjetosdeseção,cadaumdosquaisdescreveumobjetodememóriaapoiadoemumarquivodedisco; 
O Windows agrupa processos em tarefas; 
Apropriedademaissignificativadastarefasparaogerenciamentoderecursoséque,umavezqueumprocessoestejaemumatarefa,todososthreadsdosprocessosqueesseprocessocriatambémestaránatarefa; 
Um processo deve estar somente em uma tarefa; 
40
Processos 
41
Threads 
OsthreadsformaabasedoescalonamentodeCPU; 
Cadathreadtemumidentificador,queéobtidodomesmoespaçoqueosidentificadoresdeprocesso; 
Qualquerthreadécapazdeacessartodososobjetosquepertencemaseuprocesso; 
42
Threads 
Umthreadnormalmenteéexecutadonomodousuário,masquandoelefazumachamadadesistema,mudaparaomodonúcleoecontinuaaserexecutadocomoomesmothreadcomasmesmaspropriedadeselimitesquetinhanomodousuário. 
Cadathreadtemduaspilhas–Umaparaomodousuárioeoutraparaomodonúcleo; 
OsvaloresdosregistrosdomodousuáriosãosalvosemumaestruturachamadadedadosContext; 
43
Comunicação entre processos 
Osthreadspodemsecomunicardemuitasmaneiras,entreelas: 
Mailslots-Permitemqueoprocessoemissordifundaumamensagemparadiversosreceptores,emvezdeapenasum. 
Soquetes-Conectamprocessosdemáquinasdiferentes; 
Chamadasdeprocedimentosremotas-PermitequeumprocessoAfaçacomqueumprocessoBchameumprocedimentonoespaçodeendereçamentodeBapedidodeAeretorneoresultadoparaA; 
Éaperfeiçoadoparacomunicaçõesentreprocessosnamáquinalocalenãooperaemrede; 
44
Sincronizaçãode processos 
Osprocessostambémpodemusarváriostiposdeobjetosdesincronização; 
Semáforos-Atuamcomocontadordethreadsqueacessamorecurso; 
Mutexes-Forneceexclusãomútuadethreads; 
Eventos–Responsáveispornotificarosthreadsqueestãoemestadodeespera; 
RegiõesCriticas–Guardamthreadsdeprioridadealtaquenãopodemserinterrompidas; 
45
Escalonamento 
Othreadatualmenteemexecuçãobloqueiaemumsemáforo, mutex,evento,E/S; 
OcódigodoescalonadoréexecutadoparaqueescolhaseusucessorecarregueCONTEXTparainicializarsuaexecução; 
Elesinalizaumobjeto(Porexemplo,fazcomquealguémeventosejasinalizado); 
Depoisqueelesinalizaoobjeto,oescalonadordeveserexecutadoparaverificarseoresultadodesuaaçãoliberouumthreaddeprioridademaisaltaequeesteja,agora,livreparaexecutar. 
46
Escalonamento 
O quantum do thread em execução expira 
Othreadexecutaocódigodoescalonadorparaverificarqueméopróximoaexecutar; 
Uma operação de entrada e saída 
Nestecasooescalonadorverificaseessethreaddeveriacausarpreempçãonothreademexecução. 
47
Gerenciamento de Memória 
48
49 
Gerenciamento de Memoria Virtual 
OWindowsVistatemumsistemadememóriavirtualextremamentesofisticado.EledispõedediversasfunçõesWin32parausaramemóriavirtual,implementadaspelogerenciadordememória.
50 
Memoria Virtual 
Máquinasx64funcionamnomodo64bits 
Podemtemendereçosde32ou64bits. 
Osendereços32bitssãoutilizadoscomosprocessosemexecuçãocomWOW64paracompatibilidadecom32bits. 
Processos32bitspodemobterespaçosdeendereçamentode4GB. 
Tantonasmaquinasx86quantonasx64,oespaçodeendereçamentoépaginadosobdemanda,comtamanhodepaginafixode4kb. 
Emalgunscasos,sãousadaspaginasde4mb.
51 
Os 64 kbdo topo e da base não estão mapeados, visando auxiliar a identificação de erros de programas, causando um desvio em vez de gerar uma leitura de lixo ou escrita em um local incorreto 
Nos 2GB que se seguem, vem o código e os dados privados do usuário. 
Memoria Virtual
52 
Memoria Virtual 
Omotivoparaocompartilhamentodamemoriavirtualdoprocessocomonúcleoéque,aofazerumachamadadesistema,othreaddesviaocontroleparaomodonúcleoeocontinuaexecutandosemalteraromapadamemoria.Tudooqueprecisaserfeitoéalternarparaapilhadonúcleodotread. 
Comoaspaginasdoprocessodomodousuárioaindaestãoacessíveis,ocódigodomodonúcleoconseguelerparamentoseacessarbuffersemterdeirevirateosespaçosdeendereçamentoouterdetemporariamenteduplicaromapadepaginasnosdoisespaços. 
Comissosetemmenosespaçoprivadodeendereçamentoporprocessoseretornomaisrápidodechamadasdesistema.
53 
Alocação de endereço virtual 
Aspaginaspodemestarem3estados:Inválida,ReservadaouComprometida. 
Invalida:Nãoestáatualmentemapeadaparaumobjetodeseçãodememória. 
Comprometida:Ocódigoouosdadosestãomapeadosemumapaginavirtual. 
Reservada:Sãoinválidosmascomaparticularidadedequeosendereçosvirtuaisnuncaserãoalocadospelogerenciadordememoriaparanenhumoutroproposito.Elagarantequeapilhaaumenteateseutamanhamáximosemcorreroriscodequealgumaspaginascontiguasdoespaçodeendereçamentovirtualnecessárioapilhasejamliberadasparaoutrofim
54 
Arquivo de Paginas 
OWindowsusaumaestratégiaJust-In-Time. 
Aspaginassãocomprometidaseacompanhadasdoarquivodepaginas. 
Nãorecebemespaçonessearquivoaomenosqueprecisemvoltarparaodisco. 
Nenhumespaçodediscoéalocadoparaaspaginasquenãoprecisamsairdamemória. 
Seamemóriavirtualtotalemenorqueamemóriafísicadisponível,nãohánecessidadesdeumarquivodepaginas.
55 
Arquivo de Paginas 
Comaestratégiadepréalocação,todaamemóriavirtualdosistemautilizadaparaoarmazenamentodearquivosprivadosficalimitadaaotamanhodosarquivosdaspaginas.ComaalocaçãoJustintimeelapodesertãograndequandootamanhodosarquivosdepaginasedamemóriafísica. 
Comparandoosdiscoscadavezmaioresemaisbaratos, comamemóriafísica,aseconomiasdeespaçonãosãotãosignificativasquantoapossibilidadedemelhorardesempenho.
56 
Chamadas de sistema para gerenciamento de memoria 
A API Win32 contem diversas funções que permitem a um processo gerenciar explicitamente sua memoria virtual.
57 
Implementação do gerenciamento de memoria 
Naplataformax86,oWindowsVistasuporta,porprocesso,umúnicoespaçodeendereçamentolinearde4GBcompaginassobdemanda.Ostamanhosdaspaginaspodemserqualquerpotenciade2até64KB.NoPentium,porexemplo,estáfixadoem4KB. 
Alémdissoosistemapodeusarpaginasde4MBparaaumentaraeficiênciadaTLB(TabeladeTraduçãoRápida),melhorandonataxadeacessoenareduçãodonumerodevezesqueatabeladepaginasprecisaservarrida. 
Ogerenciadordememoriasepreocupaexclusivamentecomosprocessos,poissãoosprocessosquepossuemoespaçodeendereçamento.
58 
Tratamento de Falta de Paginas 
Faltasdepáginapodemocorrerquando: 
1.Páginareferenciadanãoestácomprometida 
2.Ocorreumaviolaçãodeproteção 
3.Apáginacompartilhadadotipocopiarseescrita 
estavaparasermodificada. 
4.Apilhaprecisacrescer. 
5.Apáginareferenciadaestácomprometida,mas 
nãoestámapeada
59 
Tratamento de Falta de Paginas 
1ºe2ºcaso:Sãoerrosdeprogramação,causadoquandoumprogramatentautilizarumendereçoparaoqualnãosesupõeexistirummapeamentoválidooutentaexecutarumaoperaçãoinválida. 
3ºcaso:Ocorrequandoháumatentativadeescritaemumapáginadesomenteleitura. 
4ºcaso:Ocorrequandoumthreadcolocaumvalornapilhaereferenciaumapáginaqueaindanãofoialocada. 
5ºcaso:Tem-seumafaltadepáginanormal,ouseja,apáginareferenciadaestácomprometidamasnãoestámapeada.
60 
Tratamento de Falta de Paginas 
Quandoogerenciadordememóriaconseguesatisfazerumafaltadepáginasemanecessidadedelê-lanodisco, afaltaéclassificadacomofaltaaparente.Sefornecessáriaaleituranodiscoentãoéumafaltaestrita. Faltasaparentessãomuitomaisbaratasecausammenosimpactonodesempenhodaaplicação. 
Quandoumapáginafísicanãoestámaismapeadapelatabeladepáginasdenenhumprocesso,elaécolocadaemumalistalivre,modificadaouemespera
61 
Tratamento de Falta de Paginas 
Páginasquenuncamaisserãonecessáriassãoautomaticamenteliberadas. 
Páginasquepodemcausarnovasfaltasvãoparaalistademodificadasouparaalistadeespera. 
Aspáginasnalistademodificadasserãoescritasnodiscoeentãomovidasparaalistadeespera.
62 
O Algoritmo de substituição de paginas 
Quandoapoucapáginadememóriafísicalivre,éremovidopelogerenciadordememória,páginasdosprocessosnomodousuárioemodonúcleo,comoobjetivodemanteraspáginasvirtuaismaisimportantesnamemóriaeasoutrasnodisco. 
Aspáginasmaisimportantessãodefinidaspelousoacentuadodoconjuntodetrabalho.Oconjuntodetrabalhoconsistenaspáginasmapeadasqueestãonamemóriaequepodemserreferenciadassemumafaltadepágina. 
Cadaconjuntodetrabalhopossuidoisparâmetros: 
-tamanhomínimoetamanhomáximodepáginasnamemória
63 
O Algoritmo de substituição de paginas 
Existem três níveis de atividade para o gerenciador do conjunto de trabalho: 
Muitamemóriadisponível:Varreaspáginasreinicializandoosbitsdeacessoeutilizandoseusvalorespararepresentaraidadedecadapágina. 
Amemóriaestádiminuindo:Paradeadicionarpáginasaoconjuntodetrabalhoecomeçaasubstituiraspáginasmaisantigas. 
Amemóriaestábaixa:Removeaspáginasmaisantigas,diminuindoosconjuntosdetrabalhoparaqueelesfiquemabaixodovalormínimo. 
Alémdalistadelivres,deesperaealistademodificadas,existealistadepáginaslivresqueforamzeradaselistaquearmazenaaspáginasqueforamidentificadascomocontendoerrosdehardware.
64 
Gerenciador de memoria física 
Osistemafrequentementeprecisadepaginasquesomentecontenhamzeros.Quandonovaspaginassãoentreguesaosprocessos,ouquandoaultimapaginaparcialnofinaldeumarquivoélida,umapaginazeradaénecessária. 
Muitotempoégastonaescritadeumapaginacomzeros,portantoémelhorutilizarumathreaddebaixaprioridadeecriarpaginaszeradasnosegundoplano. 
Páginassãoreferenciadasporumaentradaválidadeumatabeladepáginasouestãoporumadascincolistascitadas. 
Entradaspossuemtamanhofixo,masdiferentesformatossãoutilizadosparatiposdeentradadistintos. 
Entradasválidasmantêmoestadodapáginaeumcontadorqueinformaquantastabelasdepáginasapontamparaapágina.
65 
Gerenciador de memoria física 
Aspáginasdeumconjuntodetrabalhoinformamquaisentradasasreferenciam. 
Amovimentaçãodaspáginaspelosconjuntosdetrabalhoeasdiferenteslistaséfeitapelogerenciadordeconjuntosdetrabalhoeoutrosthreadsdosistema. 
Ogerenciamentodememóriaéumsubsistemaquetentaserauto-ajustávelaomáximo,mashátambémparâmetrosqueosadministradorespodemajustarparaatuarnodesempenhodosistema.
CachingnoWindowsVista 
66
67 
Cachingno Windows Vista 
AcachedoWindowsaumentaodesempenhodesistemasdearquivosmantendonamemóriaasregiõesrecenteefrequentementeutilizadasdosarquivos. 
Regiõesdearquivosarmazenadasemcachesãochamadasdevisões(views). 
Ogerenciamentorealdamemóriafísicanacacheéfeitopelogerenciadordememória. 
Ogerenciadordecacheadministraousodosendereçosvirtuaisdonúcleoparavisões,organizaparaqueogerenciadordememóriamantenhaaspáginasdacachenamemóriafísicaeofereceinterfacesparaosistemadearquivos. 
OsrecursosdogerenciadordecachenoWindowssãocompartilhadoscomtodosossistemasdearquivos.
68 
Cachingno Windows Vista 
Cachingvirtualéconvenienteporqueossistemasdearquivosnãoprecisamprimeirotraduziraspartesdoarquivoemnúmerosdeblocosfísicos,atraduçãoéfeitaquandoogerenciadordememóriachamaosistemadearquivosparaacessarapáginanodisco.
69 
Cachingno Windows Vista 
OWindowsVistaintroduziuumaformacompletamentenovadecachingnosistema, denominadaReadyBoost.OsusuáriospodemconectarumamemoriaflashaUSBouaoutrasportaseconseguirqueosistemaoperacionalutilizeessamemoriacomoumacachedosistema.
70 
Entrada e Saída no Windows Vista 
OsobjetivosdogerenciadordeE/SdoWindowssãofornecerumaestruturafundamentalextensíveleflexívelparalidar,demodoeficiente,comumagrandevariedadededispositivoseserviçosdeE/S,suportaradescobertaautomáticadeperiféricos(plug-and-play)efazerainstalaçãodeseusdriverserealizarogerenciamentodeenergiadosdispositivosedaCPU.
71 
Conceitos fundamentais 
OgerenciadordeE/SéligadointimamentecomogerenciadorderecursosPlug-and-play. 
NoWindows,todosossistemasdearquivos,filtrosanti-vírus,gerenciadoresdevolume,pilhasdeprotocoloderedeeatéserviçosdonúcleoquenãotemhardwareassociadosãoimplementadosusando-sedriversdeE/S. 
UmacaracterísticainteressantedoWindowséosuporteadiscosdinâmicos,quepodemcobrirváriaspartiçõeseatemesmováriosdiscospodendoserconfiguradosemtemporeal,semnemmesmoterdereinicializar. 
DasuporteàE/Sassíncrona.ÉpossívelqueumthreadcomeceumaoperaçãodeE/SeentãocontinuesendoexecutadoemparalelocomaoperaçãodeE/S.
72 
Chamadas API de entrada e saída 
AschamadasAPIdesistemafornecidaspelogerenciadordeE/Snãosãomuitodiferentesdasoferecidaspelasmaioriadossistemasoperacionais.Asoperaçõesbásicassãoopen,read,write,ioctleclose,mastambémháoutrosrecursosprontosparausarasoperaçõesdeenergia,operaçõesparaconfiguraçãodeparâmetro, descargadebuffersdosistemaetc.
73 
Chamadas API de entrada e saída
74 
Implementação de E/S 
OsistemaeE/SdoWindowsconsistedeserviçosplug- and-play,ogerenciadordeenergia,ogerenciadordeE/Seomodelodedriverdedispositivo. 
Driversdedispositivos: 
ParagarantirqueosdriversdedispositivosfuncionembemcomorestodoWindows,aMicrosoftdefiniuoWDM(modelodedriversdoWindows),aoqual,foiprojetadoparafuncionarcomasdiferenteversõesdoWindows,permitindoquedriversescritoscomcautelafossemcompatíveiscomossistemas
75 
Drivers de dispositivos 
UmdrivernoWindowsVistaécapazdefazertodootrabalhosozinho.Poroutrolado,osdriverspodemserempilhados,oquesignificaqueumarequisiçãopodepassarporumasequenciadedrivers,cadaumfazendoumapartedotrabalho.
76 
Drivers de dispositivos 
OsDriversdedispositivosdomodonúcleosãoumproblemagraveparaaestabilidadeeconfiabilidadedoWindows,poisamaiorpartedasfalhasdonúcleonoWindowssedeveaoserrosdosdriversdedispositivos. 
Comoosdriversdedispositivosdomodonúcleodividemomesmoespaçodeendereçamentocomascamadasdonúcleoeexecutiva,errosnosdriverspodemcorromperasestruturasdedadosdosistema.
77 
Gerenciador de energia 
OGerenciadordeenergiacontrolaautilizaçãodeenergiaemtodoosistema. 
Historicamente,ogerenciamentodeconsumodeenergiaconsistiaemdesligarateladomonitorepararogirodasunidadesdedisco. 
Recursosdegerencialmentedeenergiamaisnovosincluemareduçãodeconsumodeenergiadoscomponentesquandoosistemanãoestaemuso.
78 
Gerenciador de energia 
OWindowsdasuporteaumamodoespecialdedesligamentochamadohibernação,quecopiatodaamemoriafísicaparaodiscoe,então,reduzoconsumodeenergiaaumaminúsculofluxo. 
Umaalternativaahibernaçãoéummodochamadomododeespera,noqualogerenciadordeenergiareduzosistemainteiroparaomenorestadodeenergiapossível.
79 
O sistema de arquivos NT do Windows 
OWindowsVistadásuporteaváriossistemasdearquivos(FAT- 16,FAT-32,NTFS) 
FAT-16éusandonoantigosistemadearquivosdoMS-DOS, queusaendereçosdediscode16bits,oqueolimitaapartiçãodediscoa2GB. 
OFAT-32usaendereçosde32bitsesuportapartiçõesdediscodeate2TB.NãohásegurançanoFAT-32,ehojeelesóéusadoemmídiasportáteis. 
ONTFS(sistemadearquivosdoNT)usaendereçosdediscode64bitsepodesuportapartiçõesdediscodeate2^64byts.
80 
Sistema de Arquivo NTFS 
NomesdearquivosindividuaisnoNTFSsãolimitadosa255caracteres 
Caminhoscompletossãolimitadosem32.767caracteres. 
NomesdearquivosemUnicode(qualquerlíngua) 
ONTFSécasesensitive. 
AAPIdoWin32nãodasuportecompletoparanomesdearquivosenuncaparaosnomesdediretórios. 
ONTFSéumsistemadearquivoshierárquico,similaraosistemadearquivosdoUNIX.OSeparadorentrenomesdecomponentesé“”,emdezde“/”,quefoiherdadodoMS-DOS. 
SuporteaLinksSimbólicossurgiunoWindowsVista
81 
Sistema de Arquivo NTFS 
ONTFSdefine13atributos.Cadacabeçalhoidentificaoatributoeinformaotamanhoealocalizaçãodocampodevalor.
82 
Compressão de arquivos 
ONTFSsuportaacompressãotransparentedearquivos. Umarquivopodesercriadoemmodocomprimido,oquesignificaqueoNTFStentacomprimirautomaticamenteosblocoquandoelessãoescritosedescomprimi-losautomaticamentequandosãolidos
83 
Criptografia de arquivos 
Oscomputadoressãousados,atualmente,paraarmazenartodotipodedadossensíveis,entreosquaisplanosdeincorporações,informaçãosobretributosecartasdeamor, enfim,informaçõescujosdonosnãoasqueremverreveladasaqualquerum. 
OWindowsresolveessesproblemasdisponibilizandoumaopçãoparacriptografasarquivos,dessemodo,mesmoqueocomputadorsejaroubado,osarquivosserãoilegíveis. 
OsprocessosdecriptografasedecriptaremsinãosãofeitospeloNTFS,masporumdriverchamadoEFS(sistemadecriptografiadearquivos).
84 
Segurança no Windows Vista 
Orginalmente,oNTfoiprojetadoparacumprirasdeterminaçõesdesegurançaC2doDepartamentodeDefesadosEstadosUnidos.Essepadrãoexigequeossistemasoperacionaistenhacertaspropriedadesparaseremclassificadoscomosegurososuficienteparacertostiposdeatividadesmilitares.
85 
Segurança no Windows Vista 
EmboraoWindowsVistanãotenhasidoespecificamenteprojetadoparacumprimentodasdeterminaçõesC2,eleherdavariasdaspropriedadesdesegurançadoNT.Entreelas,estão: 
Autenticaçãoseguracommedidascontratrapaças 
Controlesdeacessodiscricionário 
Controledeacessoprivilegiado
86 
Segurança no Windows Vista 
Acessoseguroaosistemasignificaqueoadministradordosistemapodeexigirquetodososusuáriostenhamumasenhaparaseconectarem 
OsControlesdeacessosdiscricionáriopermitemaodonodeumarquivooudeoutroobjetodizerquempodeusa-loedequemodo. 
Oscontrolesdeacessosprivilegiadospermitemqueoadministradordosistemaignoreoscontrolesdeacessosdiscricionáriosquandonecessários
87 
Conceitos Fundamentais 
Todousuário(egrupodeusuário)doWindowsVistaéidentificadoporumSID(identificadordesegurança). 
OsSIDssãonúmerosbinárioscomumpequenocabeçalhoseguidoporumcomponentelongoealeatório.AintençãoéquecadaSIDsejaúnicoemtodoomundo. 
CadaprocessotemumafichadeacessoqueespecificaumSIDeoutraspropriedades.Essafichaéatribuídanomomentodeacessoaosistema.
88 
Estrutura de uma ficha de acesso 
Cabeçalho:Contemalgumasinformaçõesadministrativas. 
Validade:Indicaquandoaficadeixadeservalida. 
Grupo:Especificamosgruposaosquaisoprocessopertence. 
CACLinicial:éalistadecontroledeacessoatribuídaaosabjetoscriadospeloprocesso. 
SIDdousuário:Indicaquempossuioprocesso. 
SIDsrestritos:Permitirqueprocessosnãoconfiáveisparticipemdetrabalhos. 
Privilégios:Dãoaoprocessopoderesespeciais,comoodireitodedesligaramaquinaoudeacessararquivos. 
Níveldepersonificação:Éutilizadoparacomunicaçãoentreclienteseservidores.
89 
Chamadas API de segurança 
AmaioriadosmecanismosdecontroledeacessodoWindowsVistaébaseadaemdescritoresdesegurança. Opadrãousualéque,quandoumprocessocriaumobjeto,eleforneceumdescritordesegurança.Essedescritordesegurançatorna-se,então,odescritordesegurançaassociadoaoobjeto.Senenhumdescritordesegurançaforfornecidonachamadadecriaçãodoobjeto,seráusadoaconfiguraçãopadrãodesegurança.
90 
Chamadas API de segurança 
Paracriarumdescritordesegurança,primeirodeveseralocadasuamemoriaeentãoeentãoexecutarumasequenciadefunçõesdaAPIdoWin32
91 
UAC(Controle de conta do usuário) 
CriadoparatrataroproblemacrônicodoWindowsemquemuitosusuáriosseconectamcomoadministradores. 
Seradministradorotempotodoéalgoperigosonãosomenteporqueoserrosdousuáriopodemdanificarosistema,mastambémporque,seousuárioforenganadoouatacadoeexecutarcódigoqueestejatentandocomprometerosistema,ocódigoteráacessoadministrativoepodeenterrar-sebemfundonosistema.
92 
UAC(Controle de conta do usuário) 
ComaUAC,seocorreumatentativadeexecuçãodeumaoperaçãoquedemandapermissõesdeadministrador,osistemacriaumdesktopespecialeassumeocontroleparaquesomenteentradasdousuáriopossamautorizaroacesso. 
Algunsataquesconseguemdestruirosdadosdousuário. Entretanto,oUACrealmenteajudaaimpedircertostiposdeataques
93
94
95

Estudo de Caso Windows

  • 1.
    Instituto Federal deEducação, Ciência e Tecnologia da Paraíba – Campus Cajazeiras 1 Curso: Tecnologia em Análise e Desenvolvimento de Sistemas; Disciplina: Sistemas Operacionais; Professor: André Atanásio; Fátima Ferreira Sérgio Diniz
  • 2.
    Roteiro Histórico; PrincipaisVersões; Estrutura do Sistema; Inicialização e Registro; Processos e Threads; Gerenciamento de memória; Caching; Entrada/Saída; Sistema de Arquivos NT; Segurança; 2
  • 3.
  • 4.
    Um pouco dehistória... MicrosoftWindowséumapopularfamíliadesistemasoperacionaiscriadospelaMicrosoft,empresafundadaporBillGatesePaulAllen.OWindowséumprodutocomercial. Éosistemaoperacionalmaisusadodomundo,emboraumagrandequantidadedecópiassejamilegais. AatualversãoestáveldoWindowsparadesktopéoWindows7,lançadoem2009.ParaservidoresoWindowsServer2008R2éaversãomaisrecenteeestável. OWindowsnãofoiinovador,foiumacópiadeumsistemadesenvolvidopelaApple,que,porsuavez,foiumamelhoriadosistemadaXerox. 4
  • 5.
    Um pouco dehistória OssistemasoperacionaisdaMicrosoftparadesktops,portáteiseservidoressãodivididosemtrêsfamílias: MS-DOS; WindowsbaseadonoMS-DOS; WindowsbaseadoemNT; 5
  • 6.
    Década de 1990-Windows MS-DOS Eraumsistemaoperacionalde16bits; Monousuário; Memórialimitadaa1Mb->640eradedicadoaprocessosusuários; FAT16; 6
  • 7.
    Década de 1990:Windows baseado no MS-DOS Windowsinspiradonainterfacegráficacomousuário. Principaisversões:Windows3.0,Windows95,Windows98, WindowsMe. Estessistemasincluíaminterfacesdeprogramaçãode32bits. Porém,eleaindanãoeratotalmenteseguroeoisolamentoentreasaplicaçõeseosistemaoperacionaleraprecário. 7
  • 8.
    Década de 2000:Windows baseado em NT Windowsdesenvolvidoparafuncionaremdiferentesprocessadoreseenfatizavaasegurançaeaconfiança,bemcomoacompatibilidadecomasversõesbaseadasnoMS-DOS. Problemas:ONTdemandavamaismemória,incompatibilidadeentreosdriversdedispositivoseasaplicações. 8
  • 9.
  • 10.
    Windows 1.0 Lançadoem1985; SO16bitsexigiaMS-DOS2.0numamaquinacom256KBdememóriaRAMeHD. OproblemaéqueopróprioWindows1.0ocupavatodaamemóriadosistema; 10
  • 11.
    Windows 95 Lançadoem1994; VinhacomoMS-DOSembutido; FAT16eFAT32esuporteaUSBeconceitoscomoaduplaÁreadeTrabalho+ MenuIniciar+InternetExplorer1.0. Memóriavirtualemultiprogramação; 11
  • 12.
    Windows 98 UsavasistemasdearquivoFAT32nativamente,permitindousarHDscomcapacidadesuperiora2GB. Comopontosnegativos,osistemaeramaislentoeinstávelqueoWindows95. IntegraçãoentreInternetedesktop. 12
  • 13.
    Windows ME MuitosemelhanteaoWindows98,sóquecommuitomaisproblemas; Melhorcompartilhamentodeimagens,musicasevídeos,aplicaçõesvoltadasparainternet; RestoreSystem; 13
  • 14.
    Windows 2000 Possibilidadede cluster: duas ou mais maquinas como se fosse uma única; Finalmente, livre do MS-DOS; 14
  • 15.
    Windows XP Lançadoem2001,representouofimdafamília9xdosistemaoperacional; 32e64bits; AdisponibilidadedatecnologiaNTparausuáriosdomésticos; Separaçãoentresistemasparaestaçõesdetrabalhoesistemasparaservidores. 15
  • 16.
    Windows Vista Exigemuitosrecursosdamaquina; 32e64bits; Instalaçãodedriversemmodokernel; 16
  • 17.
    Windows 7 SucessordoWindowsVistalançadoem2009. InstalaçãodosistemaemHDvirtual; Conceitodebibliotecas; IE8e9; 17
  • 18.
    Windows 8 Lançadoem2012; Essesistemaécapazdesecomunicaremtodasasplataformas,sejaemtablets,smartphoneecomputadores; Melhoraproveitamentodetempo,maisintuitivo,perfeitaintegraçãocomARMeX86. 18
  • 19.
  • 20.
  • 21.
    Estrutura do Sistema Acamadadeabstraçãodohardware; Acamadadonúcleo; Chamadasdeprocedimentodiferidas–DPC; Chamadadeprocedimentoassíncrona-ACP; Objetosdespachantes Acamadaexecutiva; Osdriversdedispositivos; 21
  • 22.
    A camada deabstração do hardware -HAL Camadaresponsávelporofereceraorestodosistemaoperacionalhardwaresabstratosqueocultamdetalhesespecíficos; EssasabstraçõesdaHALsãoapresentadasnaformadeserviçosindependentesdemáquinas; 22
  • 23.
  • 24.
    Modo Núcleo ChamadasdeprocedimentoDiferidas SãoresponsáveispordiminuirotempogastonaexecuçãodeISRs(rotinasdeserviçodeinterrupção) CamadadeProcedimentoAssíncrona Sãosimilaresàdiferidaporémtrabalhamnocontextodethreads(maisespecífico)nãonocontextodeCPU(geral). ObjetosDespachantes Esteéqualquerumdosobjetoshabituaisdomodonúcleo,issoincluisemáforos,mutexes,evento,temporizadoreseoutrosobjetospelosquaisosthreadspodemesperarparasincronizaçãocomoutrosthreads. 24
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
    Inicialização do WindowsVista QuandoumPCéligado,umúnicocódigodisponívelestánaformanãovolátilnamemóriadoCMOS,queéinicializadapelofabricantedocomputador. NamaiorparteelaeinicializadapelaBIOS,quesabesecomunicarcomodispositivopadrãodocomputador. Sãocarregadosprimeiroospequenosprogramasdeinicialização(bootstrap)encontradosnoiniciodaspartiçõesdodisco. Essesprogramasdeinicializaçãosabemondeencontrarasinformaçõessuficientesparaverificaroestadodosistema. 29
  • 30.
    Inicialização do WindowsVista Verificaoestadodosistema:suspenso,hibernadooudesligado; HibernadoouSuspenso–CarregaeexecutaoWindResume.exe; Desligado–CarregaeexecutaoWindoLoad.exe; Lidacomproblemascomunsqueousuárioencontraquandoainicializaçãofalha. Hásuporteparaignorarmudançasrecenteserealizarainicializaçãoparaultimaconfiguraçãoseguradosistema.; Incluemainicializaçãosegura,quedesligamuitodosdriversopcionais; Consolederecuperação,quedisparaumajaneladelinhadecomandocmd.exe; 30
  • 31.
    Inicialização do WindowsVista GerenciadordeObjetos OcomponentemaisimportantenoexecutivodoWindows, eleforneceumainterfaceconsistenteeuniformeparagerenciarosrecursosdesistemaeestruturasdedados; Essauniformidadedogerenciadordeobjetosfazcomquetodososobjetosusemomesmomecanismoparacomosãocriados,destruídos; 31
  • 32.
    Inicialização do WindowsVista GerenciadordeObjetos Quandoosistemareinicializa,todososobjetossãoperdidos; Quandoumobjetonãoémaisnecessário,eledeveserremovidoesuamemoriaeendereçosdevemserdevolvidosaosistema; 32
  • 33.
    Inicialização do WindowsVista OWindowsusamanipuladoresparafazerreferênciaaobjetosdomodonúcleo. Essesmanipuladoressãoorganizadosemtabelas; 33
  • 34.
  • 35.
    Sistema de arquivos OSistemadearquivosdoWindowséchamadoderegistroéorganizadoemvolumesseparados,chamadosdecolmeias. QuandooWindowséinicializado,umacolmeiaemparticular, chamadaSYSTEMécarregadanamemória; WindowsmantémumagrandequantidadedeinformaçãocrucialnacolmeiaSYSTEM,porexemplo:informaçõessobrequaisdriversutilizaremquaisdispositivos,qualsoftwareexecutarprimeiroetc. 35
  • 36.
    Sistema de arquivos Antesdaintroduçãoderegistros,asinformaçõesdeconfiguraçãonoWindowserammantidasemcentenasdearquivos.iniespalhadospelodisco. Oregistroreúneessesarquivosemumarmazenamentocentral,queficadisponívelnoprocessodeinicializaçãodosistema. Osregistros,entretanto,tornaram-sedesorganizados, conformeoWindowsevolui. 36
  • 37.
    Sistema de arquivos Paraexploraroregistro,oWindowstemumprogramadeGUIchamadoderegedit,quepermitequeseabrameexploremosdiretórios(chaves)eitensdedados. Quandoosistemaédesligado,amaioriadasinformaçõesdoregistroéarmazenadaemdisconascolmeias. Backupssãofeitosautomaticamenteparaimpediracorrupçãonaeventualidadedeumtravamentodosistema. Aperdadoregistroimplicanareinstalaçãodetodosossoftwaresdosistema. 37
  • 38.
    As colmeias doregistro no Windows vista 38
  • 39.
    Processos e threadsno Windows Vista 39
  • 40.
    Processos Processossãocriadosporobjetosdeseção,cadaumdosquaisdescreveumobjetodememóriaapoiadoemumarquivodedisco; OWindows agrupa processos em tarefas; Apropriedademaissignificativadastarefasparaogerenciamentoderecursoséque,umavezqueumprocessoestejaemumatarefa,todososthreadsdosprocessosqueesseprocessocriatambémestaránatarefa; Um processo deve estar somente em uma tarefa; 40
  • 41.
  • 42.
  • 43.
  • 44.
    Comunicação entre processos Osthreadspodemsecomunicardemuitasmaneiras,entreelas: Mailslots-Permitemqueoprocessoemissordifundaumamensagemparadiversosreceptores,emvezdeapenasum. Soquetes-Conectamprocessosdemáquinasdiferentes; Chamadasdeprocedimentosremotas-PermitequeumprocessoAfaçacomqueumprocessoBchameumprocedimentonoespaçodeendereçamentodeBapedidodeAeretorneoresultadoparaA; Éaperfeiçoadoparacomunicaçõesentreprocessosnamáquinalocalenãooperaemrede; 44
  • 45.
    Sincronizaçãode processos Osprocessostambémpodemusarváriostiposdeobjetosdesincronização; Semáforos-Atuamcomocontadordethreadsqueacessamorecurso; Mutexes-Forneceexclusãomútuadethreads; Eventos–Responsáveispornotificarosthreadsqueestãoemestadodeespera; RegiõesCriticas–Guardamthreadsdeprioridadealtaquenãopodemserinterrompidas; 45
  • 46.
    Escalonamento Othreadatualmenteemexecuçãobloqueiaemumsemáforo, mutex,evento,E/S; OcódigodoescalonadoréexecutadoparaqueescolhaseusucessorecarregueCONTEXTparainicializarsuaexecução; Elesinalizaumobjeto(Porexemplo,fazcomquealguémeventosejasinalizado); Depoisqueelesinalizaoobjeto,oescalonadordeveserexecutadoparaverificarseoresultadodesuaaçãoliberouumthreaddeprioridademaisaltaequeesteja,agora,livreparaexecutar. 46
  • 47.
    Escalonamento O quantumdo thread em execução expira Othreadexecutaocódigodoescalonadorparaverificarqueméopróximoaexecutar; Uma operação de entrada e saída Nestecasooescalonadorverificaseessethreaddeveriacausarpreempçãonothreademexecução. 47
  • 48.
  • 49.
    49 Gerenciamento deMemoria Virtual OWindowsVistatemumsistemadememóriavirtualextremamentesofisticado.EledispõedediversasfunçõesWin32parausaramemóriavirtual,implementadaspelogerenciadordememória.
  • 50.
    50 Memoria Virtual Máquinasx64funcionamnomodo64bits Podemtemendereçosde32ou64bits. Osendereços32bitssãoutilizadoscomosprocessosemexecuçãocomWOW64paracompatibilidadecom32bits. Processos32bitspodemobterespaçosdeendereçamentode4GB. Tantonasmaquinasx86quantonasx64,oespaçodeendereçamentoépaginadosobdemanda,comtamanhodepaginafixode4kb. Emalgunscasos,sãousadaspaginasde4mb.
  • 51.
    51 Os 64kbdo topo e da base não estão mapeados, visando auxiliar a identificação de erros de programas, causando um desvio em vez de gerar uma leitura de lixo ou escrita em um local incorreto Nos 2GB que se seguem, vem o código e os dados privados do usuário. Memoria Virtual
  • 52.
    52 Memoria Virtual Omotivoparaocompartilhamentodamemoriavirtualdoprocessocomonúcleoéque,aofazerumachamadadesistema,othreaddesviaocontroleparaomodonúcleoeocontinuaexecutandosemalteraromapadamemoria.Tudooqueprecisaserfeitoéalternarparaapilhadonúcleodotread. Comoaspaginasdoprocessodomodousuárioaindaestãoacessíveis,ocódigodomodonúcleoconseguelerparamentoseacessarbuffersemterdeirevirateosespaçosdeendereçamentoouterdetemporariamenteduplicaromapadepaginasnosdoisespaços. Comissosetemmenosespaçoprivadodeendereçamentoporprocessoseretornomaisrápidodechamadasdesistema.
  • 53.
    53 Alocação deendereço virtual Aspaginaspodemestarem3estados:Inválida,ReservadaouComprometida. Invalida:Nãoestáatualmentemapeadaparaumobjetodeseçãodememória. Comprometida:Ocódigoouosdadosestãomapeadosemumapaginavirtual. Reservada:Sãoinválidosmascomaparticularidadedequeosendereçosvirtuaisnuncaserãoalocadospelogerenciadordememoriaparanenhumoutroproposito.Elagarantequeapilhaaumenteateseutamanhamáximosemcorreroriscodequealgumaspaginascontiguasdoespaçodeendereçamentovirtualnecessárioapilhasejamliberadasparaoutrofim
  • 54.
    54 Arquivo dePaginas OWindowsusaumaestratégiaJust-In-Time. Aspaginassãocomprometidaseacompanhadasdoarquivodepaginas. Nãorecebemespaçonessearquivoaomenosqueprecisemvoltarparaodisco. Nenhumespaçodediscoéalocadoparaaspaginasquenãoprecisamsairdamemória. Seamemóriavirtualtotalemenorqueamemóriafísicadisponível,nãohánecessidadesdeumarquivodepaginas.
  • 55.
    55 Arquivo dePaginas Comaestratégiadepréalocação,todaamemóriavirtualdosistemautilizadaparaoarmazenamentodearquivosprivadosficalimitadaaotamanhodosarquivosdaspaginas.ComaalocaçãoJustintimeelapodesertãograndequandootamanhodosarquivosdepaginasedamemóriafísica. Comparandoosdiscoscadavezmaioresemaisbaratos, comamemóriafísica,aseconomiasdeespaçonãosãotãosignificativasquantoapossibilidadedemelhorardesempenho.
  • 56.
    56 Chamadas desistema para gerenciamento de memoria A API Win32 contem diversas funções que permitem a um processo gerenciar explicitamente sua memoria virtual.
  • 57.
    57 Implementação dogerenciamento de memoria Naplataformax86,oWindowsVistasuporta,porprocesso,umúnicoespaçodeendereçamentolinearde4GBcompaginassobdemanda.Ostamanhosdaspaginaspodemserqualquerpotenciade2até64KB.NoPentium,porexemplo,estáfixadoem4KB. Alémdissoosistemapodeusarpaginasde4MBparaaumentaraeficiênciadaTLB(TabeladeTraduçãoRápida),melhorandonataxadeacessoenareduçãodonumerodevezesqueatabeladepaginasprecisaservarrida. Ogerenciadordememoriasepreocupaexclusivamentecomosprocessos,poissãoosprocessosquepossuemoespaçodeendereçamento.
  • 58.
    58 Tratamento deFalta de Paginas Faltasdepáginapodemocorrerquando: 1.Páginareferenciadanãoestácomprometida 2.Ocorreumaviolaçãodeproteção 3.Apáginacompartilhadadotipocopiarseescrita estavaparasermodificada. 4.Apilhaprecisacrescer. 5.Apáginareferenciadaestácomprometida,mas nãoestámapeada
  • 59.
    59 Tratamento deFalta de Paginas 1ºe2ºcaso:Sãoerrosdeprogramação,causadoquandoumprogramatentautilizarumendereçoparaoqualnãosesupõeexistirummapeamentoválidooutentaexecutarumaoperaçãoinválida. 3ºcaso:Ocorrequandoháumatentativadeescritaemumapáginadesomenteleitura. 4ºcaso:Ocorrequandoumthreadcolocaumvalornapilhaereferenciaumapáginaqueaindanãofoialocada. 5ºcaso:Tem-seumafaltadepáginanormal,ouseja,apáginareferenciadaestácomprometidamasnãoestámapeada.
  • 60.
    60 Tratamento deFalta de Paginas Quandoogerenciadordememóriaconseguesatisfazerumafaltadepáginasemanecessidadedelê-lanodisco, afaltaéclassificadacomofaltaaparente.Sefornecessáriaaleituranodiscoentãoéumafaltaestrita. Faltasaparentessãomuitomaisbaratasecausammenosimpactonodesempenhodaaplicação. Quandoumapáginafísicanãoestámaismapeadapelatabeladepáginasdenenhumprocesso,elaécolocadaemumalistalivre,modificadaouemespera
  • 61.
    61 Tratamento deFalta de Paginas Páginasquenuncamaisserãonecessáriassãoautomaticamenteliberadas. Páginasquepodemcausarnovasfaltasvãoparaalistademodificadasouparaalistadeespera. Aspáginasnalistademodificadasserãoescritasnodiscoeentãomovidasparaalistadeespera.
  • 62.
    62 O Algoritmode substituição de paginas Quandoapoucapáginadememóriafísicalivre,éremovidopelogerenciadordememória,páginasdosprocessosnomodousuárioemodonúcleo,comoobjetivodemanteraspáginasvirtuaismaisimportantesnamemóriaeasoutrasnodisco. Aspáginasmaisimportantessãodefinidaspelousoacentuadodoconjuntodetrabalho.Oconjuntodetrabalhoconsistenaspáginasmapeadasqueestãonamemóriaequepodemserreferenciadassemumafaltadepágina. Cadaconjuntodetrabalhopossuidoisparâmetros: -tamanhomínimoetamanhomáximodepáginasnamemória
  • 63.
    63 O Algoritmode substituição de paginas Existem três níveis de atividade para o gerenciador do conjunto de trabalho: Muitamemóriadisponível:Varreaspáginasreinicializandoosbitsdeacessoeutilizandoseusvalorespararepresentaraidadedecadapágina. Amemóriaestádiminuindo:Paradeadicionarpáginasaoconjuntodetrabalhoecomeçaasubstituiraspáginasmaisantigas. Amemóriaestábaixa:Removeaspáginasmaisantigas,diminuindoosconjuntosdetrabalhoparaqueelesfiquemabaixodovalormínimo. Alémdalistadelivres,deesperaealistademodificadas,existealistadepáginaslivresqueforamzeradaselistaquearmazenaaspáginasqueforamidentificadascomocontendoerrosdehardware.
  • 64.
    64 Gerenciador dememoria física Osistemafrequentementeprecisadepaginasquesomentecontenhamzeros.Quandonovaspaginassãoentreguesaosprocessos,ouquandoaultimapaginaparcialnofinaldeumarquivoélida,umapaginazeradaénecessária. Muitotempoégastonaescritadeumapaginacomzeros,portantoémelhorutilizarumathreaddebaixaprioridadeecriarpaginaszeradasnosegundoplano. Páginassãoreferenciadasporumaentradaválidadeumatabeladepáginasouestãoporumadascincolistascitadas. Entradaspossuemtamanhofixo,masdiferentesformatossãoutilizadosparatiposdeentradadistintos. Entradasválidasmantêmoestadodapáginaeumcontadorqueinformaquantastabelasdepáginasapontamparaapágina.
  • 65.
    65 Gerenciador dememoria física Aspáginasdeumconjuntodetrabalhoinformamquaisentradasasreferenciam. Amovimentaçãodaspáginaspelosconjuntosdetrabalhoeasdiferenteslistaséfeitapelogerenciadordeconjuntosdetrabalhoeoutrosthreadsdosistema. Ogerenciamentodememóriaéumsubsistemaquetentaserauto-ajustávelaomáximo,mashátambémparâmetrosqueosadministradorespodemajustarparaatuarnodesempenhodosistema.
  • 66.
  • 67.
    67 Cachingno WindowsVista AcachedoWindowsaumentaodesempenhodesistemasdearquivosmantendonamemóriaasregiõesrecenteefrequentementeutilizadasdosarquivos. Regiõesdearquivosarmazenadasemcachesãochamadasdevisões(views). Ogerenciamentorealdamemóriafísicanacacheéfeitopelogerenciadordememória. Ogerenciadordecacheadministraousodosendereçosvirtuaisdonúcleoparavisões,organizaparaqueogerenciadordememóriamantenhaaspáginasdacachenamemóriafísicaeofereceinterfacesparaosistemadearquivos. OsrecursosdogerenciadordecachenoWindowssãocompartilhadoscomtodosossistemasdearquivos.
  • 68.
    68 Cachingno WindowsVista Cachingvirtualéconvenienteporqueossistemasdearquivosnãoprecisamprimeirotraduziraspartesdoarquivoemnúmerosdeblocosfísicos,atraduçãoéfeitaquandoogerenciadordememóriachamaosistemadearquivosparaacessarapáginanodisco.
  • 69.
    69 Cachingno WindowsVista OWindowsVistaintroduziuumaformacompletamentenovadecachingnosistema, denominadaReadyBoost.OsusuáriospodemconectarumamemoriaflashaUSBouaoutrasportaseconseguirqueosistemaoperacionalutilizeessamemoriacomoumacachedosistema.
  • 70.
    70 Entrada eSaída no Windows Vista OsobjetivosdogerenciadordeE/SdoWindowssãofornecerumaestruturafundamentalextensíveleflexívelparalidar,demodoeficiente,comumagrandevariedadededispositivoseserviçosdeE/S,suportaradescobertaautomáticadeperiféricos(plug-and-play)efazerainstalaçãodeseusdriverserealizarogerenciamentodeenergiadosdispositivosedaCPU.
  • 71.
    71 Conceitos fundamentais OgerenciadordeE/SéligadointimamentecomogerenciadorderecursosPlug-and-play. NoWindows,todosossistemasdearquivos,filtrosanti-vírus,gerenciadoresdevolume,pilhasdeprotocoloderedeeatéserviçosdonúcleoquenãotemhardwareassociadosãoimplementadosusando-sedriversdeE/S. UmacaracterísticainteressantedoWindowséosuporteadiscosdinâmicos,quepodemcobrirváriaspartiçõeseatemesmováriosdiscospodendoserconfiguradosemtemporeal,semnemmesmoterdereinicializar. DasuporteàE/Sassíncrona.ÉpossívelqueumthreadcomeceumaoperaçãodeE/SeentãocontinuesendoexecutadoemparalelocomaoperaçãodeE/S.
  • 72.
    72 Chamadas APIde entrada e saída AschamadasAPIdesistemafornecidaspelogerenciadordeE/Snãosãomuitodiferentesdasoferecidaspelasmaioriadossistemasoperacionais.Asoperaçõesbásicassãoopen,read,write,ioctleclose,mastambémháoutrosrecursosprontosparausarasoperaçõesdeenergia,operaçõesparaconfiguraçãodeparâmetro, descargadebuffersdosistemaetc.
  • 73.
    73 Chamadas APIde entrada e saída
  • 74.
    74 Implementação deE/S OsistemaeE/SdoWindowsconsistedeserviçosplug- and-play,ogerenciadordeenergia,ogerenciadordeE/Seomodelodedriverdedispositivo. Driversdedispositivos: ParagarantirqueosdriversdedispositivosfuncionembemcomorestodoWindows,aMicrosoftdefiniuoWDM(modelodedriversdoWindows),aoqual,foiprojetadoparafuncionarcomasdiferenteversõesdoWindows,permitindoquedriversescritoscomcautelafossemcompatíveiscomossistemas
  • 75.
    75 Drivers dedispositivos UmdrivernoWindowsVistaécapazdefazertodootrabalhosozinho.Poroutrolado,osdriverspodemserempilhados,oquesignificaqueumarequisiçãopodepassarporumasequenciadedrivers,cadaumfazendoumapartedotrabalho.
  • 76.
    76 Drivers dedispositivos OsDriversdedispositivosdomodonúcleosãoumproblemagraveparaaestabilidadeeconfiabilidadedoWindows,poisamaiorpartedasfalhasdonúcleonoWindowssedeveaoserrosdosdriversdedispositivos. Comoosdriversdedispositivosdomodonúcleodividemomesmoespaçodeendereçamentocomascamadasdonúcleoeexecutiva,errosnosdriverspodemcorromperasestruturasdedadosdosistema.
  • 77.
    77 Gerenciador deenergia OGerenciadordeenergiacontrolaautilizaçãodeenergiaemtodoosistema. Historicamente,ogerenciamentodeconsumodeenergiaconsistiaemdesligarateladomonitorepararogirodasunidadesdedisco. Recursosdegerencialmentedeenergiamaisnovosincluemareduçãodeconsumodeenergiadoscomponentesquandoosistemanãoestaemuso.
  • 78.
    78 Gerenciador deenergia OWindowsdasuporteaumamodoespecialdedesligamentochamadohibernação,quecopiatodaamemoriafísicaparaodiscoe,então,reduzoconsumodeenergiaaumaminúsculofluxo. Umaalternativaahibernaçãoéummodochamadomododeespera,noqualogerenciadordeenergiareduzosistemainteiroparaomenorestadodeenergiapossível.
  • 79.
    79 O sistemade arquivos NT do Windows OWindowsVistadásuporteaváriossistemasdearquivos(FAT- 16,FAT-32,NTFS) FAT-16éusandonoantigosistemadearquivosdoMS-DOS, queusaendereçosdediscode16bits,oqueolimitaapartiçãodediscoa2GB. OFAT-32usaendereçosde32bitsesuportapartiçõesdediscodeate2TB.NãohásegurançanoFAT-32,ehojeelesóéusadoemmídiasportáteis. ONTFS(sistemadearquivosdoNT)usaendereçosdediscode64bitsepodesuportapartiçõesdediscodeate2^64byts.
  • 80.
    80 Sistema deArquivo NTFS NomesdearquivosindividuaisnoNTFSsãolimitadosa255caracteres Caminhoscompletossãolimitadosem32.767caracteres. NomesdearquivosemUnicode(qualquerlíngua) ONTFSécasesensitive. AAPIdoWin32nãodasuportecompletoparanomesdearquivosenuncaparaosnomesdediretórios. ONTFSéumsistemadearquivoshierárquico,similaraosistemadearquivosdoUNIX.OSeparadorentrenomesdecomponentesé“”,emdezde“/”,quefoiherdadodoMS-DOS. SuporteaLinksSimbólicossurgiunoWindowsVista
  • 81.
    81 Sistema deArquivo NTFS ONTFSdefine13atributos.Cadacabeçalhoidentificaoatributoeinformaotamanhoealocalizaçãodocampodevalor.
  • 82.
    82 Compressão dearquivos ONTFSsuportaacompressãotransparentedearquivos. Umarquivopodesercriadoemmodocomprimido,oquesignificaqueoNTFStentacomprimirautomaticamenteosblocoquandoelessãoescritosedescomprimi-losautomaticamentequandosãolidos
  • 83.
    83 Criptografia dearquivos Oscomputadoressãousados,atualmente,paraarmazenartodotipodedadossensíveis,entreosquaisplanosdeincorporações,informaçãosobretributosecartasdeamor, enfim,informaçõescujosdonosnãoasqueremverreveladasaqualquerum. OWindowsresolveessesproblemasdisponibilizandoumaopçãoparacriptografasarquivos,dessemodo,mesmoqueocomputadorsejaroubado,osarquivosserãoilegíveis. OsprocessosdecriptografasedecriptaremsinãosãofeitospeloNTFS,masporumdriverchamadoEFS(sistemadecriptografiadearquivos).
  • 84.
    84 Segurança noWindows Vista Orginalmente,oNTfoiprojetadoparacumprirasdeterminaçõesdesegurançaC2doDepartamentodeDefesadosEstadosUnidos.Essepadrãoexigequeossistemasoperacionaistenhacertaspropriedadesparaseremclassificadoscomosegurososuficienteparacertostiposdeatividadesmilitares.
  • 85.
    85 Segurança noWindows Vista EmboraoWindowsVistanãotenhasidoespecificamenteprojetadoparacumprimentodasdeterminaçõesC2,eleherdavariasdaspropriedadesdesegurançadoNT.Entreelas,estão: Autenticaçãoseguracommedidascontratrapaças Controlesdeacessodiscricionário Controledeacessoprivilegiado
  • 86.
    86 Segurança noWindows Vista Acessoseguroaosistemasignificaqueoadministradordosistemapodeexigirquetodososusuáriostenhamumasenhaparaseconectarem OsControlesdeacessosdiscricionáriopermitemaodonodeumarquivooudeoutroobjetodizerquempodeusa-loedequemodo. Oscontrolesdeacessosprivilegiadospermitemqueoadministradordosistemaignoreoscontrolesdeacessosdiscricionáriosquandonecessários
  • 87.
    87 Conceitos Fundamentais Todousuário(egrupodeusuário)doWindowsVistaéidentificadoporumSID(identificadordesegurança). OsSIDssãonúmerosbinárioscomumpequenocabeçalhoseguidoporumcomponentelongoealeatório.AintençãoéquecadaSIDsejaúnicoemtodoomundo. CadaprocessotemumafichadeacessoqueespecificaumSIDeoutraspropriedades.Essafichaéatribuídanomomentodeacessoaosistema.
  • 88.
    88 Estrutura deuma ficha de acesso Cabeçalho:Contemalgumasinformaçõesadministrativas. Validade:Indicaquandoaficadeixadeservalida. Grupo:Especificamosgruposaosquaisoprocessopertence. CACLinicial:éalistadecontroledeacessoatribuídaaosabjetoscriadospeloprocesso. SIDdousuário:Indicaquempossuioprocesso. SIDsrestritos:Permitirqueprocessosnãoconfiáveisparticipemdetrabalhos. Privilégios:Dãoaoprocessopoderesespeciais,comoodireitodedesligaramaquinaoudeacessararquivos. Níveldepersonificação:Éutilizadoparacomunicaçãoentreclienteseservidores.
  • 89.
    89 Chamadas APIde segurança AmaioriadosmecanismosdecontroledeacessodoWindowsVistaébaseadaemdescritoresdesegurança. Opadrãousualéque,quandoumprocessocriaumobjeto,eleforneceumdescritordesegurança.Essedescritordesegurançatorna-se,então,odescritordesegurançaassociadoaoobjeto.Senenhumdescritordesegurançaforfornecidonachamadadecriaçãodoobjeto,seráusadoaconfiguraçãopadrãodesegurança.
  • 90.
    90 Chamadas APIde segurança Paracriarumdescritordesegurança,primeirodeveseralocadasuamemoriaeentãoeentãoexecutarumasequenciadefunçõesdaAPIdoWin32
  • 91.
    91 UAC(Controle deconta do usuário) CriadoparatrataroproblemacrônicodoWindowsemquemuitosusuáriosseconectamcomoadministradores. Seradministradorotempotodoéalgoperigosonãosomenteporqueoserrosdousuáriopodemdanificarosistema,mastambémporque,seousuárioforenganadoouatacadoeexecutarcódigoqueestejatentandocomprometerosistema,ocódigoteráacessoadministrativoepodeenterrar-sebemfundonosistema.
  • 92.
    92 UAC(Controle deconta do usuário) ComaUAC,seocorreumatentativadeexecuçãodeumaoperaçãoquedemandapermissõesdeadministrador,osistemacriaumdesktopespecialeassumeocontroleparaquesomenteentradasdousuáriopossamautorizaroacesso. Algunsataquesconseguemdestruirosdadosdousuário. Entretanto,oUACrealmenteajudaaimpedircertostiposdeataques
  • 93.
  • 94.
  • 95.