HB.ti Concursos

Embed Size (px)

Citation preview

http://www.candidatoreal.com

http://www.candidatoreal.com

Sumrio aI Fundamentos de Computao ca. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1617 17 18 20 22 24 25 26 28 29 29 30 30 31 33 34 34 36 37 37 38 38 39 39 39 39 39 40 41 41 42 43

1 Arquitetura e Organizao de Computadores ca 1.1 Conceitos Bsicos . . . . . . . . . . . . . . . . . a 1.2 Estrutura e Funcionamento da CPU . . . . . . 1.2.1 Pipelines . . . . . . . . . . . . . . . . . 1.3 Conjunto de Instrues . . . . . . . . . . . . . . co 1.4 Unidade de Controle . . . . . . . . . . . . . . . 1.5 Modos de Endereamento . . . . . . . . . . . . c 1.6 Organizao de Memria . . . . . . . . . . . . . ca o 1.7 Desempenho do computador . . . . . . . . . . . 1.7.1 Tempo de execuo de um programa . . ca 1.7.2 Desempenho da CPU . . . . . . . . . . 1.7.3 Programas para medir desempenho . . . 1.7.4 Comparando desempenho . . . . . . . . 1.7.5 Lei de Amdahl . . . . . . . . . . . . . . 2 Componentes de um Computador 2.1 Principais componentes de Hardware 2.1.1 Discos R gidos . . . . . . . . 2.1.2 Teclado . . . . . . . . . . . . 2.1.3 Mouse . . . . . . . . . . . . . 2.1.4 Placa de rede . . . . . . . . . 2.1.5 Impressora . . . . . . . . . . 2.1.6 Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

http://www.candidatoreal.com

3 Aritmtica Computacional e 3.1 Nmeros Com Sinal e Nmeros Sem Sinal . . . u u 3.1.1 Sinal e amplitude/magnitude . . . . . . 3.1.2 Complemento de 1 . . . . . . . . . . . . 3.1.3 Complemento de 2 . . . . . . . . . . . . 3.1.4 Notao em excesso . . . . . . . . . . . ca 3.2 Adio e Subtrao . . . . . . . . . . . . . . . . ca ca 3.3 Operaes Lgicas . . . . . . . . . . . . . . . . co o 3.4 Construo de uma Unidade Lgica Aritmtica ca o e 3.5 Ponto Flutuante . . . . . . . . . . . . . . . . .

1

http://www.candidatoreal.com

4 Sistemas Operacionais 4.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . ca 4.2 Conceitos Bsicos . . . . . . . . . . . . . . . . . . . a 4.2.1 Multiprogramao . . . . . . . . . . . . . . ca 4.2.2 Processo . . . . . . . . . . . . . . . . . . . . 4.2.3 Interrupes . . . . . . . . . . . . . . . . . . co 4.2.4 Threads . . . . . . . . . . . . . . . . . . . . 4.3 Escalonamento de Processos . . . . . . . . . . . . . 4.4 Entrada e Sa . . . . . . . . . . . . . . . . . . . . da 4.4.1 Camadas do subsistema de Entrada e Sa da 4.5 Gerncia de Memria . . . . . . . . . . . . . . . . . e o 4.6 Sistemas de Arquivos . . . . . . . . . . . . . . . . . 4.6.1 Conceitos bsicos sobre arquivos . . . . . . a 4.6.2 Implementaao de arquivos . . . . . . . . . c 4.6.3 Cache de Sistema de Arquivos . . . . . . . 4.6.4 Gerenciamento do espao livre . . . . . . . c 4.6.5 Diretrios . . . . . . . . . . . . . . . . . . . o 4.6.6 Implementaao de diretrios . . . . . . . . . c o 4.7 Sistemas Operacionais Distribu dos . . . . . . . . . 4.7.1 Estruturao de Sistemas Distribu ca dos . . . 5 Principais Processadores de 5.1 Processadores Intel . . . . 5.1.1 Fam Pentium . lia 5.1.2 Fam Celeron . . lia 5.1.3 Fam Core . . . lia 5.1.4 Xeon . . . . . . . . 5.1.5 Itanium . . . . . . 5.2 AMD . . . . . . . . . . . 5.2.1 Sempron . . . . . . 5.2.2 Athlon 64 . . . . . 5.2.3 Turion 64 . . . . . 5.2.4 Opteron . . . . . . Mercado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

44 44 46 46 46 47 48 49 50 51 52 54 54 56 57 58 59 61 61 63 65 65 65 68 69 71 74 75 75 76 79 81

II

Lgica de Programao o ca. . . . . . . . . . . . . . . . . . . . . . . . orientada a objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8384 84 84 90 90

http://www.candidatoreal.com

6 Orientao a Objetos ca 6.1 Introduo . . . . . . . . . ca 6.2 Conceitos fundamentais . 6.3 Princ pios de programao ca 6.4 Tratamento de exceoes . c

III

Metodologia de Desenvolvimento

92

7 Ciclo de Vida 93 7.1 Modelo seqencial linear . . . . . . . . . . . . . . . . . . . . . . . 95 u 7.2 Modelo em V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 7.3 Modelo de prototipagem . . . . . . . . . . . . . . . . . . . . . . . 96

2

http://www.candidatoreal.com

7.4 7.5

7.6 7.7 7.8

Modelo RAD . . . . . . . . . . . . . . . . . . . Modelos de processo de software evolucionrios a 7.5.1 Modelo incremental . . . . . . . . . . . 7.5.2 Modelo espiral . . . . . . . . . . . . . . 7.5.3 Modelo espiral ganha-ganha . . . . . . . 7.5.4 Modelo de desenvolvimento concorrente Desenvolvimento baseado em componentes . . . Modelo de mtodos formais . . . . . . . . . . . e Tcnicas de quarta gerao . . . . . . . . . . . e ca

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

96 97 97 98 99 100 100 100 100 102 102 105 105 106 106 107 107 109 109 110 110 110 111 111 111 111 112 112 112 112 113 114 114 116 118 118 119 119 120 120 122 122 123 123 124 124 125

8 Anlise Comparativa de Processos de Desenvolvimento a 8.1 RUP - Rational Unied Process . . . . . . . . . . . . . . . 8.2 XP - Extreme Programming . . . . . . . . . . . . . . . . . 8.3 Scrum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4 Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.5 Feature Driven Development (FDD) . . . . . . . . . . . . 8.6 Dynamic Systems Development Method (DSDM) . . . . 8.7 Adaptive Software Development (ASD) . . . . . . . . . . 9 Engenharia de Requisitos 9.1 O Processo de Engenharia de Requisitos 9.2 Tcnicas de Levantamento de Requisitos e 9.2.1 Observao . . . . . . . . . . . . ca 9.2.2 Entrevista . . . . . . . . . . . . . 9.2.3 Anlise de Protocolo . . . . . . . a 9.2.4 JAD . . . . . . . . . . . . . . . . 9.2.5 PD . . . . . . . . . . . . . . . . . 9.2.6 QFD . . . . . . . . . . . . . . . . 9.2.7 CRC . . . . . . . . . . . . . . . . 9.2.8 Prototipao . . . . . . . . . . . ca 9.2.9 Cenrios . . . . . . . . . . . . . . a 9.2.10 FAST . . . . . . . . . . . . . . . 9.3 Anlise de Requisitos . . . . . . . . . . . a 9.3.1 Mtodos de anlise . . . . . . . . e a 9.3.2 Modelagem da anlise . . . . . . a 9.4 Gerenciamento de Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

http://www.candidatoreal.com

10 Mtricas e 10.1 Mtricas de processo e aperfeioamento de processo e c 10.2 Mtricas de projeto . . . . . . . . . . . . . . . . . . e 10.3 Medio de software . . . . . . . . . . . . . . . . . ca 10.3.1 Mtricas orientadas a tamanho . . . . . . . e 10.3.2 Mtricas orientadas a funo . . . . . . . . e ca 10.3.3 Mtricas de pontos por funao estendidas . e c 10.4 Mtricas de qualidade de software . . . . . . . . . e 10.4.1 Fatores de qualidade de McCall . . . . . . . 10.4.2 FURPS . . . . . . . . . . . . . . . . . . . . 10.4.3 ISO 9126 . . . . . . . . . . . . . . . . . . . 10.5 Estimativas . . . . . . . . . . . . . . . . . . . . . . 10.5.1 COCOMO (Constructive Cost Model) . . .

de . . . . . . . . . . . . . . . . . . . . . .

software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3

http://www.candidatoreal.com

11 Testes 11.1 Teste de caminho bsico . . . . . . . . . . . . . . . . . . . . a 11.2 Teste de estrutura de controle . . . . . . . . . . . . . . . . . 11.2.1 Teste de condio . . . . . . . . . . . . . . . . . . . . ca 11.2.2 Teste de uxo de dados . . . . . . . . . . . . . . . . 11.2.3 Teste de ciclo . . . . . . . . . . . . . . . . . . . . . . 11.3 Teste caixa-preta . . . . . . . . . . . . . . . . . . . . . . . . 11.3.1 Mtodos de teste baseados em grafo . . . . . . . . . e 11.3.2 Particionamento de equivalncia . . . . . . . . . . . e 11.3.3 Anlise de valor limite . . . . . . . . . . . . . . . . . a 11.3.4 Teste de comparao . . . . . . . . . . . . . . . . . . ca 11.3.5 Teste de matriz ortogonal . . . . . . . . . . . . . . . 11.4 Teste de ambientes, arquiteturas e aplicaes especializadas co 11.5 Estratgia de teste de software . . . . . . . . . . . . . . . . e 12 UML 12.1 Diagrama de caso de uso . . . . . 12.1.1 Ator . . . . . . . . . . . . 12.1.2 Descrio do caso de uso . ca 12.2 Diagrama de classe . . . . . . . . 12.2.1 Associaes de classe . . . co 12.3 Diagramas de seqncia . . . . . ue 12.4 Diagramas de colaborao . . . . ca 12.5 Diagramas de estado . . . . . . . 12.6 Diagramas de atividade . . . . . 12.7 Elementos auxiliares . . . . . . . 12.8 Diagramas de componente . . . . 12.9 Diagramas de distribuio . . . . ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . .

127 127 129 129 130 130 131 131 131 132 132 132 133 134 136 136 136 137 137 138 140 140 141 143 144 144 144 145 146 147 147 149 150 150 150 151 152 152 152 153

