Apostila Para Concurso de TI

  • Upload
    cezarh1

  • View
    249

  • Download
    0

Embed Size (px)

Citation preview

  • 7/22/2019 Apostila Para Concurso de TI

    1/153

    1

    SISTEMAS COMPUTACIONAIS ...................................................................................................................7

    ORGANIZAO DE COMPUTADORES..........................................................................................................................................7lgebra booleana ......... ........... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .........7Sistemas de numerao e representao de dados...............................................................................................................8Aritmtica computacional ........ .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .......8Microprocessadores: Componentes .......... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... .......... ..8

    Microprocessadores: Arquitetura ......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ............ ..9Dispositivos perifricos ........... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .........9Conceitos de interrupes ..................................................................................................................................................10Estruturas de endereamento.............................................................................................................................................10Compiladores, Ligadores e Interpretadores.......................................................................................................................11

    SISTEMAS OPERACIONAIS .......................................................................................................................................................12Conceitos Bsicos...............................................................................................................................................................12Gerenciamento de Processos .............................................................................................................................................13Gerenciamento de Memria ...............................................................................................................................................13Sistemas de Arquivos..........................................................................................................................................................15Gerenciamento de Dispositivos..........................................................................................................................................16Concorrncia......................................................................................................................................................................17Concorrncia: Deadlocks...................................................................................................................................................17

    REDES DE

    COMPUTADORES

    .....................................................................................................................................................19Comunicao de dados.......................................................................................................................................................19Meios de transmisso ......... ............ ........... ......... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ..........19Redes locais e de longa distncia.......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ............20Topologias..........................................................................................................................................................................20Servios de comunicao ...................................................................................................................................................21Protocolos ..........................................................................................................................................................................22Equipamentos.....................................................................................................................................................................22Sistemas Distribudos.........................................................................................................................................................23Segurana...........................................................................................................................................................................23

    ARQUITETURA OSIDA ISO.....................................................................................................................................................24Camada Fsica ...................................................................................................................................................................24Camada de Enlace de Dados .............................................................................................................................................25Camada de Rede.................................................................................................................................................................25Camada de Transporte.......................................................................................................................................................26Camada de Sesso..............................................................................................................................................................26Camada de Apresentao...................................................................................................................................................26Camada de Aplicao ........................................................................................................................................................26

    TCP/IP....................................................................................................................................................................................26Camadas do TCP/IP...........................................................................................................................................................27Camada de Acesso Rede (ou Camada de Interface)........................................................................................................27Camada Internet (ou Camada de Inter-Rede) ....................................................................................................................27Camada de Transporte.......................................................................................................................................................28Camada de Aplicao ........................................................................................................................................................28Protocolo IP .......................................................................................................................................................................28Protocolo TCP....................................................................................................................................................................28Formato do Pacote IP ........................................................................................................................................................29

    Classes de Endereos IP ....................................................................................................................................................29Algoritmo de Transmisso de pacotes IP ........... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ..........30Algoritmo de Recepo de pacotes IP.......... ........... ......... ........... ......... ............ ........... ......... ........... .......... ........... ......... .....30

    WINDOWS (2003/XP/2000/98)................................................................................................................................................31Bibliotecas de ligaes dinmicas............. ......... ........... .......... ........... ......... ........... ......... ........... .......... .......... .......... ..........31Arquitetura Distribuda ........... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......32

    MODELO CLIENTE SERVIDOR..................................................................................................................................................322 camadas...........................................................................................................................................................................323 camadas...........................................................................................................................................................................32N camadas .......... ......... ............ ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......32Chamadas remotas .............................................................................................................................................................32Sincronismo e filas de mensagens ......................................................................................................................................33

    CONCEITOS DE INTERNET ........................................................................................................................................................33

    Domain Name Service/System (DNS).......... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......33

  • 7/22/2019 Apostila Para Concurso de TI

    2/153

    2

    Default Gateway......... ........... ......... ........... ......... ........... .......... ........... ......... ........... ......... ........... .......... .......... .......... ..........33Backbone .......... .......... ........... ......... ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........34Intranet .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .34Extranet ..............................................................................................................................................................................35Firewall ..............................................................................................................................................................................35

    BANCO DE DADOS........................................................................................................................................36

    CONCEITOS .............................................................................................................................................................................36Administrao de Dados .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....36Sistemas Gerenciados de Bancos de Dados (SGBDs)........................................................................................................36Linguagem de definio de dados e Linguagem de manipulao de dados ........... ......... ........... .......... .......... .......... ..........38Dicionrio de dados .......... .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .38Arquitetura de banco de dados....... ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........38Bancos de dados relacionais .......... ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........38

    MODELAGEM DE DADOS .........................................................................................................................................................39Modelo Entidade-Relacionamento ........ ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .39Modelo Relacional ......... .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....4012 Regras de Codd .............................................................................................................................................................40lgebra Relacional........... ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... .....41

    NORMALIZAO .....................................................................................................................................................................41

    Dependncia Funcional........... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......42Primeira Forma Normal.....................................................................................................................................................42Segunda Forma Normal .....................................................................................................................................................42Terceira Forma Normal .....................................................................................................................................................43Outras Formas Normais.....................................................................................................................................................43

    AMBIENTE OPERACIONAL .......................................................................................................................................................43Conceito de transao........................................................................................................................................................43Concorrncia......................................................................................................................................................................43Recuperao.............. ......... ............ ........... ......... ........... .......... ........... ......... ........... ......... ........... .......... .......... .......... ..........44Segurana...........................................................................................................................................................................44Independncia dos Dados............ .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .44Integridade ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....45Procedimentos (Stored Procedures) ..............................................................................................................................45Vises (views).................................................................................................................................................................45Gatilhos (Triggers) ........................................................................................................................................................45ndices e otimizao de acesso........... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....45

    BANCOS DE DADOS DISTRIBUDOS..........................................................................................................................................45Caractersticas ...................................................................................................................................................................46Fragmentao e Replicao...............................................................................................................................................46

    BANCO DE DADOS DE OBJETOS...............................................................................................................................................46SQL(ANSI)............................................................................................................................................................................47

    Principais instrues de manipulao de dados ................................................................................................................47Uso do Join.........................................................................................................................................................................47Subconsultas.......................................................................................................................................................................48Elaborao de consultas SQL ............................................................................................................................................48

    SOLUES DE SUPORTE DECISO.....................................................................................................50

    CONCEITOS DE DATA WAREHOUSE E APLICAES .................................................................................................................50Estruturas de armazenamento para Data Warehouse........................................................................................................51Data Marts ............ ........... ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... .....52Metadados no ambiente de inteligncia de negcios. .......... ......... ............ ......... ........... ............ ......... ........... ......... ............52Ferramentas de front-end: principais recursos e aplicaes.............................................................................................52Processo de construo de um Data Warehouse................................................................................................................53

    OLAP(ON-LINE ANALYTICAL PROCESSING)..........................................................................................................................53Arquiteturas OLAP........... ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... .....54

    CONCEITOS DE MODELAGEM DIMENSIONAL ............................................................................................................................54Desenho de modelos dimensionais a partir de modelos transacionais normalizados............... ......... ........... ......... ........... .55

    EIS-ENTERPRISE INFORMATION SYSTEM...............................................................................................................................56ECM-ENTERPRISE CONTENT MANAGEMENT ........................................................................................................................56DATA MINING .........................................................................................................................................................................57

    ANLISE E PROJETO DE SISTEMAS .......................................................................................................58

  • 7/22/2019 Apostila Para Concurso de TI

    3/153

    3

    ANLISE E PROJETO ESTRUTURADO DE SISTEMAS..................................................................................................................58MODELAGEM DE DADOS..........................................................................................................................................................58MODELAGEM FUNCIONAL.......................................................................................................................................................58

    O Dicionrio de Dados ......................................................................................................................................................58DFD e Modelagem de Fluxo de Dados .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... .....59

    MTODOS FUNCIONAIS X MTODOS OO.................................................................................................................................60Mtodos Funcionais .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ............ ......... ........... ......... ........... .60

    Mtodos OO (orientados por objetos).......... ........... ......... ........... ......... ............ ........... ......... ........... .......... ........... ......... .....61ANLISE ESSENCIAL ...............................................................................................................................................................61Anlise Essencial x Anlise Estruturada.......... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .62

    ANLISE E PROJETO ORIENTADO A OBJETOS............................................................................................................................62Modelagem Dinmica ........... ......... ........... ......... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ..........62UML ...................................................................................................................................................................................63Diagrama de casos de uso....... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......63Agregao x composio......... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......64Diagrama de estados.......... ............ ........... ......... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ..........65Diagrama de seqncia........... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......65Diagrama de atividades ........... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....66Diagrama de colaborao/comunicao ............. ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......66Diagrama de implementao ......... ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........67Diagrama de componentes .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .67Utilizao dos diagramas...................................................................................................................................................68

    PADRES DE PROJETOS (DESIGN PATTERNS)............................................................................................................................69USO/CONCEITOS DE FERRAMENTAS DE SUPORTE ANLISE E PROJETOS ORIENTADOS A OBJETOS ..........................................70

    ENGENHARIA DE SOFTWARE..................................................................................................................71

    PRINCPIOS DE ENGENHARIA DE SOFTWARE............................................................................................................................71Engenharia de sistemas......................................................................................................................................................71Ciclo de Vida......................................................................................................................................................................71Processos de Software........................................................................................................................................................71Anlise ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .72Projeto (design) e Codificao...........................................................................................................................................72Verificao x Validao .....................................................................................................................................................72Testes..................................................................................................................................................................................72Garantia da qualidade .......................................................................................................................................................73Manuteno.......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....73

    MODELOS DE CICLO DE VIDA...................................................................................................................................................73Modelo Clssico ou Cascata .......... ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........73Modelo orientado a reuso ........... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .74Modelo Evolucionrio ou Prototipagem .......... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .74Tcnicas de quarta gerao ...............................................................................................................................................74Modelo em Espiral ............ .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .75RAD - Desenvolvimento rpido de aplicaes ......... .......... .......... ........... ......... ........... ......... ........... ......... ............ ......... .....75

    TESTES ....................................................................................................................................................................................76Tipos de Testes ...................................................................................................................................................................76Walkthough.........................................................................................................................................................................77Tcnica de prova de corretitude.........................................................................................................................................77

    Simulaes..........................................................................................................................................................................77Testes de caixa preta..........................................................................................................................................................77Testes de caixa branca .......................................................................................................................................................78

    ENGENHARIA DE REQUISITOS ..................................................................................................................................................78Requisitos ........... ......... ............ ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......79Processo da Engenharia de Requisitos ..............................................................................................................................79Elicitao de requisitos ......................................................................................................................................................79

    ENGENHARIA DE USABILIDADE...............................................................................................................................................80Anlise de requisitos de usabilidade ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......80Projeto de interfaces ..........................................................................................................................................................81

    PROCESSOS DE SOFTWARE ......................................................................................................................................................81ISO 12207................ .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ............ ......... ........... ......... ............81Metodologias geis: Extreme Programming........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... .....82

    Metodologias geis: FDD ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ........... ......... ............ ......... .....83

  • 7/22/2019 Apostila Para Concurso de TI

    4/153

    4

    MDA Model Driven Architecture ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........84MDD Model Driven Development.......... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........85

    RUP........................................................................................................................................................................................85Melhores Prticas do RUP............. ........... ......... ............ ......... ........... ......... ........... .......... .......... .......... .......... .......... ..........86Elementos Estticos do RUP.............................................................................................................................................87Disciplinas do RUP .......... ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... .....88Fases do RUP.....................................................................................................................................................................88

    MODELOS DE MELHORIA DE QUALIDADE DE PROCESSO E PRODUTO ........................................................................................88CMM/CMMI.......................................................................................................................................................................89ISO 9126....... ......... ........... ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... .....92Gesto da Qualidade..........................................................................................................................................................93Atividades da Qualidade Total (ISO 9001) ........ ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ..........94

    MODELAGEM DE PROCESSOS DE NEGCIO.......................................................................................95

    Conceitos bsicos ...............................................................................................................................................................95Identificao e delimitao de processos de negcio............. ............ ......... ........... ......... ........... .......... .......... .......... ..........95Tcnicas de mapeamento de processos (modelos AS-IS) .......... .......... .......... .......... ........... ......... ........... ......... ............ .......96Tcnicas de anlise e simulao de processos...................................................................................................................96Construo e mensurao de indicadores de processos ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........96Tcnicas de modelagem de processos (modelos TO-BE) .......... .......... .......... .......... ........... ......... ........... ......... ............ .......96

    MODELAGEM DE PROCESSOS EM UML ...................................................................................................................................96Notao ......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ........... .96

    Artefatos ......... ........... ......... ............ ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ..........96Atividades ........... ......... ............ ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......97

    GERNCIA DE PROJETOS..........................................................................................................................98

    PMBOK..................................................................................................................................................................................98Conceitos............................................................................................................................................................................98reas de Conhecimento........... ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .......98Anlise de Risco ......... ........... ......... ........... ......... ........... .......... ........... ......... ........... ......... ........... .......... .......... .......... ........100Stakeholders .....................................................................................................................................................................100Ciclo de Vida do Projeto ..................................................................................................................................................101Estrutura da Organizao................................................................................................................................................101

    PROJETOS DE SOFTWARE.......................................................................................................................................................101Estrutura de decomposio de trabalho (WBS) ...............................................................................................................101Planejamento....................................................................................................................................................................102Acompanhamento e Controle ......... ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ........102Grfico de Gantt...............................................................................................................................................................102Ferramentas de Controle de Qualidade...........................................................................................................................103

    COLETA DE MTRICAS DE SOFTWARE...................................................................................................................................103Estimativa de tamanho de software..................................................................................................................................104Anlise de Pontos por Funo (APF)........ ......... ........... .......... ........... ......... ........... ......... ........... .......... .......... .......... ........105

    COCOMO ............................................................................................................................................................................106Implementao Bsica........... ......... ........... ......... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ........106Implementao Intermediria ........ ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ........106Implementao Avanada .............. ........... ......... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ........107

    ANLISE DE DESEMPENHO....................................................................................................................................................107

    Modelos Analticos ........... ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ...107Simulao.........................................................................................................................................................................108Medio de Desempenho....... ......... ........... ......... ........... .......... ........... ......... ........... ......... ........... .......... .......... .......... ........108Mtricas de Desempenho ............ .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ..........108Planejamento de Capacidade...........................................................................................................................................109

    GESTO E RECURSOS INFORMACIONAIS..........................................................................................110

    Servio de TI.....................................................................................................................................................................110Funes de TI ...................................................................................................................................................................110

    MODELOS DE GOVERNANA EM TI:ITIL..............................................................................................................................111Service Support.................................................................................................................................................................111Service Delivery ...............................................................................................................................................................112

    MODELOS DE AUDITORIA EM TICOBIT............................................................................................................................113

    Processos do COBIT........................................................................................................................................................113

  • 7/22/2019 Apostila Para Concurso de TI

    5/153

    5

    Ferramentas de Gerenciamento do COBIT......................................................................................................................114SISTEMAS DE GERENCIAMENTO ELETRNICO DE DOCUMENTOS (GED)................................................................................115

    Aspectos Tcnicos........... .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... .......... ........... ......... ...115Evoluo do GED.............................................................................................................................................................116

    SISTEMAS INTEGRADOS DE GESTO......................................................................................................................................116ERP - Enterprise Resource Planning ...............................................................................................................................116CRM - Customer Relationship Management....................................................................................................................117

    AUTOMAO DE PROCESSOS DE TRABALHO (WORKFLOW) ...................................................................................................118Modelo de Referncia.............. ......... ........... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .....118Workflow no contexto do ERP..........................................................................................................................................119

    GERENCIAMENTO DE PROCESSOS DE NEGCIO (BPM) ..........................................................................................................119E-COMMERCE ........................................................................................................................................................................120

    TCNICAS E LINGUAGENS DE PROGRAMAO..............................................................................121

    LGICA .................................................................................................................................................................................121Lgica Formal........... ......... ............ ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ........121

    ALGORITMOS E ESTRUTURAS DE DADOS...............................................................................................................................121Noes de complexidade de algoritmo......... ........... ......... ........... ......... ............ ........... ......... ........... .......... ........... ......... ...121Tipos de dados..................................................................................................................................................................122Listas Encadeadas.......... .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... ...122

    Pilhas................................................................................................................................................................................122Filas..................................................................................................................................................................................123Vetores e Matrizes ............................................................................................................................................................123rvores balanceadas ......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ............ ......... ........... ......... ..........124Listas invertidas e ndices ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ........... ......... ............ ......... ...125Mtodos de acesso............. .......... .......... ........... ......... ........... ......... ............ ........... ......... ............ ......... ........... ......... ..........125Mtodos de ordenao e pesquisa............... ......... ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ .....125Hashing ......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ..........126

    PROGRAMAO.....................................................................................................................................................................126Programao Estruturada................................................................................................................................................126Modularizao........... ......... ............ ........... ......... ............ ......... ........... ......... ........... ......... ........... .......... .......... .......... ........126Sub-rotinas .......................................................................................................................................................................127Escopo de Variveis .........................................................................................................................................................127Tipos de dados..................................................................................................................................................................127Programao Orientada a Objetos ..................................................................................................................................127Refactoring ........... .......... .......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... ...128

    DESENVOLVIMENTO J2EE.....................................................................................................................................................128Especificao J2EE..........................................................................................................................................................128Conceito de servidor de aplicao ...................................................................................................................................128Container web e EJB........................................................................................................................................................129Padres e anti-padres de projeto J2EE..........................................................................................................................130Padro MVC de Projeto...................................................................................................................................................130

    DESENVOLVIMENTO DE SISTEMAS WEB...........................................................................................132

    HTML...................................................................................................................................................................................132CSS.......................................................................................................................................................................................133JAVASCRIPT...........................................................................................................................................................................133

    Comandos do Javascript ..................................................................................................................................................133Eventos .............................................................................................................................................................................134Funes do Javascript......................................................................................................................................................134

    DHTML................................................................................................................................................................................135ARQUITETURA DE APLICAES PARA AMBIENTE WEB ...........................................................................................................135WEB SERVICES ......................................................................................................................................................................135

    Arquitetura Service-Oriented Architecture (SOA) ............. .......... .......... .......... ........... ......... ........... ......... ............ ......... ...136Tecnologias dos Web Services..........................................................................................................................................136

    PORTAIS CORPORATIVOS ......................................................................................................................................................137Motivao e Caractersticas dos Portais ........... ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ........137Gesto de Contedo .........................................................................................................................................................138JSR 168 - Java Specification Request 168 Portlet Specification ......... .......... .......... ........... ......... ........... ......... ............ .....140WSRP - Web Services for Remote Portlets .......................................................................................................................141

    ACESSIBILIDADE ...................................................................................................................................................................142

  • 7/22/2019 Apostila Para Concurso de TI

    6/153

    6

    Decreto n 5296, de 02/12/2004 ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ...142Modelo de acessibilidade ......... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... ...142Cartilha tcnica................................................................................................................................................................143Recursos tcnicos para implementao da acessibilidade em HTML............. .......... ........... ........... ......... ............ ......... ...144

    SEGURANA DA INFORMAO.............................................................................................................146

    POLTICA DE SEGURANA......................................................................................................................................................146

    Regras gerais da Poltica de Segurana ............ ........... .......... ........... ......... ........... .......... .......... .......... .......... .......... ........146AMEAAS,ATAQUES E ANLISE DE VULNERABILIDADE ........................................................................................................147AUDITORIA DE SISTEMAS E SOLUES BASEADAS EM TECNOLOGIA DA INFORMAO.........................................................147

    Requisitos de Segurana........... .......... .......... ........... ......... ........... ......... ............ ........... ......... ........... ......... ............ ......... ...148CERTIFICAO DIGITAL ........................................................................................................................................................148

    Criptografia......................................................................................................................................................................149Criptografia Simtrica .....................................................................................................................................................149Criptografia Assimtrica..................................................................................................................................................150Hashing ......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ........... ............ ......... ........... ......... ..........150Protocolos Criptogrficos ................................................................................................................................................150Assinatura Digital ............ ......... ........... .......... .......... .......... .......... .......... .......... ........... ......... ........... ......... ............ ......... ...151

  • 7/22/2019 Apostila Para Concurso de TI

    7/153

    7

    Sistemas Computacionais

    Organizao de Computadores

    Um computador organizado basicamente pela UCP, pela Memria e os Dispositivos de Entrada e Sada.

    A UCP ou CPU (Central Processing Unit) responsvel pelo processamento e execuo dos programas armazenados na

    memria principal. Ela composta pela UAL (Unidade Aritmtica e Lgica) e a UC (Unidade de Controle), que busca, inter-preta e controla as instrues e demais componentes do computador.

    Registradores so dispositivos de armazenamento temporrio, localizados na UCP, extremamente rpidos, com capacidadepara apenas um dado (uma palavra). Est localizado no chip, e os seus dados so volteis.

    lgebra booleana

    Os circuitos lgicos so construdos a partir das portas lgicas, que implementam fisicamente as funes booleanas bsicas. Arepresentao padro destes trs blocos lgicos mostrada a seguir.

    NOT AND OR

    Os trs principais operadores da lgebra booleana so os operadores NOT, AND e OR. O operador unrio NOT representado como . O resultado desta operao sobre uma varivel a inverso ou ne-

    gao do valor da varivel. Isto , se a A = 1 ento = 0 e vice-versa.

    O operador AND representado pelo smbolo , como em A B. O resultado da aplicao deste operador sobre vari-veis booleanas igual a 1 somente se todas as variveis forem iguais a 1. Caso contrrio, o resultado 0. Esta ope-rao conhecida como produto lgico.

    O operador OR representado pelo smbolo +, como em A + B. O resultado da aplicao deste operador sobre vari-veis booleanas igual a 1 se pelo menos uma das variveis for igual a 1. Caso contrrio, o resultado 0. Esta ope-rao conhecida como soma lgica.

    Existem vrias leis descritas pela lgebra deBooleque so teis no tratamento das equaes lgicas:

    Lei da identidade: A + 0 = A e A 1 = A;

  • 7/22/2019 Apostila Para Concurso de TI

    8/153

    8

    Lei do zero e do um: A + 1 = 1 e A 0 = 0; Lei da inverso: A + = 1 e A = 0; Lei da comutatividade: A + B = B + A e A B = B A; Lei da associatividade: A + (B + C) = (A + B) + C e A (B C) = (A B) C; Lei da distributividade: A (B + C) = (A B) + (A C) e A + (B C) = (A + B) (A+ C).

    Alm dessas leis existem dois teoremas conhecidos como Teoremas de De Morgan, cuja formulao :

    Sistemas de numerao e representao de dados

    A nossa representao de nmeros baseada em um sistema de 10 algarismos (0 a 9), manipulados em mltiplos de 10. Estarepresentao conhecida como a base 10.

    J os computadores utilizam apenas dois smbolos (0 e 1), representados pela voltagem eltrica (ligado ou desligado). Essaunidade de informao chamada de bit, e a abreviatura de binarydigit, em ingls. Assim, um bit pode representar doisnmeros, o 0 e o 1. Se usarmos dois bits, poderemos representar quatro estados diferentes, com trs bits, j so oito estados, e

    assim por diante. Chamamos de um byte, o conjunto de oito bits, que pode representar 28

    estados (256), ou os nmeros de 0 a255.

    Aritmtica computacional

    As palavras de um computador so compostas por bits e podem representar nmeros armazenados na memria. Estes nme-ros podem ter diferentes significados, como inteiros ou reais, serem positivos ou negativos:

    Complementa Dois: Os computadores manipulam tanto nmeros positivos quanto nmeros negativos, que so re-presentados em complemento a 2. Nesta conveno os nmeros que possuem 0s esquerda so considerados positi-vos e os nmeros com 1s esquerda so considerados negativos. O complemento a 2 obtido invertendo-se o nme-ro binrio e depois somando 1 a este valor.

    Adio e Subtrao: Numa soma os bits so somados um a um da direita para a esquerda, com os carriessendopassados para o prximo bit esquerda. A operao de subtrao usa a adio. O subtraendo simplesmente negado

    antes de ser somado ao minuendo.

    Multiplicao e Diviso: A multiplicao precisa apenas de dois passos principais: o teste do produto e o seu deslo-camento. A diviso a operao recproca da multiplicao. Dentre as operaes aritmticas a que aparece menosfreqentemente nos cdigos dos programas.

    Microprocessadores: Componentes

    O processador (CPU) o componente vital de um sistema de computao, responsvel pela realizao das operaes de pro-cessamento (clculos, entre outros) e de controle durante a execuo de um programa.

    O ciclo bsico de uma instruo : BUSCA -> DECODIFICO -> EXECUO. Outra diviso (para pipelines) : Busca(fetch), Decodificao, Busca do Operando, Execuo e Armazenamento do resultado.

  • 7/22/2019 Apostila Para Concurso de TI

    9/153

    9

    O seu principal componente a UC (Unidade de Controle). O processador conta tambm com uma Unidade Lgica e Aritm-tica (ALU), sendo que a sua ao complementada pelo uso de registradores de processamento. E tambm possui um clock,fundamental para gerar pulsos e manter uma freqncia constante.

    O processador tambm possui trs barramentos: de endereo, de dados e de controle.

    Alguns registradores importantes, que fazem parte da unidade de controle so: PC ( ProgramCounter), IR (Instruction Regis-ter),MAR (Memory Address Register) e MBR (Memory Buffer Register).

    As instrues executadas por um processador so as seguintes:

    Operaes lgicas e aritmticas:somar, subtrair, multiplicar, dividir, and, or, xor, not,... ; Movimentao de dados:memria-CPU, CPU-memria, registrador-registrador, ...; Desvios:alterao da seqncia de execuo das instrues; Operaes de entrada ou sada:para comunicao com dispositivos de I/O.

    Note que o hardware e o software so logicamente equivalentes, ambos podem executar as mesmas funes.

    A funo do processador executar programas armazenados na memria principal. Para isso ele conta tambm com umamemria interna, os registradores. Revisando o passo a passo de execuo de um programa:

    1. Busca instrues da memria para o registrador de instruo (IR)2. Atualiza o contador de programa (PC)3. Determina o tipo de instruo, e (se usar) localiza os dados na memria4. Busca os dados (se houver) para registradores5. Executa a instruo, e armazena resultados6. Volta ao passo 1 para a prxima instruo

    Microprocessadores: Arquitetura

    No incio, mainframes, minicomputadores e microcomputadores possuam claras distines tcnicas, em relao quantidadede memria, palavras de 32, 16 e 8 bits (respectivamente), etc. Mas no existe nenhuma diferena conceitual entre eles, hojeem dia essa diferena ainda menor.

    As arquiteturas de microprocessadores so classificadas pelo nmero e quantidade de instrues:

    RISC (Reduced Instruction Set Computer):o conceito de processadores RISC foi levantado por John Cocke (daIBM), em 1974. O seu argumento era que os processadores s utilizavam 20% das instrues, e quanto menos ins-trues o processador conseguisse interpretar, menor o nmero de transistores (e menor o seu custo). Reduzindo onmero de transistores e instrues a um mnimo possvel, o processador conseguiria executar mais tarefas em umtempo menor. Exemplos so o MIPS, Power PC, Sparc e DEC Alpha.

    CISC (Complex Instruction Set Computer):Em contraste com o RISC, os chips CISC possuem uma grande quan-tidade de instrues diferentes e complexas. Os programadores executam um nmero menor de instrues do pro-cessador, pois cada instruo realiza tarefas mais complexas. Isso reduz o tamanho do cdigo, diminuindo a necessi-dade de memria e armazenamento, e por conseguinte, diminuindo custos. Exemplos so os processadores da Intel.

    Dispositivos perifricos

    Em sistemas tais como microcomputadores e estaes de trabalho, as interfaces de E/S so ligadas ao processador atravs debarramentos de endereo, dados e controle, de maneira semelhante conexo entre memria principal e processador. A orga-nizao tpica de um computador incluindo o sub-sistema de E/S dado:

    A comunicao entre a CPU e os perifricos feita normalmente atravs de uma controladora ou interface, o que permite oCPU agir de maneira independente dos dispositivos, sem comunicao direta:

    Polling: O programa checa o estado do perifrico manualmente. A CPU pode se manter ocupada at o trmino daoperao. Uma soluo checar de tempos em tempos, executando concorrentemente.

    Interrupo:Ao terminar uma operao de E/S, uma interrupo gerada para o processador. Isso elimina a neces-sidade de esperar pelo trmino, e vrias operaes podem ocorrer simultaneamente, atravs de um vetor de interrup-

  • 7/22/2019 Apostila Para Concurso de TI

    10/153

    10

    o. Quando a CPU interrompida, ela pra e transfere a execuo para um local fixo (rotina de servio) para tratara interrupo (diviso por zero, acesso invlido...)

    Spooling: Vm de Simultaneneous peripheral operation on-line, e uma tcnica para aumentar a eficincia dos sis-temas operacionais, base do sistema batch. Um exemplo a utilizao de impressoras.

    Canais de DMA (Direct Memory Access): um recurso da placa me que permite que os dispositivos perifricos(placa de vdeo ou som, disco rgido, CD-ROM) acessem diretamente a memria RAM, sem consumir poder de pro-

    cessamento da CPU (apenas no incio e no final da transferncia). Cada dispositivo pode ocupar apenas um canal.Note que o processador no acessa a memria enquanto a controladora de DMA o faz (um s barramento), mas podeusar a memria cache.

    Conceitos de interrupes

    Inicialmente, quando comeou-se a usar sistemas operacionais, um programa que estivesse sendo executado tomava o contro-le da mquina e s quando o programa encerrava que o controle era devolvido para o sistema operacional. Quando ocorriaalgum problema (por exemplo, um erro no programa) no havia meios do sistema operacional retomar o controle da mquina,exceto com o usurio derrubando o sistema e recarregando o sistema operacional. Ficou ento evidente a necessidade de ha-ver um meio do sistema operacional poder retomar o controle da mquina, em situaes de exceo.

    Tambm ocorreu que as UCP's ficaram mais rpidas e mais eficientes, porm os dispositivos perifricos de E/S compatveis

    progrediram menos em velocidade (ou seja, ficaram comparativamente mais lentos).

    A resposta a estes problemas foi a utilizao do mecanismo de INTERRUPES. Interrupes so modificaes no fluxo decontrole causadas por uma ao externa, geralmente relacionada a Entrada ou Sada. Uma interrupo um sinal de controleenviado por um agente externo (um dispositivo) ao microprocessador, quando um determinado evento detectado. A inter-rupo um sinal de hardware.

    Este mecanismo fora o processador a tratar o evento externo. A deteco de uma interrupo faz com que o processadortransfira o controle para uma rotina de tratamento de interrupo (interrupt handler). A rotina de tratamento de interrupesfaz o processador executar as seguintes aes:

    1. Detectar a fonte da interrupo (o dispositivo que interrompeu)2. Executar as aes apropriadas (que dependem do dispositivo)3.

    Retornar ao ponto do programa em que estava quando iniciou o atendimento interrupo.

    Interrupes de software(traps ou exceptions)so devidas a:

    Algum evento gerado pela execuo de uma instruo, como uma diviso por zero, overflow, cdigo de operao in-vlido, tentativa de acesso a uma rea de memria protegida ou inexistente, etc

    A um evento programado. Trapsso sncronas com o programa, enquanto interrupes associadas E/S so assncronas.

    Estruturas de endereamento

    Os processadores podem acessar a memria de vrios modos diferentes. A flexibilidade em seu acesso garante uma maior

    facilidade e performance ao trabalhar com variveis, arrays, registros, ponteiros e outros dados. Imediato:a instruo contm o prprio operando. Mais rpido, mas a faixa de valores menor. Direto:instruo contm o endereo de memria com o operando. Ex: mov a, 25h (do incio da mem) Indireto:instruo contm o endereo de memria com o apontador para o endereo com o operando. Mais lento. Com registrador:instruo contm o registrador com o operando. Equivalente ao direto. Ex: mov ax, bx Indexado:instruo contm o (registrador + ndice) que aponta para o endereo de memria com o operando. Registrador-base:Instruo contm o (reg. base + deslocamento) que aponta para o endereo com o operando. Com pilha:h um apontador de pilha, e utiliza-se instrues pop/push para obter o operando.

  • 7/22/2019 Apostila Para Concurso de TI

    11/153

    11

    Compiladores, Ligadores e Interpretadores.

    Existem dois tipos de aplicaes para converter um cdigo em uma linguagem para cdigo de mquina:

    Compilador:traduz um programa escrito em uma linguagem de alto nvel em cdigo objeto. Esse cdigo objeto ento ligado (linked) com os mdulos de biblioteca de outros programas, para produzir um executvel. O arquivo ge-rado pode ser ento executado por um carregador, que tambm possui a funo de resolver endereamentos e outrastarefas que dependem do sistema operacional. Exemplo: C, C++, Pascal.

    Interpretador:interpreta e executa um cdigo ao mesmo tempo. Ele no produz um arquivo executvel, pois a suasada depende do cdigo fonte e dos valores de entrada. Exemplo: BASIC.

  • 7/22/2019 Apostila Para Concurso de TI

    12/153

    12

    Sistemas Operacionais

    O sistema operacional responsvel por gerenciar todos os recursos de uma mquina, facilitando a inter-face entre o hardwa-re e o software do computador. Esses recursos incluem o processador (pode ser mais de um), a memria, os dispositivos deentrada e sada (impressora, monitor, teclado, etc), interfaces de rede, entre outros.

    Esse gerenciamento de recursos de uma mquina uma tarefa complexa, que encapsulada pelo sistema. Imagine a tarefa de

    alocar um programa na memria. preciso assegurar que h memria disponvel suficiente, e que o local (endereo) onde oprograma ser alocado pode ser utilizado. Alm disso, todas referncias ao programa devem apontar para este mesmo endere-o, e quando ele terminar, esse espao deve ser liberado. Esta apenas uma das tarefas do sistema operacional (SO).

    Seria impraticvel deixar a tarefa do gerenciamento de todos os recursos de um computador (principalmente o disco, proces-sador e memria) aos programadores. Uma tarefa do sistema operacional fornecer uma interface amigvel para o programa-dor, que pode utilizar funes de alto nvel, como "Abrir Arquivo" ou "Ler Disquete" ao invs de ser obrigado a lidar com asinterfaces complexas de discos rgidos ou unidades de disquetes.

    Tanenbaumcita o exemplo de trs programas tentando imprimir as suas sadas simultaneamente a uma mesma impressora. Oresultado seria catico, pois as linhas de cada programa poderiam sair intercaladas em uma mesma folha. O SO evitaria estecenrio, imprimindo a sada de cada programa em sua devida ordem.

    Conceitos BsicosComo j explicado, o Sistema Operacional um programa que atua entre o usurio e o hardware do computador, e proporcio-na um ambiente para executar programas de forma conveniente e eficiente.

    Em resumo, o SO um alocador de recursose um programa de controle. A sua evoluo dada a seguir:

    Sistema em batch: funcionava atravs da leiturade cartes perfurados, e sua memria possua ape-nas o SO e um espao para o programa do usurio.

    Sistemas multiprogramados: a introduo dosdiscos permitiu que os jobs fossem escalonados pelo SO.Vrios programas podiam residir na memria.

    Sistemas de tempo compartilhado:permitiu a interaode vrios usurios (multitarefa), adicionando o recurso de gerncia de memria e proteo. O PC faz parte desta categoria.

    Sistemas paralelos ou multiprocessados:com o objetivo de aumentar o throughput, mais de um processador compartilhamo barramento, clock, memria, etc. Tambm h aumento da confiabilidade (tolerncia falhas). Um sistema multiprocessadopossui uma programao mais complexa (Fortemente Acoplado).

    Sistemas de tempo real:sistemas crticos, onde o processamento deve ser feito dentro de um limite de tempo.

    Sistemas distribudos:permitem que vrios computadores, que NO compartilham memria ou clock, se comuniquem atra-vs de uma rede para completar uma tarefa. Um sistema distribudo um conjunto de computadores que age como uma m-quina nica (Fracamente Acoplado).

    A arquitetura dos computadores e sistemas operacionais em geral pode ser classificada quanto sua histria:

    Primeira Gerao:vlvulas e painis. Toda a programao era feita em cdigo absoluto. Segunda Gerao:transistores. Computadores mais confiveis, os sistemas batchj podiam ser implementados, lei-

    tura de cartes e linguagens de programao como FORTRAN ou linguagens de montagem.

    Terceira Gerao:as tcnicas de SPOOL, tempo compartilhado e multiprogramao foram implementadas. Vriosterminais em uma mquina.

    Quarta Gerao: circuitos integrados, surgindo a noo de computador pessoal. Tais mquinas passaram a se inter-conectar em rede, tiveram um grande aumento de seu poder de processamento e interatividade (user-friendly).

    Quinta Gerao: comeando em 1991, foram implementados sistemas especialistas, multimdia e distribudos, asimplificao e miniaturizao dos computadores. Os Pentiums da Intel se enquadram nessa categoria.

    Prximas Geraes: especulam sobre os computadores qunticos, que sero a "sexta" gerao de computadores.

  • 7/22/2019 Apostila Para Concurso de TI

    13/153

    13

    Gerenciamento de Processos

    Um programa uma seqncia de instrues que descrevem a execuo de uma tarefa. Um processo um programa emexecuo. O estado de um processo consiste do programa, da prxima instruo a ser executada, os valores das variveis uti-lizadas, e o status dos dispositivos de entrada e sada.

    Para guardar o estado de um processo, criado um vetor de estado, que armazena todas as partes mutveis do processo, ouseja, todos citados acima, menos o programa, que imutvel (em boas prticas de programao).

    Para evitar que um programa acesse a rea de outro, pode ser utilizado um registrador de base e outro de limite, com o espaode endereamento lgico do programa em execuo. O prprio SO possui um mecanismo para se proteger de processos, queso os bits de proteo(modo usurio e modo privilegiado / monitor).

    Processos precisam de tempo de CPU, memria, arquivos e dispositivos de I/O para realizar a sua tarefa. Estes recursos po-dem ser alocados durante a sua criao ou a sua execuo. O Sistema Operacional deve:

    Criar e excluir processos de usurio e de sistema Suspender e retomar processos Dar mecanismo para a sincronizao e comunicao de processos Tratar deadlocks

    O escalonamento de CPU tem origem com a introduo de sistemas multiprogramados. Sempre que um processo precisaesperar (E/S), outro processo pode assumir o uso da CPU.

    O escalonamento desse tipo uma funo fundamental do sistema operacional. Quase todos os recursos do computador soescalonados antes do uso, e esse escalonamento vital para o projeto do Sistema Operacional.

    Diferentes algoritmos de escalonamento de CPU possuem diferentes propriedades e podem favorecer uma classe dos proces-sos em detrimento de outro. Alguns critrios de escalonamento so:

    Ciclo de Burst CPU E/S: Essa ser a medida adotada para caracterizar cada processo em nosso algoritmo. A execuo deum processo comea com um burst (surto) de CPU, que seguido por um burst de E/S, que por sua vez, seguido por outroburst de CPU, depois outro burst de E/S, e assim por diante. Por fim, o burst de CPU final termina com uma requisio dosistema para terminar a execuo.

    Turnaround (tempo de retorno):tambm conhecido como tempo de execuo. Do ponto de vista de um processoespecfico, o critrio importante o tempo necessrio para executar esse processo. O intervalo desde o momento dasubmisso de um processo at o momento do trmino o turnaround. O turnaround a soma dos perodos gastos es-perando para entrar na memria, esperando na fila de processos (ready queue), executando na CPU e realizando E/S.

    Tempo de espera: a soma dos perodos gastos aguardando na fila de espera. Para sistemas interativos (como detempo compartilhado) busca-se uma varincia no tempo de resposta do que minimizar o tempo de resposta mdio.

    Alguns algoritmos de escalonamento de processos so:

    FCFS (First Come First Served):neste escalonamento, o primeiro processo a chegar na fila o primeiro a ser atendido, oque maximiza o seu throughput.

    Round Robin: no escalonamento RR ou circular, os processos so organizados numa fila segundo sua ordem de chegada,sendo ento despachados para execuo. No entanto, ao invs de serem executados at o fim (completion), a cada processo

    concedido apenas um pequeno intervalo de tempo (time sliceou quantum). Caso o processo no seja finalizado neste interva-lo de tempo, ocorre sua substituio pelo prximo processo na fila de processos ativos, sendo o processo em execuo inter-rompido e novamente colocado na fila de processos prontos, mas em seu fim. Isto significa que ao final de seu intervalo detempo, isto , de seu quantum, ocorre a preempo do processador, ou seja, o processador designado para outro processo

    Gerenciamento de Memria

    A memria o local onde os programas e dados so armazenados. A codificao binria ( bits) foi escolhida para representara informao, pois mais confivel (e no mais eficiente!).

    Uma clula de memria a menor unidade enderevel. Cada clula tem um endereo nico, e geralmente ocupam um byte,uma palavra, ou outra unidade.

  • 7/22/2019 Apostila Para Concurso de TI

    14/153

    14

    Para evitar que dados sejam interpretados como instrues, ou vice-versa, um bitextra pode ser usado para cada clula paraindicar o seu contedo. Na verdade vrios bitsextras podem existir com vrias finalidades.

    O processador central l e grava na memria, assim como a controladora de DMA. Os programas devem ser mapeados paraendereos absolutos, e instrues e dados so acessados. Alm disso, vrios programas ficam ao mesmo tempo na memria.O sistema operacional responsvel por:

    Manter um registro das reas ocupadas da memria (e por quem) Decidir quais os processos que iro residir na memria Alocar e desalocar espao na memria, conforme necessrio

    A CPU se comunica com a memria atravs dos registradores MAR e MBR, j explicados anteriormente.

    A amarrao de endereos lgicos (binding de programas executveis) com fsicos (da memria principal) feita:

    em tempo de compilao:usado em arquiteturas antigas, onde o programa era sempre carregado na mesma posioda memria. S faz sentido com monoprogramao

    em tempo de carga: executvel contm mapa de relocao. O programa interpretado, e os endereos corrigidos. em tempo de execuo:h necessidade de hardware especial. Exemplo: registrador base cujo valor sempre soma-

    do a endereo lgico.

    Alocao Contgua Simples

    A memria principal dividida em duas parties: Sistema Operacional (parte baixa) e Processo do Usurio (restante da me-mria). O usurio tem controle total da memria, inclusive da rea do SO (Ex.: DOS). A proteo ( bits de proteo) foi poste-riormente includa, assim como registradores de base e limite.

    Relocao o processo de designar endereos de carga s vrias partes do programa, ajustando cdigo e dados para refletir osendereos designados.

    Alocao Contgua Particionada

    Imposta pela multiprogramao, existem mltiplas parties, e a memria dividida em blocos. Cada partio pode receber

    um processo (programa), mas no considera a existncia do Swapping. Para corrigir fragmentao interna nas parties, o seutamanho passou a ser dinmico, e no fixo. Mas isso tambm pode gerar fragmentao externa (pedaos livres da memria).Algoritmos para alocao contgua: First Fit (primeiro espao),Best Fit(menor espao livre) e Worst Fit (maior espao).

    Swapping: uma tcnica para evitar a fragmentao externa, e lidar com a falta de espao em memria, j que os processosprecisam estar na memria principal para serem executados. Mas nunca deve ocorrer em processos com E/S pendentes.

    Segmentao

    espao lgico do programa dividido em unidades que tm sentido para o programa: segmentos cada segmento pode ser alocado na memria fsica de forma independente

    Paginao

    Mapeamento entre pginas fsicas (frames) e pginas lgicas (pages) mapeamento de endereos atravs de uma tabela de pginas h fragmentao interna cache da tabela de pginas: TLB (Translation Look-aside buffers). Mas como o seu tamanho limitado (de 8-2048

    entradas), h a possibilidade de paginao multinvel, para gerar tabelas de pginas menores

    conjunto de trabalho:pginas referenciadas por um programa. desejvel: espao de endereamento fsico > con-junto de trabalho. Obs.: espao de endereamento virtual > espao de endereamento fsico

  • 7/22/2019 Apostila Para Concurso de TI

    15/153

    15

    Controle de espao livre

    blocos de tamanho varivel: listas encadeadas blocos de tamanho fixo: bitmaps

    Memria Virtual

    Permite que o programa utilize um espao de endereamento virtual maior que a memria fsica total. parecido com swappingmas muito mais eficiente. Com swapping, o espao de endereamento de cada processo tem

    que ser menor que a MP; o que pode ser maior que a MP a soma dos espaos de endereamento de todos os pro-cessos.

    Apenas algumas das pginas virtuais tm um correspondente fsico em cada instante; as demais pginas so marca-das como invlidas na tabela de pginas.

    Quando um programa faz um acesso a uma pgina que no est carregada na MP, a MMU (Memory managementUnit) gera um trap para o sistema operacional, que entra em ao para carregar a pgina requisitada.

    Sistemas de Arquivos

    O Sistema Operacional fornece uma viso lgica uniforme do armazenamento. O conceito abstrato de arquivo serve para or-ganizar os dados e seus acessos. O SO responsvel por:

    Criar e excluir arquivos ou diretrios Fornece suporte a primitivas para manipula-los Mapear arquivos no armazenamento secundrio Fazer backup de arquivos nos meios estveis (no-volteis)

    As informaes so gravadas nos discos em "setores", distribudos ao longo de "trilhas" concntricas marcadas magnetica-mente como setores circulares no disco, conforme ilustrao a seguir.

    O processo de marcao magntica das trilhas e setores em um disco faz parte da "formatao" do disco. Esta formatao dependente do sistema operacional que usar o disco. O sistema operacional DOS define que cada setor armazena 512 bytes.Todas as trilhas armazenam o mesmo nmero de bytes; desta forma, os dados na trilha mais interna estaro gravados commaior densidade, pois o espao fsico menor.

    Tempo de Acesso: o tempo de acesso aos dados de um disco definido como o perodo decorrido entre a ordem de acesso eo final da transferncia dos dados. O tempo de acesso no constante, variando em funo da posio relativa entre o braoatuador (que posiciona as cabeas de leitura e gravao) e o setor que ser lido e portanto s tem sentido falar em tempo m-

    dio de acesso. Os tempos mdios de acesso dos discos atuais so da ordem de 10 ms e resultado das seguintes operaes:

  • 7/22/2019 Apostila Para Concurso de TI

    16/153

    16

    TEMPO DE ACESSO = TEMPO DE (SEEK + LATNCIA + TRANSFERNCIA)

    Tempo de Seek: seek ou busca o tempo gasto na interpretao da localizao do dado no disco (endereo do dadono disco) pela unidade de controle e no movimento mecnico do brao que sustenta a cabea magntica, at alcanara trilha desejada. Este tempo varivel de acesso para acesso. os tempos tpicos de discos rgidos atuais podem vari-ar de aproximadamente 0 ms (referente ao acesso a um setor localizado na mesma trilha onde no momento est a ca-bea de leitura), 3 ms (para acesso a setores em trilhas adjacentes) a at 20 ms (referente ao acesso entre trilhas loca-lizadas nas extremidades do disco). Este tempo diretamente dependente da qualidade dos mecanismos eletromec-nicos que comandam os braos atuadores. Discos de menores dimenses tambm tendem a ser mais rpidos.

    Tempo de Latncia: tambm chamada latncia rotacional, o tempo gasto entre a chegada da cabea de leitura /gravao sobre a trilha e a passagem do setor desejado na posio da cabea. Como o disco permanece constante-mente girando, a cabea magntica s pode ler ou gravar um dado quando o setor endereado est imediatamenteabaixo dela. Portanto, h que aguardar que o disco gire at que o setor endereado fique posicionado abaixo da cabe-a. Esse tempo depende diretamente da velocidade com que o disco gira (5400, 7200 RPM, etc)

    Tempo de Transferncia: o tempo consumido na transmisso dos bits entre computador e disco e vice-versa. Estetempo depende da interface e do disco, que definem o throughput (taxa de transferncia) do disco. Atualmente, de-pendendo da interface, o throughput seria da ordem de at 33 Mbytes/s. Como um setor tem 512 bytes, em 1 ms sepoderia transferir cerca de 33 setores e o tempo de transferncia de um setor seria da ordem de 15 ns.

    Obs.: Os tempos relativos a unidades (drivers) de disquetes so muito maiores que os acima indicados para discos rgidos.

    Driversde disquete giram a aproximadamente 300 rpm e o throughput da ordem de 500 kbytes/s; os tempos de acesso m-dios so da ordem de 60 a 100 ms.

    Aps a formatao fsica, temos um HD dividido em trilhas, setores e cilindros. Porm, para que este disco possa ser reco-nhecido e utilizado pelo sistema operacional, necessria uma nova formatao, chamada de formatao lgica. A formata-o lgica consiste em escrever no disco a estrutura do sistema de arquivos utilizado pelo sistema operacional.

    Um sistema de arquivos um conjunto de estruturas lgicas e de rotinas que permitem ao sistema operacional controlar oacesso ao disco rgido. Diferentes sistemas operacionais usam diferentes sistemas de arquivos. Os principais so:

    FAT16 (File Allocation Table):utilizado pelo MS-DOS, Windows 95 e compatvel com Windows 98, permitindoum mximo de 65526 clusters, que no podem ser maiores que 32 KB. A principal desvantagem desse sistema odesperdcio de espao para parties maiores que 1 Gb, e o seu tamanho mximo por partio limitativo, de 2 Gb.

    VFAT:extenso da FAT16, que ao invs de permitir apenas arquivos com 11 caracteres (8.3), reserva uma rea comnomes grandes, fazendo com que o MS-DOS interprete os arquivos como "Arquiv~1", "Arquiv~2", etc.

    FAT32:utiliza 32 bits de endereamento para cada cluster, de apenas 4 Kb cada. Utilizado pelo Windows 95 e 98, amaior desvantagem o alto nmero de clusters, diminuindo o desempenho. Tamanho mximo de 2 Terabytes.

    NTFS (New Technology File System):sistema de arquivos de 32 bits onde os setores do disco so endereados di-retamente. Cada unidade de alocao possui apenas 512 bytes, evitando o desperdcio de disco. Utilizado pelo Win-dows NT em diante. um sistema mais seguro e confivel que o FAT, alm de flexvel e adaptvel.

    EXT2: um sistema de arquivo utilizado apenas pelo Linux, que apresenta vrios recursos avanados de seguranae suporte a parties de at 4 Terabytes. Outros sistemas relacionados so o EXT3, RaiserFS, etc.

    Gerenciamento de Dispositivos

    O Sistema operacional deve ocultar os detalhes de dispositivos de I/O de usurios. Ele deve:

    Fornecer uma interface geral de driver de dispositivos especficos Fornecer um componente de buffering, armazenamento em cache spooling.

    Para evitar que a CPU fique presa por longos perodos em Entrada e Sada, podem existir processadores especializados deE/S, de baixo custo.

    Alm disso, o sistema operacional guarda uma tabela de status de dispositivos, com o registro de pedidos de I/O simult-neos.

    O DMA utilizado para evitar que transferncias de I/O rpidas (sncronas), como fitas, disco ou rede de comunicao, nointerrompam o CPU a cada byte transferido. O DMA transfere diretamente para a memria, sem interrupo da CPU. Umainterrupo gerada apenas a cada bloco, para encontrar um buffere configurar os registradores (com endereos inicial e fi-

  • 7/22/2019 Apostila Para Concurso de TI

    17/153

    17

    nal). Como a memria s pode transferir 1 palavra / ciclo, a CPU s vezes concorre com o DMA para realizar operaes deacesso memria (apenas um barramento).

    O cdigo ASCII um mapeamento de bits para caracteres de texto, por exemplo: 0(47), A(65) e a(97).

    Concorrncia

    A programao concorrente pode ocorrer de duas formas diferentes:

    Processos:ocupam espaos de endereos diferentes, e se comunicam usando pipesoferecidos pelo sistema opera-cional.

    Threads:ocupam o mesmo espao de endereo de uma aplicao, e a comunicao feita por um mecanismo dalinguagem de programao (a JVM do Java oferece um mecanismo multithreading)

    Em alguns tipos de aplicaes, threadsso essenciais, como no caso de aplicativos com interface grfica, em que o programapode esperar interao do usurio enquanto processa alguma tarefa. Outro exemplo so servidores que podem esperar porrequisies de novos clientes enquanto lidam com requisies j enviadas.

    Para que dois ou mais processos possam ter acesso a um mesmo recurso compartilhado, existe um mecanismo que controlaeste acesso, chamado de mecanismo de sincronizao. Enquanto um processo estiver acessando determinado recurso, todosos outros que queiram acess-lo devero esperar. Isso se chama Excluso Mtua.

    A tentativa de implementar a excluso mtua nos programas traz alguns problema. Os mais freqentes so:

    Velocidade de execuo dos processos:quando um processo mais rpido obrigado esperar que um lento use orecurso e o libere. Um gargalo gerado pela consistncia dos processos onde o mais rpido ficar limitado velocida-de do mais lento. O sistema todo fica lento como conseqncia

    Starvation:o SO determina as prioridades dos processos, de duas formas diferentes: por escolha aleatria ou porprioridades. Quando a escolha aleatria, existir a probabilidade de um processo nunca ser escolhido, quando foruma escolha por prioridades, um processo de menor prioridade nunca receber o acesso ao recurso, e ai este proces-so nunca executar sua rotina.