13 Gerncia de Congurao e Mudanas e ca c 13.1 As Atividades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.2 Artefatos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.3 Papis e Responsabilidades . . . . . . . . . . . . . . . . . . . . . e 14 CMM - Capability Maturity Model 14.1 Os n veis de maturidade no CMM . . . . . 14.1.1 N 1 - Inicial . . . . . . . . . . . . vel 14.1.2 N 2 - Repetitivo . . . . . . . . . vel 14.1.3 N 3 - Denido . . . . . . . . . . . vel 14.1.4 N 4 - Gerenciado . . . . . . . . . vel 14.1.5 N 5 - Otimizado . . . . . . . . . vel 14.2 Um pouco mais sobre KPAs . . . . . . . . 14.3 Efeitos da evoluo do n de maturidade ca vel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

http://www.candidatoreal.com

IV

Linguagem de Programao Java ca

155

15 Conceitos Bsicos de Java a 156 15.1 Pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 15.2 Modicadores de Acesso . . . . . . . . . . . . . . . . . . . . . . . 157

4

http://www.candidatoreal.com

15.3 Variveis . . . . . . . . . . . . . . a 15.4 Operadores . . . . . . . . . . . . 15.5 Expresses, Sentenas e Blocos . o c 15.6 Comandos de Controle de Fluxo 15.7 Classes Aninhadas . . . . . . . . 15.8 Tipos Enumerados . . . . . . . . 15.9 Anotaes . . . . . . . . . . . . . co 15.10Genricos . . . . . . . . . . . . . e 15.11Reexo . . . . . . . . . . . . . . a

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

157 158 160 161 166 167 168 169 171 173 173 173 175 176 176 177 178 178 179 180 181 181 183 185 185 188 189 190 193 195 197 199 199 200 200 201 203 203 204 205 207 208 209 209 211 212

16 Classes Essenciais 16.1 Exception e Controle de Excees . . . . . co 16.1.1 Excees t co picas . . . . . . . . . . 16.1.2 Capturando Excees . . . . . . . co 16.2 Threads e Concorrncia . . . . . . . . . . e 16.2.1 Denindo e Iniciando uma Thread 16.2.2 Pausando a execuo com sleep . . ca 16.2.3 Interrupes . . . . . . . . . . . . . co 16.2.4 Joins . . . . . . . . . . . . . . . . . 16.2.5 Sincronizao . . . . . . . . . . . . ca 16.2.6 Executores e Thread Pools . . . . 16.3 Streams e Serializao . . . . . . . . . . . ca 16.3.1 I/O Streams . . . . . . . . . . . . 16.3.2 Serializao - Streams de Objetos . ca 16.4 Classes e Operaes de I/O . . . . . . . . co 16.5 Classes para manipulao de propriedades ca 17 Colees co 17.1 Interface 17.2 Interface 17.3 Interface 17.4 Interface 17.5 Interface Collection Set . . . . List . . . Map . . . Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

http://www.candidatoreal.com

18 JDBC - Java Database Connectivity 18.1 Conceitos Bsicos . . . . . . . . . . . a 18.2 Carregamento de drivers . . . . . . . 18.3 Conexo . . . . . . . . . . . . . . . . a 18.4 Statements . . . . . . . . . . . . . . 18.5 Prepared Statements . . . . . . . . . 18.6 Transao . . . . . . . . . . . . . . . ca 18.7 Informaes Complementares . . . . co 18.8 Exemplo Extra . . . . . . . . . . . . 19 A plataforma J2EE 19.1 Containers J2EE . . . . . . . . . . . 19.2 Clientes J2EE . . . . . . . . . . . . . 19.3 Um pouco mais sobre Servlets . . . . 19.3.1 Ciclo de Vida dos Servlets . . 19.3.2 Mantendo o estado do cliente

5

http://www.candidatoreal.com

19.4 Um pouco mais sobre pginas JSP a 19.4.1 JSP vs. Servlets . . . . . . 19.5 Um pouco mais sobre EJBs . . . . 19.5.1 Ciclo de Vida dos EJBs . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

213 215 216 217

V

Desenvolvimento Web

220

20 Usabilidade 221 20.1 Denio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 ca 20.2 Princ pios da usabilidade . . . . . . . . . . . . . . . . . . . . . . . 222 20.3 Tcnicas de avaliao de usabilidade . . . . . . . . . . . . . . . . 223 e ca 21 Acessibilidade 21.1 Denio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 21.2 Princ pios da acessibilidade . . . . . . . . . . . . . . . . . . . . . 21.3 Tcnicas de avaliao de acessibilidade . . . . . . . . . . . . . . . e ca 22 Padres Web W3C o 23 XML 23.1 O que XML? . . . . . . . . . . . e 23.2 Caracter sticas do XML . . . . . . 23.3 Comparao entre XML e HTML . ca 23.4 Sintaxe bsica do XML . . . . . . a 23.5 Conjunto de tags . . . . . . . . . . 23.6 NameSpaces . . . . . . . . . . . . . 23.7 Gramtica de um documento XML a 23.8 Tecnologias XML . . . . . . . . . . 23.9 Benef cios da linguagem XML . . . 23.10Ferramentas de desenvolvimento . 24 XSLT 24.1 O que uma folha de estilo? . . e 24.2 Comparao entre o CSS e XSL . ca 24.3 O que o XSL? . . . . . . . . . . e 24.4 O que o XSLT? . . . . . . . . . e 24.5 Caracter sticas do XSLT . . . . . 24.6 Declarando um documento XSL . 24.7 Elemento . . . . 24.8 Elemento . . . . . 24.9 Elemento . . . . . 24.10Elemento . . . . . . . 24.11Elemento . . . . . . . . 24.12Elemento . . . . . 24.13Elemento 24.14XSL no lado Cliente . . . . . . . 24.15XSL no lado Servidor . . . . . . 24.16Processadores XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 224 224 227 229 233 233 234 234 234 236 238 239 244 245 246 247 247 247 248 248 249 249 250 251 252 252 252 253 253 254 254 255

http://www.candidatoreal.com

. . . . . . . . . . . . . . . .

6

http://www.candidatoreal.com

25 Gerenciador de Conte do Web Zone/Plone u 25.1 Gesto de Contedo . . . . . . . . . . . . . . a u 25.2 Sistema de Gesto de Contedo . . . . . . . . a u 25.3 Zope . . . . . . . . . . . . . . . . . . . . . . . 25.4 Plone . . . . . . . . . . . . . . . . . . . . . . 26 Web Services 26.1 O que Web Services? e 26.2 SOAP . . . . . . . . . 26.3 WSDL . . . . . . . . . 26.4 UDDI . . . . . . . . . 26.5 Segurana . . . . . . . c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

256 256 257 258 260 263 263 266 267 269 269

VI

Redes de Comunicao ca. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Zero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

270271 271 272 272 273 273 274 274 275 275 275 276 276 277 279 280 281 281 281 282 283 284

27 Tcnicas Bsicas de Comunicao e a ca 27.1 Base Terica da Comunicao de Dados . . . . . . . . . o ca 27.2 Taxa Mxima de Dados em um Canal . . . . . . . . . . a 27.3 Sinais Digitais Binrios . . . . . . . . . . . . . . . . . . a 27.4 Transmisso em Banda Base . . . . . . . . . . . . . . . . a 27.5 Classicao dos Sinais . . . . . . . . . . . . . . . . . . . ca 27.6 Tcnicas de Codicao de Linha . . . . . . . . . . . . . e ca 27.6.1 Codicao NRZ . . . . . . . . . . . . . . . . . . ca 27.6.2 Codicao RZ . . . . . . . . . . . . . . . . . . . ca 27.6.3 Codicao AMI (Alternate Mark Invertion) . . ca 27.6.4 Codicao HDB-3 (High Density Bipolar with ca Maximum Tolerance) . . . . . . . . . . . . . . . 27.6.5 Codicao Manchester . . . . . . . . . . . . . . ca 27.7 Modulao . . . . . . . . . . . . . . . . . . . . . . . . . ca 27.7.1 Modulao de Onda Cont ca nua . . . . . . . . . . . 27.7.2 Modulao de Pulsos . . . . . . . . . . . . . . . . ca 27.8 Tcnicas de Multiplexao . . . . . . . . . . . . . . . . . e ca 27.8.1 FDM - Frequency Division Multiplexing . . . . . 27.8.2 TDM - Time Division Multiplexing . . . . . . . . 27.8.3 OFDM . . . . . . . . . . . . . . . . . . . . . . . 27.8.4 WDM -Wavelength Division Multiplexing . . . . 27.9 Protocolos de Acesso Mltiplo . . . . . . . . . . . . . . . u

http://www.candidatoreal.com

28 Topologias de Redes

29 Arquitetura de Redes 286 29.1 Organizao em Camadas . . . . . . . . . . . . . . . . . . . . . . 286 ca 30 Protocolos de Rede 30.1 ARP - Address Resolution Protocol . . . . . . 30.2 DHCP - Dynamic Host Conguration Protocol 30.3 DNS - Domain Name System . . . . . . . . . . 30.4 TCP - Transmission Control Protocol . . . . . 30.5 UDP - User Datagram Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 287 287 289 291 293

7

http://www.candidatoreal.com

30.6 HTTP - Hyper Text Transfer Protocol . . . . . 30.7 SMTP - Simple Mail Transfer Protocol . . . . . 30.8 POP3 - Post Oce Protocol Version 3 . . . . . 30.9 IMAP - Internet Mail Access Protocol . . . . . 30.10LDAP - LightWeight Directory Access Protocol 30.11SNMP - Simple Network Management Protocol 30.12FTP - File Transfer Protocol . . . . . . . . . . 30.13IP - Internet Protocol . . . . . . . . . . . . . . 30.14TELNET - TELetype NETwork . . . . . . . . 31 O Modelo de Referncia OSI e 32 Roteamento 32.1 Link State e Distance Vector . . . . . . . . . . 32.1.1 Vetor de Distncias vs. Estado do Link a 32.2 Protocolos de Roteamento . . . . . . . . . . . . 32.2.1 RIP - Routing Information Protocol . . 32.2.2 OSPF - Open Shortest Path First . . . 32.2.3 IGRP e EIGRP . . . . . . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

294 299 301 303 305 305 306 310 311 314

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

316 317 319 320 320 320 321 322 322 323 324 326 326 326 327 328 328 329 329 333 334 335 336

33 Redes Ethernet 33.1 Protocolo CSMA/CD . . . . . . . . . . . . . . . . . . . . . . . . 33.2 Fast Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33.3 Gigabit Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Cabeamento Estruturado 34.1 Par Tranado . . . . . . . . . . . . . . . . . . . . . c 34.1.1 Interferncias nos Cabos de Par Tranado . e c 34.2 Categorias 5e . . . . . . . . . . . . . . . . . . . . . 34.3 Categoria 6 . . . . . . . . . . . . . . . . . . . . . . 34.4 Categoria 5e vs. Categoria 6 . . . . . . . . . . . . 34.5 Cabeao Estruturada Norma EIA/TIA 568 . . . ca 34.5.1 Sistemas de Cabeamento Estruturado . . . 34.6 Desempenho do Hardware e Meios de Transmisso a 34.6.1 Cabeamento UTP . . . . . . . . . . . . . . 34.6.2 Fibra Optica . . . . . . . . . . . . . . . . . 34.7 Cdigo de Cores para Sistemas de Cabeo UTP . o ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

http://www.candidatoreal.com

35 Redes sem o 337 35.1 O padro IEEE 802.11 . . . . . . . . . . . . . . . . . . . . . . . . 337 a 35.1.1 CSMA/CA . . . . . . . . . . . . . . . . . . . . . . . . . . 338 35.1.2 Formato do Quadro 802.11 . . . . . . . . . . . . . . . . . 339 36 Elementos de Interconexo de Redes a 36.1 Repetidores . . . . . . . . . . . . . . 36.2 Hubs . . . . . . . . . . . . . . . . . . 36.3 Switches . . . . . . . . . . . . . . . . 36.4 Bridges . . . . . . . . . . . . . . . . 36.5 Roteadores . . . . . . . . . . . . . . 36.6 Gateways . . . . . . . . . . . . . . . de . . . . . . . . . . . . Computadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 340 340 341 342 342 343

8

http://www.candidatoreal.com

37 Redes Multim dia 37.1 Qualidade de Servio . . . . . . . . . . . . . . . . . . . . . . . . . c 37.2 Servios Integrados - IntServ . . . . . . . . . . . . . . . . . . . . c 37.3 Servios Diferenciados - DiServ . . . . . . . . . . . . . . . . . . c 38 Redes X.25 e Frame Relay 38.1 X.25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38.2 Frame Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38.2.1 Estrutura do Frame . . . . . . . . . . . . . . . . . . . . . 38.2.2 Envio de um datagrama IP de Ethernet para Frame Relay e Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . 38.3 Interligao de Redes LAN . . . . . . . . . . . . . . . . . . . . . ca 38.3.1 Voz sobre Frame Relay (VoFR) . . . . . . . . . . . . . . . 38.3.2 Interao entre Frame Relay e ATM . . . . . . . . . . . . ca 38.3.3 CIR (Taxa de Informao Comprometida) . . . . . . . . . ca

344 344 346 347 348 348 348 349 350 351 351 352 352

39 Redes Virtuais Locais 354 39.1 VLANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 39.1.1 Denio . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 ca 39.1.2 Protocolo 802.1q . . . . . . . . . . . . . . . . . . . . . . . 354 40 Redes de Circuito Virtuais 356 40.1 Redes ATM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 40.2 MPLS - Multiprotocol Label Switching . . . . . . . . . . . . . . . 358 41 Arquitetura TCP/IP 41.1 Viso geral . . . . . . . . . . . . . . . . . . . . a 41.2 Comparao entre a arquitetura OSI e TCP/IP ca 41.3 Camada F sica (host/rede) . . . . . . . . . . . 41.4 Camada de Inter-Rede . . . . . . . . . . . . . . 41.5 Camada de Transporte . . . . . . . . . . . . . . 41.6 Camada de Aplicao . . . . . . . . . . . . . . ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 360 360 361 361 362 362

42 Camada de Aplicao ca 364 42.1 Proxy Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364

VIIhttp://www.candidatoreal.com

Gerncia de Redes e

366

43 O protocolo SNMP 367 43.1 Management Information Base . . . . . . . . . . . . . . . . . . . 368

VIII

Segurana da Informao c ca. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

370371 371 372 372 373 373

44 Pol ticas de Segurana de Informao c ca 44.1 Pol ticas de Segurana . . . . . . . . . c 44.2 Projeto de Segurana . . . . . . . . . . c 44.3 Plano de Segurana . . . . . . . . . . . c 44.4 Normas de Segurana . . . . . . . . . c 44.4.1 ISO/IEC 17799 . . . . . . . . . 9

http://www.candidatoreal.com

44.4.2 Fam ISO 27000 . . . . . lia 44.4.3 Diferenas entre a ISO/IEC c 44.5 Procedimentos de Segurana . . . . c 44.6 Arquitetura de Segurana . . . . . c 44.7 Classicao de Informaes . . . . ca co

. . . . . . . . . . . . 17799 e a ISO 27001 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

375 376 376 377 377

45 Segurana F c sica e Lgica o 379 45.1 Segurana F c sica . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 45.2 Segurana Lgica . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 c o 45.2.1 Matrizes de acesso, listas de controle de acesso e capabilities379 45.2.2 Modelos de Controle de Acesso . . . . . . . . . . . . . . . 380 46 Backup de Dados 384 46.1 Meios de Armazenamento . . . . . . . . . . . . . . . . . . . . . . 384 47 V rus e Ataques 386 47.1 Estratgias de combate ` pragas eletrnicas . . . . . . . . . . . . 388 e a o 47.1.1 Antiv rus . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 48 Princ pios de Criptograa 48.1 Tipos de Criptograa . . . . . . . . . . 48.2 Algoritmos de Criptograa Simtricos . e 48.3 Algoritmos de Criptograa Assimtricos e 48.4 Tcnicas de Quebra de Criptograa . . . e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 391 392 393 394

49 Autenticao ca 49.1 Autenticao de Mensagens . . . . . . . . . . . . . ca 49.2 Protocolos de Autenticao . . . . . . . . . . . . . ca 49.2.1 Mtodos de Autenticao . . . . . . . . . . e ca 49.2.2 Autenticao baseada em uma chave secreta ca 49.3 Certicado Digital . . . . . . . . . . . . . . . . . . 50 Segurana em diversas camadas c 50.1 Secure Sockets Layer . . . . . . . . . . . 50.2 IPSec . . . . . . . . . . . . . . . . . . . 50.3 Virtual Private Network (VPN) . . . . . 50.4 Filtragem de Pacotes e Firewalls . . . . 50.4.1 Regras iptables - Exemplo 1 . . . 50.4.2 Regras iptables - Exemplo 2 . . . 50.4.3 Firewall Stateful . . . . . . . . . 50.4.4 Application Gateway . . . . . . . 50.4.5 Arquitetura de rewall e DMZ . 50.5 Sistemas de Deteco de Intruso (IDS) ca a 50.6 Segurana em Redes Wireless 802.11 . . c 50.6.1 WEP . . . . . . . . . . . . . . . 50.7 802.11i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

395 . . . . . . . . 395 . . . . . . . . 396 . . . . . . . . 396 compartilhada396 . . . . . . . . 397 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 399 400 401 403 405 405 406 407 407 409 409 409 410

http://www.candidatoreal.com

10

http://www.candidatoreal.com

IX

Alta Disponibilidade

411

51 Solues de Armazenamento RAID, SAN e NAS co 412 51.1 RAID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412 51.1.1 RAID 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412 51.1.2 RAID 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414 51.1.3 RAID 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 51.1.4 RAID 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416 51.1.5 RAID 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 51.1.6 RAID 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 51.1.7 RAID 6 (Redundncia de P+Q) . . . . . . . . . . . . . . 419 a 51.1.8 Tipos H bridos . . . . . . . . . . . . . . . . . . . . . . . . 419 51.1.9 Comparativo de Desempenho entre as diversas conguraes co RAID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 51.2 SAN - Storage Area Network . . . . . . . . . . . . . . . . . . . . 420 51.2.1 Hardware para SAN . . . . . . . . . . . . . . . . . . . . . 421 51.2.2 Topologias de SAN . . . . . . . . . . . . . . . . . . . . . . 422 51.3 NAS - Network Attached Stotage . . . . . . . . . . . . . . . . . . 423 51.4 Comparativo entre SAN e NAS . . . . . . . . . . . . . . . . . . . 424 52 Clusters de servidores 52.0.1 Princ pios de um Cluster . . . . 52.0.2 Abstraes em um Cluster . . . . co 52.0.3 Arquitetura de um Cluster . . . 52.0.4 Cluster X Sistemas Distribu dos 52.0.5 Cluster de Alta Disponibilidade . 52.0.6 Cluster de Alto Desempenho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 427 428 429 430 431 433 436 436 436 437 437 438 438 439 439

53 Balanceamento de Carga 53.1 Balanceamento de armazenamento (storage) . 53.2 Balanceamento de rede . . . . . . . . . . . . . 53.2.1 NAT . . . . . . . . . . . . . . . . . . . 53.2.2 IP Tunneling . . . . . . . . . . . . . . 53.2.3 Direct Routing . . . . . . . . . . . . . 53.3 Algoritmos de balanceamento . . . . . . . . . 53.4 Balanceamento de CPU . . . . . . . . . . . . 53.4.1 Sistema de processamento distribu do

http://www.candidatoreal.com

X

Sistemas Operacionais. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

442443 443 443 445 445 446 446 446 447

54 Ambiente Microsoft Windows 2000/2003 54.1 DHCP - Dynamic Host Conguration Protocol . . 54.1.1 Processo de Instalao/Congurao . . . . ca ca 54.1.2 Integrao do DHCP com o DNS . . . . . . ca 54.1.3 APIPA - Automatic Private IP Addressing 54.1.4 Comandos ipcong Relacionados ao DHCP 54.1.5 Regra 80/20 . . . . . . . . . . . . . . . . 54.2 DNS - Domain Name System . . . . . . . . . . . . 54.2.1 Processo de Instalao/Congurao . . . . ca ca

11

http://www.candidatoreal.com

54.2.2 54.2.3 54.2.4 54.2.5 54.2.6 54.2.7 54.3 Active 54.3.1 54.3.2

Segurana de Acesso . . . . . . . . . . . . . . . . . . . . . c Integrao do DNS com o Active Directory . . . . . . . . ca Servidor DNS somente Cache . . . . . . . . . . . . . . . . Arquivo Hosts . . . . . . . . . . . . . . . . . . . . . . . . Distribuio de Carga . . . . . . . . . . . . . . . . . . . . ca Comando ipcong/dnscmd Relacionadas ao DNS . . . . . Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . Tipos de Servidores . . . . . . . . . . . . . . . . . . . . . Denies de Floresta, Dom co nio, Site e Unidade Organizacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54.3.3 Recursos do Active Directory . . . . . . . . . . . . . . . . 54.3.4 Segurana com o Active Directory . . . . . . . . . . . . . c 54.3.5 Ferramentas de Controle . . . . . . . . . . . . . . . . . . . 54.4 IIS - Internet Information Services . . . . . . . . . . . . . . . . . 54.4.1 IIS versus Apache HTTP Server . . . . . . . . . . . . . . 54.4.2 Principais Componentes do IIS . . . . . . . . . . . . . . . 54.4.3 Principais Recursos do IIS . . . . . . . . . . . . . . . . . . 54.4.4 Principais Diferenas entre IIS4, IIS5 e IIS6 . . . . . . . . c 54.5 Terminal Services . . . . . . . . . . . . . . . . . . . . . . . . . . . 54.5.1 Principais Benef cios . . . . . . . . . . . . . . . . . . . . . 54.5.2 Protocolos de Comunicao . . . . . . . . . . . . . . . . . ca 54.5.3 Licenas . . . . . . . . . . . . . . . . . . . . . . . . . . . . c

449 449 451 451 451 451 452 453 453 454 455 456 456 456 459 460 461 461 462 463 464

XI

Banco de Dados

465466

55 Conceitos Bsicos a

56 Abordagem Relacional 468 56.1 Conceitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468 56.2 Esquemas e Restries de Integridade . . . . . . . . . . . . . . . 468 co 57 Modelagem Entidade Relacionamento 57.1 Conceitos . . . . . . . . . . . . . . . . . . . . . 57.2 Cardinalidade . . . . . . . . . . . . . . . . . . . 57.3 Representao Grca . . . . . . . . . . . . . . ca a 57.4 Recursos do Modelo Entidade Relacionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 470 471 471 471

http://www.candidatoreal.com

58 Normalizao ca 473 58.1 Aspectos desejveis em um bom projeto . . . . . . . . . . . . . . 473 a 58.2 Forma normal de Boyce-Codd . . . . . . . . . . . . . . . . . . . . 473 58.3 Terceira forma normal . . . . . . . . . . . . . . . . . . . . . . . . 474 59 Transformao do Modelo Conceitual ca 60 Linguagem SQL 60.1 Criao de tabela . . . . ca 60.2 Consultas . . . . . . . . 60.3 Funes de agregao . . co ca 60.4 Atualizaes e excluses co o 60.5 Vises . . . . . . . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 476 476 476 477 478 479

12

http://www.candidatoreal.com

60.6 Chaves estrangeiras . . . . . . . . . . . . . . . . . . . . . . . . . . 479 61 Conceitos de Datawarehousing e Bussiness Inteligence 61.1 Banco de Dados Multidimensionais . . . . . . . . . . . . . 61.1.1 Modelagem Multidimensional . . . . . . . . . . . . 61.2 Datawarehousing . . . . . . . . . . . . . . . . . . . . . . . 61.3 OLTP, OLAP, MOLAP, ROLAP e HOLAP . . . . . . . . 61.4 Outros conceitos importantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 480 481 483 485 487

XII

Administrao de Bancos de Dados Relacionais 489 ca490 492 494

62 Gerncia de Transaes e co 63 Controle de Concorrncia e 64 Gerncia de Desempenho e

XIII

Oracle e Microsoft SQL Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

497498 498 498 499 499 499 500 501 501 501 502 502 503 503 504 504 505 506 506 506 507 507 507

65 Administrao de Bancos de Dados Oracle ca 65.1 Arquitetura de um Servidor Oracle . . . . . . . . 65.1.1 Estruturas em memria . . . . . . . . . . o 65.1.2 Processos server . . . . . . . . . . . . . . 65.1.3 Processos user . . . . . . . . . . . . . . . 65.1.4 Processos em Background . . . . . . . . . 65.1.5 Arquivos . . . . . . . . . . . . . . . . . . 65.2 Arquitetura Oracle de Armazenamento de Dados 65.3 Tratamento de Transaes no Oracle . . . . . . . co 65.3.1 Gerenciamento do Redo Log . . . . . . . . 65.3.2 Checkpoints . . . . . . . . . . . . . . . . . 65.3.3 Segmentos de rollback . . . . . . . . . . . 65.3.4 Consistncia de leitura . . . . . . . . . . . e 65.4 Congurao do Servidor . . . . . . . . . . . . . ca 65.5 Tipos de Usurios Oracle . . . . . . . . . . . . . a 65.5.1 Administradores de banco de dados . . . 65.5.2 Outros ppeis . . . . . . . . . . . . . . . . a

http://www.candidatoreal.com

66 Administrao de Bancos de Dados SQL Server ca 66.1 Arquitetura de um Servidor SQL Server . . . . . . . . 66.1.1 Catlogos de sistema . . . . . . . . . . . . . . . a 66.1.2 Processos em background . . . . . . . . . . . . 66.2 Arquitetura SQL Server de Armazenamento de Dados 66.3 Tratamento de Transaes no SQL Server . . . . . . . co

XIV

ITIL

509

67 Suporte a Servios c 510 67.1 Service Desk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510

13

http://www.candidatoreal.com

67.2

67.3

67.4

67.5

67.6

67.1.1 Objetivos . . . . . . . . . . 67.1.2 Responsabilidades . . . . . 67.1.3 Vrios Tipos de Central . . a Gerenciamento de Incidentes . . . 67.2.1 Objetivos . . . . . . . . . . 67.2.2 Atividades do Processo . . 67.2.3 Papis e Responsabilidades e Gerenciamento de Problemas . . . 67.3.1 Objetivos . . . . . . . . . . 67.3.2 Denies Importantes . . . co 67.3.3 Atividades do Processo . . 67.3.4 Papis e Responsabilidades e Gerenciamento de Congurao . . ca 67.4.1 Objetivos . . . . . . . . . . 67.4.2 Atividades . . . . . . . . . . 67.4.3 Papis e Responsabilidades e Gerenciamento de Mudanas . . . c 67.5.1 Objetivos . . . . . . . . . . 67.5.2 Responsabilidades . . . . . 67.5.3 Denies Importantes . . . co Gerenciamento de Liberao . . . . ca 67.6.1 Objetivo . . . . . . . . . . . 67.6.2 Atividades do Processo . . 67.6.3 Denies Importantes . . . co 67.6.4 Papis e Responsabilidades e

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

510 510 511 511 511 511 512 512 512 513 513 513 514 514 514 515 515 515 515 515 516 516 516 517 517 518 518 518 519 519 519 519 520 521 521 521 522 522 522 523 523 523 524

http://www.candidatoreal.com

68 Entrega de Servios c 68.1 Gerenciamento do N de Servio vel c 68.1.1 Objetivos . . . . . . . . . . 68.2 Gerenciamento Financeiro . . . . . 68.2.1 Objetivos . . . . . . . . . . 68.2.2 Responsabilidades . . . . . 68.2.3 Atividades do Processo . . 68.2.4 Elementos de Custo . . . . 68.3 Gerenciamento da Capacidade . . 68.3.1 Objetivos . . . . . . . . . . 68.3.2 Atividades . . . . . . . . . . 68.4 Gerenciamento de Disponibilidade 68.4.1 Objetivos . . . . . . . . . . 68.4.2 Ciclo de vida do incidente . 68.5 Gerenciamento de Continuidade . . 68.5.1 Objetivos . . . . . . . . . . 68.5.2 Estgios . . . . . . . . . . . a 68.5.3 Tipos de Continuidade . . .

XV

Gerncia de Projetos segundo PMBOK e

525

69 Gerenciamento de Escopo 526 69.1 WBS e Denio do Escopo . . . . . . . . . . . . . . . . . . . . . 526 ca

14

http://www.candidatoreal.com

70 Gerenciamento de Recursos Humanos 70.1 Estruturas Organizacionais . . . . . . 70.1.1 Organizao Funcional . . . . . ca 70.1.2 Organizao por Projeto . . . . ca 70.1.3 Organizao Matricial . . . . . ca 70.2 Planejamento Organizacional . . . . . 70.3 Desenvolvimento da Equipe . . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

528 528 528 529 530 531 531 534 534 535 535 536 536 536 537 537 537 538 538

71 Gerenciamento do Tempo 71.1 Tcnicas de Desenvolvimento do Cronograma e 71.1.1 Anlise Matemtica . . . . . . . . . . a a 71.1.2 Compresso do Cronograma . . . . . . a 71.1.3 Simulao . . . . . . . . . . . . . . . . ca 71.1.4 Heur stica do nivelamento de recursos 71.1.5 Estrutura de Codicao . . . . . . . ca 72 Gerenciamento de Custo 72.1 Tcnicas de Estimativas de Custos e 72.1.1 Estimativas Anlogas . . . a 72.1.2 Modelagem Paramtrica . . e 72.1.3 Estimativa bottom-up . . . . . . . . . . . . . . . . . . . . . . . . . . .

73 Gerenciamento de Riscos 539 73.1 Anlise Qualitativa . . . . . . . . . . . . . . . . . . . . . . . . . . 539 a 73.2 Anlise Quantitativa de Riscos . . . . . . . . . . . . . . . . . . . 540 a 74 Gerenciamento de Qualidade 74.1 Tcnicas de Planejamento da Qualidade e 74.1.1 Anlise Custo/Benef a cio . . . . . 74.1.2 Benchmarking . . . . . . . . . . 74.1.3 Fluxograma . . . . . . . . . . . . 74.1.4 Elaborao de Experimentos . . ca 74.1.5 Custo da Qualidade . . . . . . . 74.2 Tcnicas de Controle da Qualidade . . . e 74.2.1 Grcos de Controle . . . . . . . a 74.2.2 Diagramas de Pareto . . . . . . . 74.2.3 Diagramas de Disperso . . . . . a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 542 542 543 543 543 544 544 545 545 546

http://www.candidatoreal.com

75 Gerenciamento da Comunicao ca 547 75.1 Um mais sobre Planejamento da Comunicao . . . . . . . . . . 547 ca 76 Gerenciamento das Aquisies co 548 76.1 Um pouco mais sobre Planejamento de Aquisies . . . . . . . . 548 co 77 Gerenciamento da Integrao ca 550 77.1 Ferramentas de Apoio ` Integrao . . . . . . . . . . . . . . . . . 550 a ca 78 Sobre os Ciclos do Projeto e Processos de Gerenciamento 551

15

http://www.candidatoreal.com

Parte I

Fundamentos de Computao ca

http://www.candidatoreal.com

16

http://www.candidatoreal.com

Cap tulo 1

Arquitetura e Organizao ca de Computadores1.1 Conceitos Bsicos a

Dois conceitos fundamentais no estudo dos sistemas de computao so o de ca a Arquitetura e Organizao de computadores. O termo arquitetura refere-se aos ca atributos do ponto de vista do programador, e portanto, tm impacto direto e sobre sobre a execuo lgica de um programa. O termo organizao, refere-se ca o ca a `s unidades operacionais e suas interconexes. Desta forma, uma mesma aro quitetura pode ser implementadas por meio de diferentes organizaes. co As funes bsicas de um computador so o processamento de dados, arco a a mazenamento de dados, transferncia de dados e controle. Para desempenhar e essas funes o computador precisa executar um conjunto de instrues (proco co grama). Os computadores que conhecemos so baseados no conceito de proa grama armazenado, introduzido por Von-Neuman. As instrues do programa co e os dados so armazenados em uma memria, de forma que a alterao de um a o ca programa consiste na alteraao de um endereo de memria. c c o O ciclo de execuo de cada uma das instrues de um programa divica co e dido nos seguintes estados: (i)Calculo do Endereo de Instruo; (ii)Busca da c ca Instruo (Instruction Fetch); (iii) Decodicao da Instruo; (iv)Clculo do ca ca ca a Endereo do Operando; (v)Busca do Operando (Operand Fetch); (vi)Execuo c ca da Operao; (vii)Armazenamento do Resultado. No entanto, os computadores ca modernos utilizam o conceito de interrupo para diminuir o tempo de ociosica dade dos processadores, o ciclo de execuo das instrues ganham mais alguns ca co estados. As classes de interrupes mais comuns so interrupes de software, co a co de relgio, de E/S e de falha de hardware. o A estrutura bsica de um computador composta pelos seguintes compoa e nentes: (i)Unidade Central de Processamento(CPU); (ii)Memria Principal; o 17

http://www.candidatoreal.com

http://www.candidatoreal.com

(iii)Dispositivos de E/S; (iv)Sistemas de Interconexo. a Esses componentes tambm possuem suas subdivises. A CPU por exemplo e o se subdivide em: Unidade de Controle, Unidade Lgica e Aritmtica (ALU), o e Registradores e por m as Interconexes da CPU. Cada um desses componentes o er melhor descrito posteriormente. Para interconectar dois ou mais dispositivos a em um sistema so utilizados os chamados barramentos. Os barramentos so a a compostos por linhas que podem ser de Dados, Endereo ou Controle. Os c barramentos de controle podem ser utilizados por exemplo para controlar direito de leitura ou escrita em memria ou E/S, interrupes, conrmaes, relgio o co co o e reset. O projeto dos barramentos que compe um sistema so de grande o a importncia no desempenho do sistema. Questes importantes no projeto de a o barramentos so: a (i)Tipo - dedicado ou multiplexado; (ii)Mtodo de Arbitrao - Centralizado ou Distribu e ca do; (iii)Temporizao - S ca ncrona ou Ass ncrona; (iv)Largura - nmero de linhas; u (v) Tipo de Transferncia - leitura, escrita, leitura/modicao/escrita, e ca escrita/leitura, em bloco. Para aumentar o desempenho do sistema, os barramentos so organizados de a forma hierrquica, de forma isolar o trfego de dados entre CPU e memria do a a o trfego proveniente de operaes de E/S. Os chamados barramentos de expanso a co a proporcionam maior exibilidade ao sistema (ex: SCSI), enquanto os barramentos de alta velocidade so utilizados para dispositivos de alta capacidade (ex: a FireWire).

1.2

Estrutura e Funcionamento da CPU

Os principais elementos da CPU so a Unidade de Controle , a Unidade Lgica a o e Aritmtica (ULA) e os Registradores. Esses elementos se conectam internae mente atravs do barramento interno da CPU. e

http://www.candidatoreal.com

A CPU se comunica com o mundo externo atravs dos barramentos do sise tema. Ao longo da execuo de um programa, os barramentos constituem os ca chamados caminho dos dados. No topo da organizao hierrquica de memria ca a o em um sistema se encontram os registradores. Esses se dividem em dois tipos: Registradores vis veis ao Usurio e Registradores de Controle e de Estado. a Os registradores vis veis ao usurio so aqueles que podem ser referenciados a a pela linguagem de montagem. Eles podem ser registradores de dados, endereo c ou ento de propsito geral. Os registradores de Controle e de Estado so utia o a lizados para controlar a operao da CPU. Na maioria das vezes no so vis ca a a veis aos usurios. Exemplos de registradores de Controle e de Estado so o Program a a

18

http://www.candidatoreal.com

Counter (PC), Instruction Register (IR), Memory Address Register (MAR), Memory Buer Register (MBR), Program Status Word (PSW), Stack Pointer (SI), Page Table Base Register (PTBR), Page Table Base Limit (PTBL). A seqncia de eventos ao longo de um ciclo de instruo depende do projeto ue ca da CPU, no entanto, em termos gerais, pode-se indicar o que acontece em nos subciclos de busca, indireto e interrupo. O ciclo de execuo depende do ca ca cdigo da operao que ser executada. A gura 1.1 mostra o diagrama de o ca a transio de estados do ciclo de instruo. ca ca

Figura 1.1: Transio de Estados do Ciclo de Instruo ca ca Durante o ciclo de busca, o contador de programa contm o endereo da e c prxima instruo a ser buscada na memria. Esse endereo movido para o o ca o c e registrador MAR e a unidade de controle requisita uma leitura na memria. O o resultado da leitura e colocado no registrador MBR, que em seguida copiado e para o registrador IR. Enquanto isso o PC incrementado de 1 para preparar e a busca da prxima instruo. O uxo de dados do ciclo de busca mostrado o ca e na gura 1.2. Ao m do ciclo de busca, o unidade de controle examina se a instruo ca especica algum operando com endereamento indireto. Os n bits mais a direita c de MBR so colocados em MAR, e ento a unidade de controle requisita uma a a leitura a memria para carregar o valor do operando para MBR. O uxo de o dados do ciclo de indireto mostrado na gura 1.3. e No ciclo de interrupo, o contedo do registrador PC dever ser salvo, para ca u que mais tarde a CPU possa retornar sua atividade normal depois de processar a interrupo. O contedo do PC transferido para MBR. A endereo de ca u e c memria reservado para guardar o valor de PC (ex: topo da pilha) carregado o e para MAR, e ento a unidade de controle solicita uma escrita na memria. Por a o m o PC carregado com o endereo da rotina de interrupo, para que o no e c ca prximo ciclo de instruo seja feita a busca da instruo apropriada. A gura o ca ca 1.4 mostra o uxo de dados do ciclo de interrupo. ca

http://www.candidatoreal.com

19

http://www.candidatoreal.com

Figura 1.2: Fluxo de Dados do Ciclo de Busca

Figura 1.3: Fluxo de Dados do Ciclo de Indireto

http://www.candidatoreal.com

Figura 1.4: Fluxo de Dados do Ciclo de Interrupo ca

1.2.1

Pipelines

Como pudemos ver, um ciclo de instruo pode subdividido em etapas menores. ca Uma diviso comum a baseada nos ciclos de busca, indireto, execuo e intera e ca rupo. A idia da tcnica de pipeline trabalhar as diversas etapas do ciclo ca e e e de instruo de forma paralela, e no de forma serial, de forma aumentar o ca a

20

http://www.candidatoreal.com

desempenho da CPU. A tcnica de pipeline pode ser descrita genericamente como uma estratgia e e de aceitar novas entradas em uma extremidade sem que as entradas prvias e tenha aparecido como sa das na outra extremidade. Imaginemos um esquema em que o ciclo de instruo subdividido em 2 etapas que so a busca da inca e a struo e a execuo. Enquanto uma instruo est sendo executada, a prxima ca ca ca a o instruo pode estar sendo buscada. Este esquema congura um pipeline de 2 ca estgios, e a tcnica utilizada a de busca antecipada de instruo (Instruction a e e ca Prefetch ou Fetch Overlap). Embora possa ser obtido um ganho de desempenho, o pipeline de 2 estgios ainda muito fraco para lidar com instrues de desvio, a e co nas quais a busca da prxima instruo depende do resultado da execuo da o ca ca instruo corrente. ca Portanto, uma subdiviso do ciclo de instruo em um nmero maior de a ca u estgios pode proporcionar maior desempenho. Imaginemos o ciclo de instruo a ca como sendo composto dos seguintes estgios: a (1)BI - Busca da Instruo; ca (2)DI - Decodicao da Instruo; ca ca (3)CO - Calculo dos Endereos dos Operandos; c (4)BO - Busca dos Operandos; (5)EI - Execuo da instruo; ca ca (6)EO - Escrita do Operando. Essa subdiviso busca fazer com que os tempos gastos em cada um dos 6 a estgios seja parecido. Se os 6 estgios pudessem ser executados em paralelo, o a a desempenho seria aproximadamente 6 vezes maior. No entanto, podem existir conitos de acesso ` memria por parte dos a o estgios e nem todas as instrues possuem os seis estgios. Somam-se ` esses a co a a dois problemas, a existncia de instrues de desvios, principais inimigas da e co tcnica de pipeline. Para lidar com os problemas introduzidos pelas instrues e co de desvio so utilizadas tcnicas como: a e

http://www.candidatoreal.com

Mltiplos Fluxos (duplicao de estgios iniciais); u ca a Busca Antecipada de Instruo-Alvo de Desvio; ca Memria de Lao de Repetio (loop buer ); o c ca Previso de Desvio baseadas no opcode; a Previso de Desvio baseadas em histrico (BTB - Branch Target Buer, a o tambm conhecida como BHT - Branch History Table). e As guras 1.5 e 1.6 mostram os diagramas de tempo para o pipeline de instrues com e sem instrues de desvio. co co

21

http://www.candidatoreal.com

Figura 1.5: Diagrama do Tempo para Pipeline de Instrues co

Figura 1.6: Efeito do desvio condicional no Pipeline de Instrues co

1.3

Conjunto de Instrues co

http://www.candidatoreal.com

A operao da CPU determinada pelo conjunto de instrues que ela executa. ca e co So as chamadas instrues de mquina. A coleo de instrues que uma CPU a co a ca co pode executar chamada Conjunto de Instrues. O conjunto de instrues e co co deve ser suciente para traduzir programas escritos em uma linguagem de alto n vel para a linguagem de mquina. Os principais elementos e uma instruo a ca so: a (i)Cdigo da operao (opcode): especica a operao a ser efetuada; o ca ca (ii)Referncia ` Operando Fonte: indica as entradas para a operao; e a ca (iii)Referncia ao operando Destino: A operao pode produzir um resule ca tado; (iv)Endereo da prxima instruo: Pode ser indicado implicitamente (ex: c o ca registrador PC). 22

http://www.candidatoreal.com

Os operandos fonte e destino podem estar localizados em memria (principal o ou virtual), em algum registrador, ou em algum dispositivo de E/S. Cada instruo de um computador representada internamente como um ca e conjunto de bits. A instruo dividida em campos correspondentes aos eleca e mentos da instruo. O papel da CPU e ler a instruo, extrair informao de ca ca ca cada um dos campos e efetuar a operao. Devido `s diculdades de se lidar ca a com a representao binria, utilizada uma espcie de notao simblica para ca a e e ca o representar as instrues de mquina. Os cdigos das operaes so representaco a o co a dos por mnemnicos. (ex: ADD, SUB, MPY, DIV, LOAD, STOR). O mesmo o ocorre para os operandos. Um conjunto de instrues pode apresentar mais de co um formato de instruo. ca As instrues podem ser classicadas em: co (i)Processamento de Dados: instrues lgicas e aritmticas; co o e (ii)Armazenamento de dados: instrues de memria; co o (iii)Movimentao: instrues de E/S; ca co (iv)Controle: instrues de teste e desvio. co No projeto do conjunto de instrues as questes mais relevantes so o co o a repertrio de operaes, os tipos de dados, o formato e tamanho das instrues, o co co os registradores acess veis, e os modos de endereamento. As classes de dados c sobre as quais as instrues de mquina operam so endereos, nmeros (ex: co a a c u ponto xo, ponto utuante, decimal), caracteres (ex: ASCII e EBCDIC) e dados lgicos. o Os tipos de operaes mais comuns so: co a (i)Transferncia de Dados: mov,push/pop,xlat,in/out; e (ii)Aritmticas: add,sub,mul,idiv; e (iii)Lgicas: and,or,shl/shr; o (iv)Converso de Tipos: jmp,call,loop,int/into; a (vi)Controle do Sistema: hlt,wait;

http://www.candidatoreal.com

(vii)Transferncia de Controle: blt,bgt,beq,call,jmp. e Nas operaes de salto e desvio, importante conhecer cada um dos cdigos co e o de condio envolvidos. (ex: Vai-Um, Zero, Paridade, Sinal, Overow) Na imca plementao das chamadas de procedimento importante ressaltar a utilizao ca e ca de pilhas para permitir chamadas reentrantes (uma chamada dentro da outra).

23

http://www.candidatoreal.com

1.4

Unidade de Controle

A unidade de controle coordena os diversos elementos do processador para que este possa realizar todas as suas funes. A execuo de um programa consiste co ca de uma seqncia de ciclos de instruo. Um ciclo de instruo pode ser subue ca ca dividido em quatro subciclos que so busca, indireto, execuo e interrupo. a ca ca Somente os ciclos de busca e execuo esto presentes em todos os ciclos de ca a instruo. Cada subciclo, por sua vez, composto por microoperaes. ca e co Os quatro registradores bsicos da unidade de controle so: a a PC (Program Counter ): Mantm o endereo da prxima instruo a ser e c o ca buscada na memria; o MAR (Memory Address Register ): Especica endereo de memoria para c uma operao de leitura ou escrita; ca MBR (Memory Buer Register ): Conectado ao barramento do sistema. Contm um valor a ser armazenado na memria ou o ultimo valor dela e o lido; IR (Instruction Register ): Mantm a ultima instruo buscada na memria. e ca o O ciclo de busca ocorre no in cio de cada ciclo de instruo, fazendo com ca que a instruo seja obtida na memria no endereo indicado pelo registrador ca o c PC, e armazenada no registrador IR. Uma vez completada essa etapa, pode ser necessrio que se busquem operandos para a instruo. Isso realizado no ciclo a ca e de indireto. Aps o termino do ciclo de execuo, feita uma checagem para o ca e determinar se ocorreu alguma interrupo, e neste caso o contedo de PC ca u e salvo em memria e PC carregado com um endereo da rotina de interrupo o e c ca apropriada. Os ciclos de busca, indireto e de interrupo envolvem um nmero ca u pequeno e xo de microoperaes. Isso no ocorre nos ciclos de execuo. Em co a ca uma mquina com N cdigos de instruo podem existir N diferentes seqncias a o ca ue de microoperaes para o ciclo de execuo. co ca Todas as microoperaes caem em uma das seguintes categorias: co (i)Transferncia de dados entre registradores; e

http://www.candidatoreal.com

(ii)Transferncia de dados entre registrador e interface externa (barrae mento); (iii)Transferncia de dados de interface externa para registrador; e (iv)Execuo de operaes lgicas e aritmticas, usando registradores como ca co o e entrada e sa da. Portanto, a unidade de controle desempenha duas tarefas bsicas que so o a a seqenciamento e a execuo das microoperaes. A base para o funcionamento u ca co da unidade de controle so os sinais de controle, que constituem as entradas e a sa das.

24

http://www.candidatoreal.com

As unidades de controle podem ser implementadas tanto em hardware quanto em software (Microprogramao). A implementao baseada em microproca ca gramao mais simples e tambm mais barata do que as implementaes em ca e e co hardware. As implementaes em hardware envolvem a criao de uma lgica co ca o complexa para sequenciamento das microoperaes, o que a torna mais cara. co No entanto, mais eciente dos que as implementaes basadas em microproe co gramao. As arquiteturas CISC geralmente utilizam unidades de controle mica croprogramadas, devido ao grande nmero de instrues e sua complexidade. J u co a as arquiteturas RISC, geralmente utilizam implementaes baseadas em hardco ware uma vez que o nmero de instrues reduzido e de baixa complexidade. u co e As tcnicas de microprogramao tambm podem ser aplicadas em eme ca e ulaes, permitindo que mquinas rodem programas escritos originalmente para co a outras mquinas. Microprogramas podem conferir maior desempenho ao sisa tema operacional se forem utilizados na implementao de certas primitivas. ca Alm disso, as tcnicas de microprogramao podem ser utilizadas na implee e ca mentao de dispositivos de propsito especial, por exemplo uma placa de rede ca o (rmware).

1.5

Modos de Endereamento c

Os modos de endereamento esto relacionados com a forma utilizada para c a especicar o valor ou endereo de um operando de uma instruo. Questes imc ca o portantes na escolha do modo de endereamento so a quantidade de posies de c a co memria endereveis, exibilidade de endereamento, nmero de referncias a o ca c u e memria feitas pela instruo e complexidade do clculo do endereo. Em geral, o ca a c as arquitetura no oferecem s um modo de endereamento, mas sim um cona o c junto de modos. Por este motivo, necessrio que exista uma forma de se e a identicar qual o modo de endereamento que se est utilizando. Isso feito c a e atravs do campo de modo de endereamento, que consiste em um subconjunto e c dos bits de uma instruo. ca Imediato: o valor do operando especicado diretamente na instruo. e ca Sua principal vantagem no requer acesso a memria para obter o e a o operando. A desvantagem que esse modo impe uma limitao no e o ca tamanho do operando;

http://www.candidatoreal.com

Direto: o campo de endereo contem o endereo efetivo do operando na c c memria. Requer portanto apenas um acesso para determinar o valor do o operando. Sua limitao fornecer um espao de endereamento limitado; ca e c c Indireto: o campo de endereo aponta para uma posio de memria que c ca o contem o endereo de memria do operando. Sua principal desvantagem c o a necessidade de dois acessos ` memria. A vantagem em relao ao e a o ca modo de endereamento direto o aumento do espao de endereamento, c e c c que passa a ser igual 2n onde n o tamanho da palavra; e Registrador : semelhante ao modo direto, no entanto o modo de endereo e c se refere a um registrador e no ` uma posio de memria. Geralmente a a ca o e

25

http://www.candidatoreal.com

composto por 3 ou 4 bits, o que permite referenciar de 8 a 16 registradores de propsito geral. Suas vantagens so o tamanho pequeno do campo de o a endereo e no necessidade de se acessar a memria. Sua desvantagem c a o e o espao de endereamento limitado pelo nmero de registradores; c c u Indireto via Registrador : semelhante ao modo de endereamento indireto. c O campo de endereo aponta para o registrado que contem a posio de c ca memria do operando. Sua vantagem a necessidade de um unico acesso o e a memria, um a menos que no modo indireto; o Deslocamento: requer que uma instruo tenha dois campos de endereo, ca c com pelo menos um expl cito. O valor de um dos campos usado diree tamente (valor = A). O outro campo baseado no cdigo da operao, e e o ca especica um registrador cujo contedo adicionado a A, para produzir o u e endereo efetivo. Os trs modos de endereamento por deslocamento so c e c a relativo, via registrador-base e indexado; Pilha: A pilha um bloco reservado de posies em memria. Elementos e co o podem ser colocados e removidos do topo da pilha. o apontador do topo da pilha (stack-pointer ) mantido em um registrador. Portanto, de fato, e referncias a pilha so feitas por endereamento indireto via registrador. e a c

1.6

Organizao de Memria ca o

Um sistema de computador t pico equipado com uma hierarquia de subsise temas de memria, algumas internas (diretamente acess o veis pelo processador, como registradores, cache e memria principal) e outras externas (acess o veis pelo processador por meio de um mdulo de E/S, como disco e cdrom). As o caracter sticas fundamentais de um sistema de memria so: o a 1. Localizao - processador, interna (principal), externa (secundria); ca a 2. Capacidade - tamanho da palavra e nmero da palavra; u 3. Unidade de Transferncia - palavra, bloco; e 4. Mtodo de Acesso - seqencial, direto, aleatrio, associativo; e u o 5. Desempenho - tempo de acesso, tempo de ciclo e taxa de transferncia; e

http://www.candidatoreal.com

6. Tecnologia - semicondutores, magntica, ptica, magneto-ptico; e o o 7. Caracter sticas F sicas - voltil/no voltil, apagvel/no apagvel. a a a a a a Quanto ao mtodo de acesso das memrias internas, vale a pena destacar os e o acessos aleatrio e associativo. No acesso aleatrio, cada unidade enderevel o o ca possui um mecanismo de endereamento unico e sicamente conectado a ela. E c o mtodo utilizado na memria principal. O esquema associativo consiste em e o um tipo de memria de acesso aleatrio que possibilita comparar simultaneao o mente um certo nmero de bits de uma palavra com todas palavras da memria u o (totalmente associativo) ou com um conjunto de palavras de memria (associao tivo por conjunto). O mtodo associativo empregado pelas memrias cache. e e o

26

http://www.candidatoreal.com

As restries de um projeto de memria podem ser resumidos por 3 questes: co o o Capacidade, Velocidade e Custo. Neste cenrio, valem as seguintes relaes: a co 1. Menor tempo de acesso, maior custo por bit; 2. Maior capacidade, menor custo por bit; 3. Maior capacidade, menor tempo de acesso. A organizao hierrquica dos sistemas de memria visa lidar com o dilema ca a o imposto pelas relaes apresentadas. A hierarquia elaborada de forma que as co e a medida que nela descemos as seguintes relaes so tambm vlidas: co a e a 1 O custo por bit diminui; 2 A capacidade aumenta; 3 O tempo de acesso aumenta; 4 A freqncia de acesso pelo processador diminui. ue Desse modo, as memrias menores, mais caras e mais rpidas so combio a a nadas com memria de maior capacidade, mais lentas e baratas. o A chave do sucesso dessa organizao baseia-se principalmente na relao ca ca 4, que resume o princ pio da Localidade das Referncias. Este princ e pio diz que ao longo da execuo de um programa, as referncias feitas ` memria pelo ca e a o processador, tanto no caso de instrues como dados, tendem a formar grupos co no qual esto prximas umas das outras. Desse modo poss a o e vel organizar os dados ao longo de uma hierarquia de forma que a porcentagem de acessos ` um a certo n seja sucessivamente bem inferior do que a porcentagem de acessos ` vel a um n imediatamente superior. vel Registradores, memria cache e memria principal so as trs formas de o o a e memria interna que empregam tecnologias de semicondutores. O uso de trs o e n veis explora as diferenas de velocidade e custo dessas memrias. Alm dec o e las, alguns sistemas utilizam tecnologias e tcnicas adicionais na hierarquia de e memria. o A Memria Expandida emprega uma tecnologia mais lenta que a memrias o o principais. Ela funciona como um ramo lateral a memria principal, no se o a comunicando com a memria externa. J a tcnica de Memria Virtual permite o a e o que os discos funcionem como uma extenso da memria principal, aumentando a o o desempenho do sistema. A utilizao de memrias cache tem por objetivo proporcionar uma velocica o dade de acesso prxima a velocidade de acesso aos registradores, no entanto o oferecendo uma capacidade maior do que o conjunto de registradores, e custo no muito superior ao da memria principal. Os principais elementos de projeto a o de memrias cache so: o a i Tamanho - deve ser projetado para conjugar bem velocidade, capacidade e custo; 27

http://www.candidatoreal.com

http://www.candidatoreal.com

ii Funo de Mapeamento - direto, associativo, associativo por conjuntos; ca iii Algoritmo de Substituio - LRU, FIFO, LFU, Aleatrio; ca o iv Pol tica de Escrita - direta (write-through), de volta (write-back) e unica (write-once); v Tamanho da Linha; vi Nmero de Memrias Cache - um ou dois n u o veis, unicada/separada. Entre os elementos de projeto de memria cache vale destacar trs. O o e primeiro a Funo de Mapeamento, que diz respeito a determinar onde um e ca bloco da memria principal pode ser encontrado na memria cache. Para reo o alizar este mapeamento so necessrios o endereo do bloco na memria prina a c o cipal e a funo de mapeamento. No esquema de mapeamento direto, um deca terminado conjunto de blocos da memria principal s pode ser encontrado em o o uma linha espec ca da memria cache. E de fcil implementao, porm pode o a ca e utilizar de forma ineciente o espao da cache. No mapeamento associativo c um bloco da memria principal pode ser colocado em qualquer linha da cache. o Maximiza a ocupao da cache, porm exige uma lgica de controle que realca e o ize comparao do rtulo com todas as linhas do cache simultaneamente. No ca o esquema associativo por conjuntos, um bloco da memria principal pode se eno contrar em um conjunto de linhas da cache, e no nela toda. Visa conjugar a vantagens dos mtodos direto e associativo. e O segundo elemento Pol e tica de Escrita, que visa garantir a coerncia das e informaes nos diferentes memrias acess co o veis pelo processador e dispositivos de E/S. Na tcnica a de escrita direta (write-through), todas as operaes de e e co escrita so feitas na memria principal e no cache. Esta garante a coerncia em a o e todas as memrias do sistema, no entanto de baixo desempenho. Na tcnica o e e de escrita de volta (write-back), as escritas so feitas apenas na cache. Minimiza a as operaes de escrita em memria principal, porm impe que operaes de co o e o co E/S acessem o cache. O terceiro elemento o nmero de memrias cache do sistema. Atualmente, e u o a organizao mais comuns baseada em 2 n ca e veis, um interno ao processador (L1) e outro externo (L2). Originalmente, a maioria dos projetos de cache inclui uma unica memria cache, que armazenava tanto instrues como da o co dos. Recentemente, tornou-se comum a utilizao de memrias separadas para ca o instrues e dados. Em processadores modernos que se valem de tcnicas de co e busca antecipada de instruo (Pipeline), tcnicas de Cache Separadas so mais ca e a ecientes que as de Cache Unicada.

http://www.candidatoreal.com

1.7

Desempenho do computador1 T empo de Execucao

O desempenho de um computador pode ser denido como: Desempenho = (1.1)

28

http://www.candidatoreal.com

O tempo a medida de desempenho de um sistema computacional. Em e geral, ele medido em segundos e pode ser denido de diferentes maneiras. O e tempo de resposta ou tempo decorrido (elapsed time) dene o tempo total para se completar uma tarefa computacional, incluindo os acessos ` memria e ao a o disco, as atividades de entrada e sa e o overhead do sistema operacional. da O tempo do processador (CPU time) dene o tempo gasto pelo processador para executar um programa em particular, no considerando o tempo de a execuo de outros programas, tempo de espera por I/O, etc. Este tempo ca e dividido em tempo do usurio e tempo do sistema. O tempo do usurio o a a e tempo gasto na execuo das instrues do programa do usurio. J o tempo ca co a a do sistema o tempo gasto pelo sistema operacional para executar tarefas em e benef do programa do usurio. A medida de tempo que mais interessa o cio a e tempo de usurio. a Os projetistas medem a velocidade do hardware na execuo de suas funes ca co bsicas com o clock. O clock possui uma taxa constante e determina o momento a da ocorrncia de eventos do prprio hardware. O tamanho de um per e o odo de clock referenciado tanto como o tempo necessrio para completar um ciclo de e a clock quanto como a freqncia do clock (inverso do ciclo de clock). Por exemplo, ue um ciclo de clock igual a 2 s corresponde a uma freqncia de 500MHz, que ue e o inverso do ciclo de clock.

1.7.1

Tempo de execuo de um programa ca

Frmulas bastante simples relacionam a medida do tempo de execuo gasto no o ca processador com a mtrica bsica baseada nos ciclos de clock e tempo do ciclo e a de clock: Tempo de CPU do programa = N de ciclos x Per odo de clock = N de ciclos / Freqncia do clock ue

Essas frmulas no incluem qualquer referncia ao nmero de instrues o a e u co necessrias ` execuo de um programa. O tempo de execuo tambm depende a a ca ca e do nmero de instrues do programa. O nmero de ciclos de clock necessrios u co u a a ` execuo de uma instruo dado por: ca ca e

http://www.candidatoreal.com

No de ciclos de clock = No instrues do programa x CPI co

(1.2)

A CPI a mdia do nmero de ciclos por instruo. Este parmetro permite e e u ca a a comparao entre diferentes implementaes de uma mesma arquitetura do ca co conjunto de instrues, uma vez que o nmero de instrues para a execuo do co u co ca programa nas diferentes implementaes o mesmo. co e

1.7.2

Desempenho da CPU

O desempenho da CPU na execuo de um programa pode ser medido em termos ca quantidade de instrues, do CPI e do per co odo do clock:

29

http://www.candidatoreal.com

Tempo de CPU = No de instrues x CPI x Per co odo do clock

(1.3)

O tempo de CPU medido executando o programa, o per e odo do clock e divulgado pelo fabricante e o nmero de instrues obtido por meio de softu co e wares conhecidos como execution prolers ou por simuladores de arquitetura. Em uma primeira aproximao, o nmero de instrues, a CPI e o per ca u co odo do clock so afetados respectivamente pela capacidade de otimizao do coma ca pilador, pela arquitetura do processador e de seu conjunto de instrues; e pela co tecnologia empregada na implementao da mquina. ca a

1.7.3

Programas para medir desempenho

Existem quatro n veis de programas que podem ser usados para avaliao de ca desempenho, eles esto listados em ordem decrescente de preciso de previso: a a a Programas reais; Ncleos ou kernels (pedaos de programas reais); u c Toy Benchmarks (programas com 10 a 100 linhas de cdigo que produzem o um resultado conhecido a priori); Benchmarks sintticos (similar em losoa aos ncleos, tentam casar a e u freqncia mdia de operaes de um grande conjunto de programas). ue e co Os benchmarks so conjuntos de aplicaes que representam cargas de traa co balho cujo objetivo estimar o desempenho das cargas de trabalho reais. Os e benchmarks podem conter aplicaes t co picas de processamento cient co, compiladores, processadores de texto entre outras. Um Benchmark Suite um conjunto de programas de avaliao. A Stane ca dard Performance Evaluation Corporation (SPEC) tem lanado vrios benchc a mark suites: SPEC89, SPEC92, SPEC95 e SPEC2000. Estas benchmark suites so compostas por programas reais, escolhidos para serem representativos de a programas que tipicamente demandam muita CPU e pouco I/O.

http://www.candidatoreal.com

1.7.4

Comparando desempenho

Uma vez selecionados os programas adequados para usar como benchmarks e decidida a mtrica de avaliaao, tempo de resposta ou throughput (nmero de e c u tarefas executadas por unidade de tempo), necessrio decidir como comparar e a os dados de desempenho obtidos a partir de diferentes benchmarks. A maneira mais simples de considerar o desempenho relativo usar o tempo e total de execuo de dois programas em mquinas diferentes. Por exemplo, os ca a tempos de execuo de dois programas conforme a tabela 1.1. ca Outra maneira de sumarizar os tempos utilizando as mdias aritmtica, e e e harmnica ou geomtrica. A mdia geomtrica inadequada, pois no prediz o o e e e e a tempo de execuo. ca 30

http://www.candidatoreal.com

Programa 1 (s) Programa 2 (s) Total (s)

Computador A 1 1000 1001

Computador B 10 100 110

Tabela 1.1: Tempo total de execuo de 2 programas ca

Mdia Aritmtica = Tempo (i,n) = e e Mdia Harmnica = Taxa (i,n) = e o

1 n n

(1.4) (1.5)

n 1 i=1 T axai

n

Mdia Geomtrica = Tempo Normalizado (i,n) = e e

n

T normalizadoi (1.6)i=1

Alm das mdia, existem ainda outras medidas de desempenho. Uma das e e alternativas a mtrica MIPS (million instruction per second), que dada por e e e um das seguintes expresses: o Nmero de instrues u co Tempo de execuo x 106 ca Freqncia de Clock ue CPI 106

MIPS

= =

Existem problemas com o uso da mtrica MIPS. Ela especica a taxa de e execuo de instrues, mas no considera a capacidade de executar mais ou ca co a menos trabalho. Portanto, no podemos comparar mquinas com conjuntos de a a instrues diferentes. Outro problema que os resultados obtidos variam enco e tre programas no mesmo computador, o que impede que determinada mquina a tenha um MIPS caracter stico. Outra alternativa a mtrica denominada MFLOPS (million oating-point e e operations per second), que dada pela seguinte expresso: e a

http://www.candidatoreal.com

MFLOPS =

Nmero de op. de ponto utuante u Tempo de execuo x 106 ca

(1.7)

Uma operao de ponto utuante pode ser uma operao de adio, subca ca ca trao, multiplicao ou diviso aplicada a operandos expressos em preciso ca ca a a simples ou dupla.

1.7.5

Lei de Amdahl

A lei de Amdhal pode ser utilizada para demonstrar o ganho de desempenho de uma mquina. Este ganho dito acelerao ou speedup. Entende-se por a e ca acelerao a medida de como a mquina se comporta aps a implementao ca a o ca

31

http://www.candidatoreal.com

de uma melhora em relao ao seu comportamento anterior. Podemos denir ca speedup como: speedup = Desempenho aps a melhora o Desempenho antes da melhora (1.8)

A lei de Amdhal demonstra que errado esperar que a melhora em um dos e aspectos que inuenciam no desempenho da mquina resulte numa melhora no a desempenho total proporcional ao tamanho do ganho inicial da frao. ca

http://www.candidatoreal.com

32

http://www.candidatoreal.com

Cap tulo 2

Componentes de um ComputadorO computador est organizado em dois componentes que so: a a Hardware: corresponde a parte f sica que est dividida em: unidade de a entrada e sa da, processador, memria principal e memria secundria; o o a Software: o conjunto de programas que d vida ` mquina. E classicado e a a a em software aplicativo (jogos, planilha, etc.) e software bsico (sistema a operacional, compiladores, editores de texto, etc.). Para interligar os componentes do hardware existe uma placa de suporte especial, chamada placa-me. A placa-me responsvel por gerenciar toda a a a e a transao entre o processador e os perifricos. Os componentes principais da ca e placa-me so: chipset, BIOS, barramentos, e slots. a a Chipset o chip responsvel pelo controle de diversos dispositivos de entrada e a e sa como o barramento, o acesso ` memria, o acesso ao HD, perifricos da a o e on-board e o-board, comunicao do processador com a memria RAM e enca o tre outros componentes da placa-me. Uma placa-me possui dois chipsets: o a a chipset sul e o chiset norte. O chipset sul (south bridge) responsvel pelo conte a role de dispositivos de entrada ou sa enquanto o chipset norte (north bridge) da faz a comunicao entre o processador e a memria principal. ca o

http://www.candidatoreal.com

O BIOS (Basic Input/Output System) o primeiro programa executado e pelo computador ao ser ligado. Sua funo primria preparar a mquina para ca a e a que o sistema operacional, que pode estar armazenado em diversos tipos de dispositivos (discos r gidos, disquetes, CDs, etc) possa ser executado. O BIOS armazenado num chip ROM (Read-Only Memory) localizado na placa-me, e a chamado ROM BIOS. O BIOS tambm responsvel por controlar o uso dos e e a dispositivos e manter informaes de data e hora. O BIOS trabalha junto com co o post, um software que testa os componentes do micro em busca de eventuais erros. Pode-se alterar as conguraes de hardware atravs do setup. co e

33

http://www.candidatoreal.com

Os barramentos permitem a interligao entre os dispositivos da placa-me. ca a So divididos em trs conjuntos: via de dados, via de endereos e via de conta e c role. O desempenho do barramento pode ser medido pela sua largura de banda (32, 64 bits, etc.) e pela sua velocidade de transmisso (100 Mbps, 1G bps, etc.). a Os slots so responsveis por ligar os perifricos aos barramentos e suas a a e velocidades e largura de banda so correspondentes as dos seus respectivos bara ramentos. Na placa-me so encontrados vrios slots para encaixe de placas a a a (v deo, som, rede, modem, etc.). Alguns exemplos de slots: ISA, PCI, AGP, PCI Express, etc.

2.12.1.1

Principais componentes de HardwareDiscos R gidos

Os discos r gidos so dispositivos de armazenamento destinados a grandes quana tidades de dados. Fisicamente, um disco r gido pode ser visto como um composto por dois grandes blocos, como na gura 2.2. O primeiro bloco um e conjunto de discos magnticos superpostos em alturas diferentes com aux de e lio um eixo central. No momento de acesso ao disco, essa estrutura mantida em e uma rotao constante. O segundo bloco uma estrutura mecnica que suporta ca e a um conjunto de cabeotes, um para cada superf de disco. Essa estrutura c cie e capaz de realizar movimentos de vai-e-vem de maneira que os cabeotes possam c ser deslocados desde a borda do disco at o centro. e

http://www.candidatoreal.com

Figura 2.1: Organizao f ca sica do disco Do ponto de vista da organizao lgica, cada superf de um disco dica o cie e vidida em circunferncias concntricas denominadas trilhas. Cada trilha, por e e sua vez, subdividida radialmente em unidades chamadas setores. Em geral, e os setores tm o mesmo tamanho. O setor possui a unidade m e nima de leitura e gravao em um disco. O conjunto de todas as superf ca cies do disco que cam exatamente ` mesma distncia do eixo central forma o cilindro, conforme a a a gura ??. As abstraes cilindro, trilha e setor so utilizadas para designar a co a organizao lgica da unidade de disco. A denio de trilhas e de setores em ca o ca 34

http://www.candidatoreal.com

um disco chama-se formatao f ca sica e um procedimento realizado pelo fabrie cante. A capacidade total do disco obtida multiplicando-se cabeas x cilindros e c x setores x tamanho do setor.

Figura 2.2: Organizao lgica da unidade de disco ca o Para acessar dados no disco, necessrio informar ` controladora o ciline a a dro, a superf e o setor a ser acessado. Esse mtodo denominado de CHS cie e e (Cylinder, Head, Sector). Outra maneira acessar o disco enxerg-lo como e e a um conjunto de blocos, no qual cada bloco um ou mais setores. O nmero de e u blocos ento convertido em cilindros, superf e setores por um procedimento e a cie que se denomina de LBA (Linear Block Addressing). Outros termos bastante comuns associados a disco r gidos so formatao a ca lgica e parties. A formatao lgica consiste em gravar informaes no disco o co ca o co de forma que arquivos possam ser escritos, lidos e localizados pelo sistema operacional. O conceito de partio est associado ` capacidade de dividir logicaca a a mente um disco em vrios outros discos. a Para realizar um acesso a um disco, necessrio posicionar o cabeote de e a c leitura e escrita sob um determinado setor e trilha onde dado ser lido ou esa crito. O tempo total de acesso aos disco, seja para leitura ou para escrita, e dado pela seguinte frmula: o

http://www.candidatoreal.com

Ta cesso = Ts eek + Tl atencia + Tt ransf erencia A descrio de cada um dos termos da soma a seguinte: ca e

(2.1)

Tempo de Seek: tempo necessrio para deslocar o cabeote de leitura e a c escrita at o cilindro correspondente ` trilha a ser acessada; e a Tempo de Latncia: tempo necessrio, uma vez o cabeote posicionado j e a c a na trilha correta, para o setor a ser lido, ou escrito, se posicionar sob o cabeote de leitura e escrita no in do setor a ser lido (ou escrito); c cio Tempo de Transferncia: corresponde ao tempo necessrio ` transferncia e a a e dos dados, isso , ` leitura ou a escrita dos dados. e a 35

http://www.candidatoreal.com

Outro fator relacionado com a reduo do tempo de acesso a um disco ca e o entrelaamento (interleaving). Essa tcnica numera os setores no mais de c e a forma cont gua, mas sim com um espao entre eles. O disco 2 da Ilustrao 14 c ca possui um fator de entrelaamento igual a 2. Isso signica que entre o setor k c e o setor k+1, existem dois outros setores. O melhor fator de entrelaamento c para uma determinada unidade de disco depende da velocidade do processador, do barramento, do controlador e da velocidade de rotao do disco. ca

Figura 2.3: Trilha com 16 setores e diferentes fatores de entrelaamento c

2.1.2

Teclado

O teclado o principal perifrico de entrada de dados utilizado na integrao e e ca direta de usurios com o computador. O princ de operao do teclado basa pio ca e tante simples: gerar um s mbolo para cada tecla pressionada. Mecanicamente, um teclado pode ser visto como uma matriz de i linhas e j colunas as quais entram em contato quando uma tecla pressionada. A cada elemento i,j da e matriz correspondente um caractere. Quando uma tecla pressionada, o teclado identica a linha e a coluna e associadas a essa tecla e gera um cdigo que denominado de scan mode (cdigo o e o de varredura). O pressionar da tecla gera ainda uma interrupo de hardware, ca e por conseqncia, a execuo de um tratador de interrupes espec ue ca co co para o teclado. Com base no scan mode, o tratador de interrupes consulta uma co tabela interna, substituindo o scan mode pelo cdigo ASCII correspondente ` o a tecla pressionada. O cdigo ASCII da tecla, em seguida, armazenado em o e uma regio especial da memria (buer do teclado) de onde recuperado por a o e chamadas do sistema operacional. Um teclado brasileiro difere de um teclado ingls na posio dos acentos e e ca da cedilha, por exemplo. A soluo empregada associar a certos programas ca e aplicativos mapas de cdigos. Atravs desses mapas de cdigos, os programas o e o aplicativos so capazes de consumir caracteres do buer de teclado e converta e los de forma apropriada. O procedimento de ler os dados do teclado e escrev-los na tela denomina-se e ecoamento. Quando se tem vrias janelas abertas, os caracteres digitados devem a ser direcionados ` janela correta. Dois mtodos so normalmente empregados: a e a centralizado e dedicado.

http://www.candidatoreal.com

36

http://www.candidatoreal.com

No mtodo centralizado o driver de teclado disponibiliza um conjunto de e mini-buers os quais podem ser encadeados para formar um buer maior. Nesse caso, para cada janela aberta o sistema operacional atribui uma estrutura de dados na qual um dos seus elementos um ponteiro utilizado para referenciar e e lista encadeada de mini-buers. No mtodo dedicado, a buerizao feita e ca e diretamente em uma rea de memria provida pela estrutura de dados associada a o ao terminal. Nesse caso, o nmero de entradas para o terminal limitado pelo u e tamanho do buer dessa estrutura.

2.1.3

Mouse

O mouse um perifrico de entrada que historicamente se juntou ao teclado e e como auxiliar no processo de entrada de dados, especialmente em programas com interface grca. O mouse tem como funo movimentar o cursor (apona ca tador) pela tela do computador. O formato mais comum do cursor uma seta, e contudo, existem opes no sistema operacional e softwares que permitem perco sonalizarmos o cursor do mouse. O mouse funciona como um apontador sobre a tela do monitor, e disponibiliza, normalmente, quatro tipos de operaes: movimento, click (clique), duplo co click e drag and drop (arrastar e largar). Existem modelos com um, dois, trs ou mais bote