Baixe o app para aproveitar ainda mais
Prévia do material em texto
AN02FREV001/REV 4.0 1 PROGRAMA DE EDUCAÇÃO CONTINUADA A DISTÂNCIA Portal Educação CURSO DE TÉCNICO DE INFORMÁTICA Aluno: EaD - Educação a Distância Portal Educação AN02FREV001/REV 4.0 2 CURSO DE TÉCNICO DE INFORMÁTICA MÓDULO I Atenção: O material deste módulo está disponível apenas como parâmetro de estudos para este Programa de Educação Continuada. É proibida qualquer forma de comercialização ou distribuição do mesmo sem a autorização expressa do Portal Educação. Os créditos do conteúdo aqui contido são dados aos seus respectivos autores descritos nas Referências Bibliográficas. AN02FREV001/REV 4.0 3 SUMÁRIO MÓDULO I 1 HARDWARE 1.1 O QUE É UM COMPUTADOR? 1.1.1 Estrutura básica 1.1.2 Componentes 1.1.2.1 Memória principal 1.1.2.2 Placas e chipsets 1.1.2.3 Discos rígidos e RAID 1.1.2.4 Placas de vídeo, de som e de rede e modems 1.1.2.4.1 Placa de vídeo 1.1.2.4.2 Placa de som 1.1.2.4.3 Placa de rede 1.1.2.4.4 Modems 1.1.3 Periféricos 1.1.3.1 Dispositivos de entrada 1.1.3.1.1 Teclado 1.1.3.1.1 Mouse 1.1.3.2 Dispositivos de saída 1.1.3.2.1 Monitores 1.1.4 Demais exemplos de tipos de computadores 1.1.5 Organização dos computadores 1.1.5.1 Processador e memória 1.1.6 Armazenamento de dados 1.2 LABORATÓRIO MÓDULO II 2 SOFTWARE AN02FREV001/REV 4.0 4 2.1 PARA QUE SERVEM OS SOFTWARES? 2.1 SISTEMA OPERACIONAL 2.2 TIPOS DE SOFTWARES 2.3 GERENCIADOR DE PROCESSOS 2.4 GERENCIADOR DE ALOCAÇÃO DE DADOS (MEMÓRIA) 2.5 GERENCIADOR DE AMBIENTE GRÁFICO 2.6 LABORATÓRIO 2.6.1 Instalação do sistema operacional Windows 2.6.2 Instalação do sistema operacional Linux MÓDULO III 3 CONCEITO DE ALGORITMO 3.1 LINGUAGEM 3.1.1 Descrição narrativa 3.1.2 Fluxograma convencional 3.1.3 Pseucódigo 3.2 LINGUAGENS DE PROGRAMAÇÃO 4 LÓGICA DE PROGRAMAÇÃO 4.1 FLUXOS 4.2 PROCESSO LÓGICO 4.3 SCRIPT 5 ESTRUTURA DE PROGRAMAÇÃO 5.1 TIPOS DE DADOS 5.1.1 Constantes 5.1.2 Variáveis 5.2 ARRAY 5.3 MATRIZ 5.4 CONDICIONAIS IF, THEN E ELSE 5.5 REPETIÇÕES FOR/WHILE 5.5.1 Repetições while 5.5.2 Repetições for 5.6 OPERADORES ARITMÉTICOS, RELACIONAIS E LÓGICOS AN02FREV001/REV 4.0 5 5.6.1 Operadores aritméticos 5.6.2 Operadores relacionais 5.6.3 Operadores lógicos 5.7 PROGRAMAÇÃO WEB 5.8 PEQUENO DICIONÁRIO COM AS PRINCIPAIS FRASES E PALAVRAS ENVOLVENDO HARDWARE E SOFTWARE 5.9 LABORATÓRIO MÓDULO IV 6 BANCO DE DADOS 6.1 ARMAZENAMENTO E GERENCIAMENTO DE DADOS (SGBD) 6.2 EXEMPLOS DE BANCO DE DADOS E DE SGBDs 6.2.1 Structured query language (SQL) 6.3 ORGANIZAÇÃO DE UM BANCO DE DADOS (MODELOS DE DADOS) 6.3.1 Modelo hierárquico 6.3.2 Modelo em rede 6.3.3 Modelo relacional 6.3.4 Modelo orientado a objetos 6.5 ARQUITETURA DE SGBS 6.6 LABORATÓRIO MÓDULO V 7 PROCESSO DE SOFTWARE 7.1 MODELOS DE PROCESSO DE SOFTWARES 7.1.1 Modelo em cascata 7.1.2 Modelo de desenvolvimento evolucionário 7.1.3 Modelo espiral 7.1.4 Modelo incremental 7.1.5 Modelo RAD 7.1.6 Modelo de desenvolvimento formal de sistemas 7.1.7 Modelo de desenvolvimento orientado a reuso AN02FREV001/REV 4.0 6 7.1.8 Modelo em V 7.1.9 Modelo do processo unificado 7.10 Modelo paxis MÓDULO VI 8 REDES 8.1 O PORQUÊ DEVEMOS USAR REDES 8.2 INFRAESTRUTURA DE UMA REDE 8.3 MEIOS FÍSICOS DE TRANSMISSÃO 8.3.1 Par trançado 8.3.2 Cabo coaxial 8.3.3 Fibra ótica 8.4 TOPOLOGIAS 8.4.1 Multiponto – barramento 8.4.2 Ponto a ponto 8.4.2.1 Estrela 8.4.2.2 Árvore 8.4.2.3 Anel 8.4.2.4 Totalmente ligada (completa) 8.4.2.5 Parcialmente ligada (irregular) 8.5 ARQUITETURA DE REDES 8.6 PROTOCOLO 8.7 COMO FUNCIONA UMA REDE DE COMPUTADORES 8.7.1 Modelo de referência OSI 8.7.1.1 Camada física 8.7.1.2 Camada de enlace de dados 8.7.1.3 Camada de rede 8.7.1.4 Camada de transporte 8.7.1.5 Camada de sessão 8.7.1.6 Camada de apresentação 8.7.1.7 Camada de aplicação 8.7.2 Modelo de referência TCP/IP AN02FREV001/REV 4.0 7 9 TÉCNICAS DE LEITURA INSTRUMENTAL 10 TEXTOS TÉCNICOS, PUBLICITÁRIOS, CLASSIFICADOS E TELEGRÁFICOS 11 LABORATÓRIO REFERÊNCIAS BIBLIOGRÁFICAS AN02FREV001/REV 4.0 8 MÓDULO I 1 HARDWARE O hardware é a parte física do computador. É toda a parte que podemos “xingar” e podemos tocar com as mãos. Os hardwares são componentes eletrônicos, circuitos e placas. Pode ser qualquer computador ou qualquer equipamento que necessite de algum suporte computacional. 1.1 O QUE É UM COMPUTADOR? O computador é uma máquina que processa informações eletronicamente na forma de dados e pode ser programado para as mais diversas tarefas. Os computadores variam em termos de tamanho e capacidade. Em uma ponta da escala estão os supercomputadores: computadores muito grandes com centenas de microprocessadores vinculados que executam cálculos extremamente complexos. Na outra ponta estão os computadores minúsculos: com menos capacidade e com processamento limitado de tarefas. 1.1.1 Estrutura básica Um computador é formado por portas de entrada e saída, processadores, memórias, placas, barramentos, fios que ligam os dispositivos entre outros equipamentos que realizam o suporte para essa máquina funcionar. AN02FREV001/REV 4.0 9 FIGURA 1 - ESTRUTURA BÁSICA DE UM COMPUTADOR FONTE: UFU, 2012. FIGURA 2 - UNIDADES BÁSICAS DO COMPUTADOR FONTE: Carvalho, 2007. AN02FREV001/REV 4.0 10 FIGURA 3 - PRINCIPAIS PARTES DE UM COMPUTADOR FONTE: Carvalho, 2007. 1.1.2 Componentes 1.1.2.1 Memória principal A memória principal armazena os dados necessários utilizados durante os processos de operações que são realizados pela Central Processing Unit (CPU) – em português, unidade central de processamento. Essa memória se divide em outras duas, conhecidas como RAM e ROM. A memória Random Acess Memory (RAM) realiza a função de leitura e gravação de programas, mas tudo é perdido quando o computador é desligado. Já a memória Read Only Memory (ROM) realiza AN02FREV001/REV 4.0 11 só uma função, a de leitura das informações gravadas pelo fabricante. Essa memória tem a capacidade de verificação de funcionamento e localização de partes do computador. Existe mais uma memória, a chamada Cache, que realiza uma função de apoio, guardando informações que a CPU precisa para realizar a execução de algum programa (UFU, 2012). 1.1.2.2 Placas e chipsets A placa-mãe é realmente uma placa onde são encaixados o processador, as memórias, fios, barramentos entre outros dispositivos. Nessa placa ocorrem as transferências de todos os dados usados para executar os programas e as funcionalidades de todos os dispositivos ali encontrados (TRIPOD, 2012). FIGURA 4 - PLACA MÃE FONTE: Tripod, 2012. AN02FREV001/REV 4.0 12 FIGURA 5 - PLACA MÃE FONTE: Torves, 2012. O processador é o principal componente de um computador, mas dentro de um computador há outros periféricos, como memórias, HDs e placas de vídeo, entre outros. A função da placa-mãe é criar maneiras para que o processador possa comunicar-se com todos estes componentes com a maior velocidade e confiabilidade possíveis. Os chips controladores da placa-mãe ficavam espalhados por toda ela, mas nos dias atuais os fabricantes preferem que esses chips fiquem mais perto uns dos outros para possibilitar que a placa-mãe possa realizar suas tarefas com maior rapidez (MORIMOTO, 2007). Os chipsets são circuitos de apoio ao processador para controlar o funcionamento da placa-mãe(OLIVEIRA, 2001). Um chipset é formado por três tipos AN02FREV001/REV 4.0 13 de circuitos integrados, conhecidos como: o controlador de sistema; o Buffer de dados; o controlador de periféricos. O controlador de sistema, também chamado ponte norte, possui os barramentos rápidos, os controladores de memórias e o chipset de vídeo. O Buffer de dados administra todo o processo de transferência de dados entre a memória RAM e o processador. O controlador de periféricos, conhecido como ponte sul, possui os barramentos mais lentos, os controladores de som, de rede, de portas seriais e paralelas e de drives (MORIMOTO, 2007; OLIVEIRA, 2001). FIGURA 6 - ASPECTO DE UM CHIPSET FONTE: Oliveira, 2001. FIGURA 7 - ASPECTO DE UM CHIPSET FONTE: Fórum da Turma, 2012. AN02FREV001/REV 4.0 14 FIGURA 8 - PONTE NORTE DO CHIPSET (DISSIPADOR REMOVIDO) FONTE: Morimoto, 2007. FIGURA 9 - PONTE SUL FONTE: Morimoto, 2007. AN02FREV001/REV 4.0 15 1.1.2.3 Discos rígidos e RAID O disco rígido – ou HD (sigla derivada do termo inglês hard disc) – é um equipamento que armazena arquivos e programas e é um dispositivo não volátil de alta capacidade. Os discos rígidos são formandos por uma sequência de discos metálicos, onde ocorrem as leituras e gravações (MORIMOTO 2002; UNIFENAS, 2012). FIGURA 10 - DISCO RÍGIDO FONTE: Kioskea.net, 2013. AN02FREV001/REV 4.0 16 FIGURA 11 - ASPECTOS DA ESTRUTURA DO HD FONTE: Unifenas, 2012. De acordo com a Unifenas (2012), a sequência de procedimentos de acesso a um disco rígido é mostrada a seguir: o programa chama um bloco de dados; os dados são procurados na memória; os dados são procurados também no Buffer interno pela placa controladora; os dados são lidos do disco rígido. FIGURA 12 - ACESSO AO HARD DISK VIA CACHE FONTE: Unifenas, 2012. Adaptado por Francielly, 2013. AN02FREV001/REV 4.0 17 A preparação de um disco rígido é composta de três processos, a formatação física, a partição lógica e a formatação lógica. A formatação física é de baixo nível e feita pelo fabricante. É uma formatação física porque é criada uma estrutura formada por trilhas, cilindros e setores que compõem as superfícies do disco rígido (UNIFENAS, 2012). FIGURA 13 - ESTRUTURA LÓGICA DE UM DISCO RÍGIDO FONTE: Unifenas, 2012. Quando a formação física chega ao fim, é o momento da partição lógica acontecer. É na partição lógica que o disco rígido é divido em partes para a instalação dos sistemas operacionais (UNIFENAS, 2012). Os dados estão fragmentados no disco rígido e essa fragmentação influencia na performance de pesquisa e recuperação desses dados. Por haver muitos dados no disco rígido, a pesquisa pode ser demorada pela falta de contiguidade nesses dados. Para melhorar a performance de pesquisa e AN02FREV001/REV 4.0 18 recuperação são usados programas que realizam a desfragmentação dos dados que estão armazenados no disco rígido, tentando organizar os dados para desfazer a falta de contiguidade deles (UNIFENAS, 2012). FIGURA 14 - DESFRAGMENTAÇÃO FONTE: Unifenas, 2012. O conjunto de vários discos rígidos é chamando de RAID. Quando muitos discos rígidos estão juntos pode-se acarretar numa grande capacidade de armazenamento de dados, com ou sem armazenamento redundante (UNIFENAS, 2012). Na figura a seguir, é ilustrado o mapeamento para um RAID nível 0. FIGURA 15 - MAPEAMENTO PARA UM RAID NÍVEL 0 FONTE: Unifenas, 2012. AN02FREV001/REV 4.0 19 1.1.2.4 Placas de vídeo, de som e de rede e modems 1.1.2.4.1 Placa de vídeo Na placa-mãe são conectados praticamente todos os componentes de um computador, especialmente o processador, a memória RAM, o disco rígido e a placa de vídeo. A placa de vídeo realiza a comunicação entre o processador e o monitor. Sem esse periférico o computador não conseguiria desenhar na tela do monitor e nada apareceria. A definição de imagem está atrelada ao número de cores. Quanto maior a quantidade de cores, melhor será a imagem. Uma boa placa de vídeo é essencial para ter uma excelente imagem. Os computadores suportam diferentes monitores, pois eles possuem uma placa de vídeo instalada neles adequada para cada computador e que manda as imagens a serem mostradas para esses monitores. Cada computador consegue detectar qual é a placa de vídeo instalada e envia para os monitores os dados que devem ser visualizados. Essa placa recebe os dados que são mandados para uma memória de vídeo e cada ponto da tela do monitor representa cada posição dessa memória. A compatibilidade entre monitor e placa de vídeo existe e precisa ser respeitada, senão pode provocar funcionamento inadequado (SANTOLAIA, 2012). A resolução está ligada com a quantidade de pontos de imagem que são manipulados pelo computador. As informações das imagens são manipuladas digitalmente e quanto maior for a quantidade de cores mais sofisticada é a placa de vídeo para processar os pontos da imagem (SANTOLAIA, 2012). AN02FREV001/REV 4.0 20 FIGURA 16 - PLACA DE VÍDEO FONTE: Disponível em: <wikipedia.org/wiki/Placa_de_vídeo>. Acesso em 10/10/2012. 1.1.2.4.2 Placa de som Placa de som é um dispositivo de hardware que envia e recebe sinais sonoros entre equipamentos de som e um computador executando um processo de conversão com um mínimo de qualidade e também para gravação e edição. FIGURA 17 - PLACA DE SOM FONTE: Pereira, 2012. AN02FREV001/REV 4.0 21 1.1.2.4.3 Placa de rede A placa de rede é um dispositivo usado pelo computador para acessar uma rede de computadores utilizando os equipamentos específicos para tal processo (PEREIRA, 2012). FIGURA 19 - PLACA DE REDE FONTE: Pereira, 2012. FIGURA 20 - PLACA DE REDE FONTE: Pereira, 2012. AN02FREV001/REV 4.0 22 1.1.2.4.4 Modems O modem realiza a modulação de sinais digitais em ondas analógicas para serem transmitidas por uma linha telefônica, depois demodula esses sinais e os converte para sinais digitais. Existem os modems para acesso discado e os modems para banda larga. Aqueles sempre estão instalados dentro de computadores ou ligados a alguma porta serial e esses são Universal Serial Bus (USB), Wi-Fi e Ethernet (CARAVALHO, 2007). Os modems conhecidos como Asymmetric Digital Subscriber Line não precisam realizar a conversão de sinais diferentemente dos modems de acesso discado, que realizam tais conversões (CARAVALHO, 2007). FIGURA 18 - MODEM FONTE: B2B, 2012. AN02FREV001/REV 4.0 23 1.1.3 Periféricos Os dispositivos de entrada e saída (periféricos), também conhecidos como input e output, são usados pelo computador para receber e enviar informações para o meio externo (CARAVALHO, 2007). Alguns dispositivos de entrada e saída são mostrados a seguir, de acordo com Carvalho (2007): teclados; monitores; drive de disquetes; webcams; placas de captura de vídeo, entre outros. 1.1.3.1 Dispositivos de entrada Os dispositivos de entrada convertem as informações em dados que possam ser processados pelo sistema digital do computador (CARAVALHO, 2007). Podem ser citados de acordo com Carvalho (2007) como: teclado; mouse; scanner; microfone; joystick; câmera filmadora; câmera fotográfica digital, entre outros. AN02FREV001/REV 4.0 24 1.1.3.1.1 Teclado A seguir, são mostrados um teclado de computador e suas principais teclas e funções. TABELA 1 - FUNÇÕES DE UM TECLADO FONTE: Carvalho, 2012. AN02FREV001/REV 4.0 25 FIGURA 21 - TECLADO FONTE: Jetdicas, 2013.1.1.3.1.1 Mouse O mouse é um dispositivo orientado por uma seta na tela do computador que possibilita a realização de tarefas – de forma que o mouse é uma extensão das próprias mãos. FIGURA 22 - MOUSE FONTE: Kangaroo, 2012. AN02FREV001/REV 4.0 26 1.1.3.2 Dispositivos de saída Os dispositivos de saída decodificam os dados em informação que é entendida pelo usuário do computador. Podem ser citados como dispositivos de saída o monitor de vídeo, a caixa de som, a impressora, entre outros. 1.1.3.2.1 Monitores O monitor de vídeo é um dispositivo de saída. Funciona de uma forma semelhante a uma televisão, exibindo imagens para o usuário. Possui uma qualidade de imagem melhor que o habitual para televisores. FIGURA 23 - MONITOR EM UM COMPUTADOR FONTE: Nascimento, 2012. AN02FREV001/REV 4.0 27 1.1.4 Demais exemplos de tipos de computadores Nessa sessão, vamos classificar os computadores pelo porte, ou seja, pela capacidade de processamento, pelas dimensões e pelas funções. O palmtop é um computador conhecido como computador de mão, usado para realização de trabalhos mais simples que necessitam de pouco processamento (BIT A BIT, 2012). O netbook é um computador portátil de dimensões menores, menor peso e configuração mais simples do que um notebook (BIT A BIT, 2012). O tablet é um aparelho que possui sensibilidade ao toque em sua tela e hoje em dia pode ser ligado a alguns teclados (BIT A BIT, 2012). Desktop, também conhecido como computador de mesa, é usado como computador pessoal ou para trabalho (BIT A BIT, 2012). O computador estação de trabalho (workstation) realiza trabalhos individuais que exigem grande capacidade de processamento (BIT A BIT, 2012). Os computadores chamados de servidor de rede são usados em redes para prestar serviços aos usuários (BIT A BIT, 2012). Os mainframes são computadores de grande porte usados por bancos e órgãos de governo e os supercomputadores são destinados para tarefas que exigem volumes enormes de processamento, como pesquisas científicas e previsão do tempo (BIT A BIT, 2012). 1.1.5 Organização dos computadores Um computador é um sistema interconectado de processadores, memórias e dispositivos de entrada e saída. O computador é representável por uma hierarquia de níveis de abstração, microeletrônica (mais baixo) e sistema operacional (mais alto). AN02FREV001/REV 4.0 28 FIGURA 24 - NÍVEL DE ABSTRAÇÃO FONTE: Silva e Casillo, 2012. FIGURA 25 - MODELO DE VON NEUMANN FONTE: Silva e Casillo, 2012. AN02FREV001/REV 4.0 29 FIGURA 26 - MODELO DE VON NEUMANN FONTE: Silva e Casillo, 2012. FIGURA 27 - MODELO DE VON NEUMANN FONTE: Silva e Casillo, 2012. AN02FREV001/REV 4.0 30 No modelo de Von Neumann, podem ser encontradas: a Memória, que possui um conjunto de posições endereçáveis; as Palavras, que representam as posições da memória onde se encontram os dados e instruções. Também pode ser encontrada a Palavra, que é uma unidade básica de transferência usada pela memória. Podem ser encontrados os Dados, Instruções e Endereços que são codificados em binários. E, por fim, podem ser encontrados os Programas, que são instruções colocadas numa sequência de endereços definida de forma dinâmica em tempo de execução (SILVA; CASILLO, 2012). FIGURA 28 - MÁQUINA DE VON NEUMANN FONTE: Silva e Casillo, 2012. AN02FREV001/REV 4.0 31 1.1.5.1 Processador e memória Na figura a seguir, é mostrada a organização de um computador simples. A unidade central de processamento (CPU) é o cérebro de um computador e executa os programas armazenados na memória principal, buscando suas instruções, examinando-as e executando-as uma atrás da outra. A CPU é responsável por buscar instruções na memória principal e determinar o seu tipo. Nessa central de processamento encontra-se uma memória com alta velocidade usada para armazenar os resultados temporários. Tal memória é composta por uma quantidade de registradores com tamanhos e funções diferentes (TANENBUM, 2007). FIGURA 29 - MEMÓRIAS DE COMPUTADOR FONTE: Waz, 2013. AN02FREV001/REV 4.0 32 FIGURA 30 - PROCESSADOR COMPUTADOR FONTE: Disponível em: <http://pt.wikipedia.org/wiki/Microprocessador>. Acesso em: 2010. FIGURA 31 - CPU FONTE: Tanenbaum, 2007. http://pt.wikipedia.org/wiki/Microprocessador AN02FREV001/REV 4.0 33 FIGURA 32 - MEMÓRIA FONTE: Silva e Casillo, 2012. FIGURA 33 - EXECUÇÕES DE INSTRUÇÕES FONTE: Silva e Casillo, 2012. AN02FREV001/REV 4.0 34 1.1.6 Armazenamento de dados O computador usa o sistema binário para a representação dos dados. Cada zero ou um é chamando de bit e o conjunto deles representa conjuntos de valores. Para um entendimento melhor sobre a capacidade de armazenamento de dados dos computadores, a seguir, são mostrados os valores de bits e bytes (AVARÉ, 2007). 1 byte = 8 bits; 1 kilobyte ou kbyte ou KB = 1024 bytes; 1 megabyte ou mbyte ou MB = 1024 kilobytes; 1 gigabyte ou gbyte ou GB = 1024 megabytes; 1 terabyte ou tbyte ou TB = 1024 gigabytes. De acordo com Avaré (2007), é utilizando os bytes que se determina o comprimento da palavra de um computador, como mostrado a seguir: 8 bits = palavra de 1 byte; 16 bits = palavra de 2 bytes; 32 bits = palavra de 4 bytes. Ainda de acordo com Avaré (2007), com a transmissão de dados entre computadores, são usadas medições relacionadas a bits e não a bytes, como mostrados a seguir: 1 kilobit ou Kb = 1024 bits; 1 megabit ou Mb = 1024 kilobits; 1 gigabit ou Gb = 1024 megabits. AN02FREV001/REV 4.0 35 1.2 LABORATÓRIO O primeiro passo para montar um computador é saber lidar com a energia eletrostática do próprio corpo. Quando uma pessoa está eletricamente carregada e toca em uma peça de metal faz com que seus elétrons sejam transferidos para esta peça. Placa-mãe, placa de vídeo, memória, HD, entre outros equipamentos podem ser danificados por essa transferência de elétrons. É necessário descarregar a energia do corpo, antes de manusear as peças do computador, em um ambiente que seja composto por algum material condutor por natureza. A placa-mãe precisa ser compatível com o gabinete para não causar invalidez dessa placa. A fonte de alimentação deve ser de acordo com as atividades que serão realizadas no computador como utilização da internet, atividades de escritórios, desenvolvimento de jogos, entre outras. FIGURA 34 - PULSEIRA ANTIESTÁTICA FONTE: Johncd, 2011. Essa pulseira antiestática evita que os equipamentos, peças e dispositivos, sejam danificados. A ponta da pulseira deve ser presa em uma estrutura de metal para eliminar a estática do corpo da pessoa que vai montar o computador. Caso a pessoa não tenha uma pulseira como essa, basta colocar as mãos na fonte para tirar a estática por meio desse equipamento, como mostrado na figura a seguir (JOHNCD, 2011). AN02FREV001/REV 4.0 36 FIGURA 35 - FONTE FONTE: Johncd, 2011. As próximas figuras demonstram o jeito correto de manusear peças e dispositivos. FIGURA 36 - PLACA-MÃE FONTE: Johncd, 2011. AN02FREV001/REV 4.0 37 FIGURA 37 - DISCO RÍGIDO FONTE: Johncd, 2011. FIGURA 38 - MEMÓRIA FONTE: Johncd, 2011. AN02FREV001/REV 4.0 38 FIGURA 39 - INSTALAÇÃO DA MEMÓRIA FONTE: Johncd, 2011. FIGURA 40 - PROCESSADOR FONTE: Johncd, 2011. AN02FREV001/REV 4.0 39 FIGURA 41 - PLACA DE EXPANSÃO FONTE: Johncd, 2011. As próximas figuras demonstramcomo um gabinete é por dentro. O primeiro passo para visualizar o interior de um computador é a retirada dos parafusos e das placas de metais que envolvem o gabinete. FIGURA 42 - PARAFUSOS E PLACAS DE METAIS DO GABINETE FONTE: Johncd, 2011. AN02FREV001/REV 4.0 40 FIGURA 43 - GABINETE FONTE: Johncd, 2011. Para fixar a placa-mãe no gabinete, primeiramente serão necessárias as seguintes peças mostradas na figura a seguir. AN02FREV001/REV 4.0 41 FIGURA 44 - PEÇAS PARA FIXAR A PLACA-MÃE NO GABINETE FONTE: Johncd, 2011. AN02FREV001/REV 4.0 42 Com o manuseio correto da placa-mãe, a encaixe dentro do gabinete verificando sempre para que seus terminais estejam com suporte para manter um bom contato (JOHNCD, 2011). FIGURA 45 - INSTALAÇÃO DA PLACA MÃE FONTE: Johncd, 2011. FIGURA 46 - INSTALAÇÃO DO PROCESSADOR FONTE: Johncd, 2011. AN02FREV001/REV 4.0 43 No momento de instalar o processador, levante primeiro a alavanca e com as orientações do guia do usuário, que deve acompanhar o processador ou o computador, encaixe corretamente o processador. Em seguida, abaixe a alavanca para travar o processador. O próximo passo é colocar a pasta térmica para ligar o processador com o cooler, como mostrado na próxima figura (JOHNCD, 2011). FIGURA 47 - INSTALAÇÃO DO PROCESSADOR E DO COOLER (a) pasta térmica (b) conexão do cooler (c) ligação do cabo do cooler na CPU-FAN para seu funcionamento FONTE: Johncd, 2011. O próximo passo é a instalação das memórias, como é mostrado na figura a seguir (48). Em seguida, todas as unidades de disco devem ser instaladas (Figura 49). AN02FREV001/REV 4.0 44 FIGURA 48 - INSTALAÇÃO DAS MEMÓRIAS FONTE: Johncd, 2011. FIGURA 49 - INSTALAÇÃO DAS UNIDADES DE DISCO FONTE: Johncd, 2011. AN02FREV001/REV 4.0 45 Para instalar a placa de rede, basta localizar o slot PCI dentro do gabinete para o encaixe dessa placa. FIGURA 50 - SLOT PCI E INSTALAÇÃO DA PLACA DE REDE (a) slot PCI (b) instalação da placa de rede FONTE: Martins, 2009. O próximo passo é conectar todos os cabos de acordo com o manual do usuário – que deve acompanhar todos os equipamentos de um computador – e as outras placas seguindo a anatomia da placa-mãe ilustrada na figura a seguir. AN02FREV001/REV 4.0 46 FIGURA 51 - ANATOMIA DA PLACA-MÃE FONTE: Jordão, 2012. FIM DO MÓDULO I AN02FREV001/REV 4.0 47 PROGRAMA DE EDUCAÇÃO CONTINUADA A DISTÂNCIA Portal Educação CURSO DE TÉCNICO DE INFORMÁTICA Aluno: EaD - Educação a Distância Portal Educação AN02FREV001/REV 4.0 48 CURSO DE TÉCNICO DE INFORMÁTICA MÓDULO II Atenção: O material deste módulo está disponível apenas como parâmetro de estudos para este Programa de Educação Continuada. É proibida qualquer forma de comercialização ou distribuição do mesmo sem a autorização expressa do Portal Educação. Os créditos do conteúdo aqui contido são dados aos seus respectivos autores descritos nas Referências Bibliográficas. AN02FREV001/REV 4.0 49 MÓDULO II 2 SOFTWARE Software é qualquer conjunto de instruções que um computador pode executar. São programas que executam comandos e geram resultados (NASCIMENTO, 2012). FIGURA 52 - PROCESSAMENTO E ARMAZENAMENTO DE DADOS FONTE: Parreira Junior, 2012. AN02FREV001/REV 4.0 50 2.1 PARA QUE SERVEM OS SOFTWARES? Em 1980 pôde-se notar que os avanços na microeletrônica levaram a um maior poder de processamento computacional com um custo menor que nos anos anteriores. Com o passar dos anos, os hardwares sofreram cada vez mais melhorias em performance, em processamento e em armazenamento de dados e com isso os softwares os acompanharam para aproveitar essas melhorias (PARREIA JUNIOR, 2012). O software pode ser aplicado a qualquer situação em qualquer área de estudo em que um conjunto de algoritmos é definido e executado para alcançar os resultados. Separar em categorias as aplicações de softwares é uma tarefa difícil, pois quanto mais completo o sistema, mais difícil de determinar onde ele se encaixa (PARREIA JUNIOR, 2012). De acordo com Parreira Junior (2012) as aplicações de software podem ser divididas da seguinte maneira: software básico – é o programa de apoio a outros programas. Esse software básico realiza interação com o hardware, operações concorrentes, compartilhamento de recursos, entre outros processos; de tempo real – são programas que monitoram, analisam e controlam eventos do mundo real; comercial – são programas que gerenciam as operações comerciais de empresas; científico/engenharia – são programas usados para o processamento numérico e processamento de dados para as diferentes áreas de pesquisa; embutido – são programas usados em atividades específicas e podem estar inseridos dentro de produtos inteligentes; de computador pessoal – são programas desenvolvidos para o uso pessoal do computador; AN02FREV001/REV 4.0 51 de inteligência artificial – são programas que usam de algoritmos não numéricos e de técnica de inteligência computacional para a resolução de problemas complexos. 2.1 SISTEMA OPERACIONAL O sistema operacional é um software? Um sistema operacional é um conjunto de softwares que inicializam os hardwares do computador. Fornece rotinas básicas para controle de dispositivos, fornece gerência, escalonamento e interação de tarefas e mantém a integridade do sistema. O sistema operacional tem duas funções distintas: estender a máquina; gerenciar recursos. Durante a função de máquina estendida, o sistema operacional mostra uma situação mais simples do funcionamento do hardware para o usuário. O sistema operacional faz isso para que o usuário não tente gerenciar o HD ou qualquer parte do computador que não deva ser mexida, e para o usuário não interagir diretamente com a máquina (SANTANA, 2012). Na função de gerenciador dos recursos, o sistema operacional coordena, por meio de compartilhamento no tempo e no espaço, como os programas devem usar os dispositivos físicos. Cada programa ou usuário tem a sua vez para utilizar um determinado dispositivo, se esse dispositivo for compartilhado no tempo, então cada programa ou usuário deve esperar sua vez de usar o processador; agora se o dispositivo for compartilhado no espaço, então, cada programa ou usuário deve ocupar uma parte do recurso da memória RAM (SANTANA, 2012). AN02FREV001/REV 4.0 52 FIGURA 53 - COMPETIÇÃO ENTRE PROCESSOS POR UM RECURSO FONTE: Santana, 2012. Há os sistemas operacionais para computadores de grande porte, para servidores, para multiprocessadores, para computadores pessoais, para cartões inteligentes e ainda existem os sistemas operacionais móveis e embarcados (SANTANA, 2012). 2.2 TIPOS DE SOFTWARES Os softwares podem ser divididos em dois tipos: de sistemas e de aplicação. Softwares de sistemas geralmente são divididos em sistemas operacionais e programas utilitários. Esses softwares são responsáveis pelo funcionamento do próprio computador e de todo o hardware. AN02FREV001/REV 4.0 53 Os softwares aplicativos são formados por todos aqueles programas que são utilizados na execução de tarefas específicas, como por exemplo, os processadores de texto como o Word, Excel, browsers ou navegadores, softwares usados para navegar na Web como o Windows Internet Explorer, Firefox, Google Chrome, Opera e Safári. 2.3 GERENCIADOR DE PROCESSOS Um processo é como se fosse umprograma em execução, mas com uma estrutura bem mais complexa, pois o processo possui o programa a ser executado juntamente com as informações para essa execução. Enquanto o programa é uma entidade passiva, o processo é a entidade ativa que possui um contador de programa que especifica a próxima instrução a ser executada (UFRJ, 2012). Nos sistemas operacionais mais antigos cada processo possuía um único fluxo de controle e as instruções eram executadas sequencialmente. Nos dias atuais, os processos dos sistemas operacionais iniciam um ou mais subprocessos que podem ou não serem executados paralela ou concorrentemente (UFRJ, 2012). Thread é uma forma de um processo paralelizar a execução de partes de um código. Cada thread possui seu próprio contador de programa, sua pilha e seus registradores, porém, compartilham o mesmo espaço de endereçamento (UFRJ, 2012). Em sistemas mais tradicionais os processos possuem um único fluxo, conhecido como single thread, nos sistemas mais atuais já se pode trabalhar com múltiplos fluxos de controle e com isso compartilhar o mesmo espaço de endereçamento e com execução paralela; isso que é chamando de multiprocessamento. Isso pode nos mostrar que threads podem assumir o comportamento com execução de forma concorrente ou paralela dependendo da configuração dos sistemas operacionais dos computadores (UFRJ, 2012). AN02FREV001/REV 4.0 54 FIGURA 54 - PROCESSO Y COM TRÊS SUBPROCESSOS E PROCESSO X COM TRÊS THREADS FONTE: UFRJ, 2012. Threads só serão usadas se o sistema operacional do computador conseguir suportá-las e existir um gerenciador para elas. Os processos e subprocessos possuem independências que as threads não possuem, pois essas compartilham espaços de endereçamentos, mesmas variáveis globais, arquivos, CPU com outras, pois uma thread pode acessar todo o espaço virtual de endereçamento do processo pai e de outras threads e ainda pode criar outras como ela (UFRJ, 2012). De acordo com UFRJ (2012), é demonstrado a seguir como são constituídos as threads e os processos. AN02FREV001/REV 4.0 55 TABELA 2 - THREAD E PROCESSO FONTE: UFRJ, 2012. A execução de um processo começa com a criação e o carregamento dele em memória. Quando o processo é carregado na memória que ele pode ser escalado para tomar o controle da CPU e realizar seu processamento até o fim. Na memória um processo pode estar num dos três estados, que são: estado em execução, estado em espera pela ocorrência de um evento solicitado por ele mesmo e no estado de pronto para execução (UFRJ, 2012). Esses estados estão ilustrados na figura a seguir. AN02FREV001/REV 4.0 56 FIGURA 55 - ESTADOS DE UM PROCESSO FONTE: UFRJ, 2012. Adaptado por Francielly, 2013. O primeiro estado que um processo deve ser encontrado é o chamando read; é um estado que significa que o processo pode ser escalonado para execução. No momento da execução, o processo pode perder o controle da CPU de forma voluntária ou involuntária (UFRJ, 2012). Quando qualquer processo que esteja no estado de execução solicita um recurso que não está disponível no momento ou a obtenção seja adquirida fora da CPU, o processo perde o controle da CPU e vai direto para o estado de espera. O estado de espera é quando o processo fica esperando o recurso estar disponível e poder ter acesso a ele, e enfim voltar para o estado de execução. Já no estado de pronto, o processo pode atender todas as condições de reiniciar a execução e só fica aguardando na fila de acesso de controle da CPU (UFRJ, 2012). AN02FREV001/REV 4.0 57 2.4 GERENCIADOR DE ALOCAÇÃO DE DADOS (MEMÓRIA) Todos os dados e programas que são executados ou referenciados pelo processador estão na memória principal. A organização da memória principal se faz necessária porque todo processo que vai ser executado e está na memória secundária precisa ser carregado na memória principal (ZEM et al., 2012). A seguir, figuras que mostram a memória principal (56), a organização interna de um computador (57) e a hierarquia das memórias de um computador (58). FIGURA 56 - MEMÓRIA PRINCIPAL FONTE: PUC, 2012. AN02FREV001/REV 4.0 58 FIGURA 57 - ORGANIZAÇÃO INTERNA DE UM MICROCOMPUTADOR FONTE: Eletrônica, 2008. FIGURA 58 - HIERARQUIA DAS MEMÓRIAS DE UM COMPUTADOR FONTE: Macêdo, 2011. AN02FREV001/REV 4.0 59 Nesta seção, vamos citar a alocação contígua simples e a alocação particionada. Nos primeiros sistemas operacionais criados foi implementada a alocação contígua simples e hoje em dia é encontrada em sistemas monoprogramáveis. Na alocação simples, a memória principal é dividida em uma parte para o sistema operacional e outra para o programa do usuário (ZEM et al., 2012). FIGURA 59 - DIVISÃO DE MEMÓRIA FONTE: Zem et.al, 2012. AN02FREV001/REV 4.0 60 Na alocação contígua simples a memória principal pode ser controlada pelo usuário, podendo acessar qualquer parte dela. O sistema operacional é protegido por meio de um registrado que limita as áreas que o usuário pode acessar, senão o usuário pode até destruir o sistema operacional achando que está fazendo algo correto, mas com consequências terríveis (ZEM et al., 2012). Na próxima figura, é mostrado o papel do registrador juntamente com o acesso do usuário e o sistema operacional. FIGURA 60 - REGISTRADO, SISTEMA OPERACIONAL E USUÁRIO FONTE: Zem et al., 2012. Na alocação contígua simples o processador e a memória principal não são usados com muita eficiência e ainda existe um vazio na parte que um programa não consegue preencher dessa memória (ZEM et al., 2012). AN02FREV001/REV 4.0 61 FIGURA 61 - ESPAÇO VAZIO NA MEMÓRIA PRINCIPAL; FRAGMENTAÇÃO FONTE: Zem et al., 2012. Antigamente, os primeiros programas eram limitados de acordo com o tamanho da memória principal disponível. Isso limitava os programas; e para solucionar esse problema os programas começaram a ser divididos em partes, chamadas de módulos. Cada parte podia ser executada independentemente da outra e usando a mesma memória (ZEM et al., 2012). AN02FREV001/REV 4.0 62 FIGURA 62 - DIVISÃO DE UM PROGRAMA FONTE: Zem et al., 2012. Vamos entender agora como funciona a alocação particionada. Na multiprogramação, enquanto um processo aguarda um evento outros processos podem ser executados pela CPU. A memória principal é organizada de maneira que atenda a todos os programas que estão carregados ao mesmo tempo nela. Nos primeiros sistemas multiprogramáveis desenvolvidos essa memória principal era dividida em partições de tamanho fixo (ZEM et al., 2012). AN02FREV001/REV 4.0 63 FIGURA 63 - PARTIÇÕES DA MEMÓRIA PRINCIPAL FONTE: Zem et al., 2012. Nas primeiras utilizações dessas partições os programas eram executados em uma delas mesmo que existissem outras disponíveis (ZEM et al., 2012). Essa maneira de alocação é mostrada na figura a seguir. AN02FREV001/REV 4.0 64 FIGURA 64 - A LOCAÇÃO PARTICIONADA ESTÁTICA ABSOLUTA FONTE: Zem et al., 2012. Com o passar do tempo e a evolução da tecnologia, os programas passaram a ser carregados em qualquer partição. Essa nova maneira de divisão dos programas foi chamada de alocação particionada estática realocável (ZEM et al., 2012). Essa nova maneira de alocação é mostrada na figura a seguir. AN02FREV001/REV 4.0 65 FIGURA 65 - ALOCAÇÃO PARTICIONADA ESTÁTICA REALOCÁVEL Fonte: FONTE: Zem et al., 2012. O próximo passo foi dar ao sistema operacional controle da utilização das partições, para isso os sistemas operacionais começaram a usar tabelas delimitandoas partições, seus tamanhos e qual está sendo usada ou não (ZEM et al., 2012). Esse método de administração das partições é mostrado na próxima figura. AN02FREV001/REV 4.0 66 FIGURA 66 - ADMINISTRAÇÃO DE PARTIÇÕES FONTE: Zem et al., 2012. Na alocação dinâmica há mais compartilhamento que fragmentação. Nessa alocação as partições não possuem tamanho fixo e os programas usam o espaço necessário para suas execuções na memória principal (ZEM et al., 2012). Na próxima figura, é mostrada uma ilustração da alocação dinâmica. AN02FREV001/REV 4.0 67 FIGURA 67 - ALOCAÇÃO PARTICIONADA DINÂMICA FONTE: Zem et al., 2012. Na alocação dinâmica, a fragmentação mesmo sendo em menor ocorrência ainda pode acontecer. A fragmentação se faz necessária nessa alocação quando os processos estão quase terminando suas execuções e os espaços na memória principal ficam cada vez menores não permitindo o carregamento de outros processos (ZEM et al., 2012). AN02FREV001/REV 4.0 68 FIGURA 68 - FRAGMENTAÇÃO NA ALOCAÇÃO PARTICIONADA DINÂMICA FONTE: Zem et al., 2012. AN02FREV001/REV 4.0 69 2.5 GERENCIADOR DE AMBIENTE GRÁFICO Ambiente gráfico é um software que facilita a utilização do computador por meio de representações visuais do sistema operacional. No Windows, pode ser citado o ambiente gráfico padrão, nas versões Windows Vista e Windows 7, tem a chamada Windows Aero. E no GNU/Linux podem ser citados os ambientes gráficos KDE, o Gnome, o BlackBox, o Xfce, entre outros. FIGURA 69 - WINDOWS AERO FONTE: TopStyle, 2007. http://pt.wikipedia.org/wiki/KDE AN02FREV001/REV 4.0 70 FIGURA 70 - AMBIENTES GRÁFICOS KDE FONTE: Kde.org, 2012. 2.6 LABORATÓRIO Essa prática pretende ensinar ao aluno como instalar um sistema operacional. 2.6.1 Instalação do sistema operacional Windows Nessa seção, será mostrada passo a passo a instalação do sistema operacional Windows 7. Primeiramente a BIOS precisa ser configurada para ser feito o primeiro boot utilizando o drive de CD. Após esse passo, o sistema reconhece que precisa começar a sua iniciação com o DVD juntamente com a instalação do Windows 7 (LIMA, 2010). http://pt.wikipedia.org/wiki/KDE AN02FREV001/REV 4.0 71 FIGURA 71 - INICIANDO DA INSTALAÇÃO DO WINDOWS 7 FONTE: Lima, 2010. A próxima tela irá sugerir a escolha do idioma, o tipo de teclado e o formato da hora. Logo em seguida basta clicar em “Install now”. Essas etapas são mostradas a seguir (LIMA, 2010). FIGURA 72 - ETAPA DE ESCOLHA DO IDIOMA, TECLADO E FORMATO DA HORA FONTE: Lima, 2010. AN02FREV001/REV 4.0 72 FIGURA 73 - MOMENTO DA ATIVAÇÃO DO PROCESSO DE INSTALAÇÃO DO SISTEMA OPERACIONAL FONTE: Lima, 2010. Após clicar em “Install now”, aparecerão os termos do contrato feito pela empresa Microsoft. Nesse momento, os termos devem ser lidos e se forem de acordo com quem está instalando o Windows 7 eles devem ser aceitos. Caso o contrato não seja aceito a instalação do sistema operacional não continuará. Essa etapa é ilustrada na próxima figura (LIMA, 2010). AN02FREV001/REV 4.0 73 FIGURA 74 - TERMOS DO CONTRATO DE INSTALAÇÃO DO WINDOWS 7 FONTE: Lima, 2010. Após o contrato ser aceito o próximo passo é escolher entre atualizar o sistema, conhecido como upgrade, ou personalizar, tambem chamado de custom. Para instalar o sistema operacional novo sem nenhuma utilização é necessário a escolha da opção custom (LIMA, 2010). AN02FREV001/REV 4.0 74 FIGURA 75 - UPGRADE E CUSTOM FONTE: Lima, 2010. O próximo passo é escolher e administrar em qual partição será instalado o Windows 7. A próxima figura ilustra como esse processo é realizado (LIMA, 2010). AN02FREV001/REV 4.0 75 FIGURA 76 - ESCOLHA DA PARTIÇÃO FONTE: Lima, 2010. O processo seguinte é o das cópias dos arquivos para o disco rígido como mostrado a seguir (LIMA, 2010). AN02FREV001/REV 4.0 76 FIGURA 77 - PROCESSO DE CÓPIAS DOS ARQUIVOS PARA O DISCO RÍGIDO FONTE: Lima, 2010. Finalmente é chagado o momento em que o usuário insere seu nome e outro para o computador para registrar a identificação de ambos (LIMA, 2010). AN02FREV001/REV 4.0 77 FIGURA 78 - INSERÇÃO DOS NOMES DO USUÁRIO E DO COMPUTADOR FONTE: Lima, 2010. Em seguida, por motivos de segurança de originalidade do produto, é pedida uma senha conhecida como serial key. Aparecerá na tela de instalação o campo onde se deve inserir essa senha, como mostrado na figura a seguir (LIMA, 2010). AN02FREV001/REV 4.0 78 FIGURA 79 - INSERÇÃO DO SERIAL KEY FONTE: Lima, 2010. Os passos finais mostrados nas figuras a seguir são o set up Windows e o ajuste da hora (LIMA, 2010). AN02FREV001/REV 4.0 79 FIGURA 80 - SET UP WINDOWS FONTE: Lima, 2010. FIGURA 81 - AJUSTE DE HORA FONTE: Lima, 2010. AN02FREV001/REV 4.0 80 Sistema operacional Windows 7 foi instalado com sucesso. FIGURA 82 - ÁREA DE TRABALHO DO WINDOWS 7 FONTE: Lima, 2010. 2.6.2 Instalação do sistema operacional Linux Esta seção pretende demonstrar passo a passo a instalação do Ubuntu, um sistema operacional baseado em Linux. Primeiramente, é necessário que haja partição no computador para a instalação do Ubuntu. Antes de começar a instalação realize um backup dos arquivos de seu computador por motivo de segurança. A desfragmentação do HD no Windows deve ser feita para evitar erros e perda de dados. A seguir, o primeiro passo para começar a instalação do Ubuntu é inserir o live CD/DVD na unidade de disco ou livepen na entrada UBS e reiniciar o computador. A primeira tela que irá aparecer após o boot é para a escolha do idioma com opção de instalação ou realização de teste (RICARDO, 2013). AN02FREV001/REV 4.0 81 FIGURA 83 - INSTALAR OU REALIZAR TESTE COM O UBUNTU FONTE: Ricardo, 2013. O próximo passo é abrir o Dash clicando no botão no canto superior esquerdo e em seguida digite gparted no campo de busca. Irá aparecer um ícone relacionado a um software; clique em cima dele. Em seguida aparecerão as partições existentes no HD; basta escolher qual será utilizada (Ricardo, 2013). AN02FREV001/REV 4.0 82 FIGURA 84 - INICIAR PROCESSO DE ESCOLHA DE PARTIÇÕES EXISTENTES NO HD FONTE: Ricardo, 2013. FIGURA 85 - PARTIÇÕES EXISTENTES NO HD FONTE: Ricardo, 2013. AN02FREV001/REV 4.0 83 Após escolher qual partição irá usar, clique com o botão direito do mouse sobre essa partição e escolha “Resize/Move” para definir qual o espaço que será utilizado para instalação do Ubuntu e qual espaço sobrará. Após essas definições, o usuário deve clicar no ícone que parece um “v” em cor verde na barra de ferramentas mostrada no início da tela (RICARDO, 2013). FIGURA 86 - REDIMENSIONAMENTO DO ESPAÇO DA PARTIÇÃO FONTE: Ricardo, 2013. Após todos os processos anteriores serem concluídos, é hora de iniciar a instalação do Ubuntu por meio do instalador do Ubuntu. O usuário deve realizar um duplo clique no ícone na tela que está na parte superior do lado esquerdo e neste momento será solicitada a escolha do idioma desejado (RICARDO, 2013). AN02FREV001/REV 4.0 84 FIGURA 87 - INSTALAÇÃO VIA INSTALADOR DO UBUNTU FONTE: Ricardo, 2013. A próxima tela que irá aparecer possui a opção de instalar atualizações além do codec de proprietáriosdurante a instalação do Ubuntu (RICARDO, 2013). AN02FREV001/REV 4.0 85 FIGURA 88 - INSTALAÇÃO DE ATUALIZAÇÕES FONTE: Ricardo, 2013. Na próxima tela, é interessante o usuário escolher a “Opção avançada”, pois ela delibera um maior controle ao usuário do local onde o Ubuntu será instalado (RICARDO, 2013). AN02FREV001/REV 4.0 86 FIGURA 89 - TIPO DE INSTALAÇÃO FONTE: Ricardo, 2013. O próximo passo mostra um particionador diferente do mostrado no início dessa seção. Ao lado de cada partição, neste momento, aparecerá o sistema de arquivos, com NTFS para Windows. Como no início do processo de instalação foi solicitado o uso do gparted, então aparecerá a indicação de um espaço livre. O usuário deve clicar sobre ele para manusear esse espaço (RICARDO, 2013). AN02FREV001/REV 4.0 87 FIGURA 90 - MANUSEIO DO ESPAÇO LIVRE FONTE: Ricardo, 2013. Em seguida, o espaço manuseado e escolhido será criado como mostra a próxima figura (91), com as seguintes configurações. Após isso o usuário deve clicar no botão com o nome “instalar agora” e as configurações e instalação começarão a acontecer (RICARDO, 2013). AN02FREV001/REV 4.0 88 FIGURA 91 - MANUSEIO DO ESPAÇO LIVRE FONTE: Ricardo, 2013. Em seguida, aparecerá a tela para marcar o local onde o usuário está, o layout do teclado e uma tela para configuração de usuário, como mostrado nas próximas figuras (RICARDO, 2013). AN02FREV001/REV 4.0 89 FIGURA 92 - ESCOLHA DO LOCAL FONTE: Ricardo, 2013. FIGURA 93 - LAYOUT DO TECLADO FONTE: Ricardo, 2013. AN02FREV001/REV 4.0 90 FIGURA 94 - CONFIGURAÇÃO DO USUÁRIO FONTE: Ricardo, 2013. Com o término da instalação do Ubuntu aparecerá uma tela com a opção de continuar testando ou reiniciar para o sistema instalado. É sugerido que nesse momento o usuário escolha a opção “reiniciar agora”. Quando o computador reiniciar aparecerão todos os sistemas operacionais existentes no computador. Para instalar os drivers necessários, basta ir ao Dash e digitar central de software e clicar em “drivers adicionais” (RICARDO, 2013). AN02FREV001/REV 4.0 91 FIGURA 95 - INSTALAÇÃO DOS DRIVERS FONTE: Ricardo, 2013. FIM DO MÓDULO II AN02FREV001/REV 4.0 92 PROGRAMA DE EDUCAÇÃO CONTINUADA A DISTÂNCIA Portal Educação CURSO DE TÉCNICO DE INFORMÁTICA Aluno: EaD - Educação a Distância Portal Educação AN02FREV001/REV 4.0 93 CURSO DE TÉCNICO DE INFORMÁTICA MÓDULO III Atenção: O material deste módulo está disponível apenas como parâmetro de estudos para este Programa de Educação Continuada. É proibida qualquer forma de comercialização ou distribuição do mesmo sem a autorização expressa do Portal Educação. Os créditos do conteúdo aqui contido são dados aos seus respectivos autores descritos nas Referências Bibliográficas. AN02FREV001/REV 4.0 94 MÓDULO III 3 CONCEITO DE ALGORITMO O técnico de informática além de saber como montar um computador deve possuir uma noção de algoritmos e programação. Os programas que ele instalará nos computadores foram desenvolvidos em linguagens de programação e, como qualquer outro, podem aparecer problemas. O técnico com certo conhecimento das propriedades das linguagens de programação pode ajudar na resolução de possíveis bugs. Algoritmo é uma sequência ordenada de passos que deve ser seguida para chegar até a solução de um problema ou até realizar uma tarefa. Um algoritmo é uma sequência de passos que devem ser seguidos em uma ordem para atingir um objetivo. O algoritmo é representado por uma linguagem, e essas linguagens podem ser: descrição narrativa, fluxograma convencional e pseucódigo (linguagem estruturada/portugol) (MALAQUIAS, 2012). 3.1 LINGUAGEM 3.1.1 Descrição narrativa O algoritmo pode ser representado por meio da linguagem natural, que é qualquer linguagem desenvolvida naturalmente pelo ser humano. Essa representação é a descrição narrativa; e um bom exemplo é o cálculo da média de um aluno, como mostrado a seguir (MALAQUIAS, 2012): AN02FREV001/REV 4.0 95 1) reunir os valores das notas de todas as provas do aluno durante um certo período de tempo; 2) calcular a média aritmética entre os valores dessas notas; 3) se a média for maior ou igual a 6.0, o aluno foi aprovado, senão o aluno foi reprovado. De acordo com Malaquias (2011), podem ser citados mais dois exemplos para deixar mais clara a linguagem natural de seres humanos realizando tarefas, são eles: trocar um pneu 1) afrouxar as porcas; 2) suspender o carro; 3) retirar as porcas e o pneu; 4) colocar o pneu reserva; 5) apertar as porcas; 6) abaixar o carro; 7) dar o aperto final nas porcas. FIGURA 96 - ETAPAS NO PROCESSO DE TROCA DE PNEU FONTE: Malaquias, 2011. AN02FREV001/REV 4.0 96 tomar banho 1) entrar no banheiro; 2) tirar a roupa; 3) abrir a torneira do chuveiro; 4) entrar debaixo da água do chuveiro; 5) lavar o corpo; 6) entrar debaixo da água do chuveiro; 7) sair debaixo da água do chuveiro; 8) fechar a torneira; 9) secar o corpo com a toalha; 10) vestir a roupa; 11) sair do banheiro. FIGURA 97 - ETAPAS NO PROCESSO DE TOMAR BANHO FONTE: Malaquias, 2011. AN02FREV001/REV 4.0 97 3.1.2 Fluxograma convencional Os algoritmos também podem ser representados por figuras geométricas que indicam as instruções e comandos (MALAQUIAS, 2011). Essas figuras e o que elas significam são mostrados a seguir. FIGURA 98 - FIGURAS GEOMÉTRICAS USADAS EM FLUXOGRAMA CONVENCIONAL FONTE: Malaquias, 2011. Em seguida, é mostrado como calcular a soma de dois números utilizando o fluxograma convencional. AN02FREV001/REV 4.0 98 FIGURA 99 - SOMA DE DOIS NÚMEROS FONTE: Malaquias, 2011. 3.1.3 Pseucódigo Outra forma de representar um algoritmo é pela representação textual (pseucódigo), conhecida como Português Estruturado ou Portugol (MALAQUIAS, 2011). A estrutura de um pseucódigo é mostrada a seguir. AN02FREV001/REV 4.0 99 FIGURA 100 - ESTRUTURA DE UM PSEUCÓDIGO FONTE: Malaquias, 2011. FIGURA 101 - CÁLCULO DA MÉDIA USANDO PSEUCÓDIGO FONTE: Malaquias, 2011. AN02FREV001/REV 4.0 100 3.2 LINGUAGENS DE PROGRAMAÇÃO Linguagem de programação é um conjunto de instruções e comandos que um computador segue para atingir certo objetivo. Essa linguagem é um conjunto de regras sintáticas e semânticas que representam um programa de computador (MALAQUIAS, 2011). Existem as linguagens de baixo nível, também conhecidas como "linguagens de máquina" ou "assembly languages". Os computadores executam comandos escritos em linguagens de baixo nível. As linguagens de alto nível, também chamadas de linguagens de programação, possuem um nível de abstração relativamente elevado, estão longe das linguagens de máquina e mais próximas das linguagens humanas. Os programas escritos em linguagens de alto nível precisam ser processados antes que possam rodar e não se faz necessário que o programador conheça as características do processador, como instruções e registradores, pois são abstraídas na linguagem de alto nível. Logo, pode-se notar que as linguagens de alto nível não estão diretamente relacionadas à arquitetura do computador. Algumas linguagens de programação são: Java; C; C#; C++; Objective-C; PHP; (Visual) Basic; Python; Perl; JavaScript; Ruby; Lisp; http://pt.wikipedia.org/wiki/Computador http://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3%A3o http://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3%A3o AN02FREV001/REV 4.0 101 Pascal; Visual Basic NET; PL/SQL; 4 LÓGICA DE PROGRAMAÇÃO A lógica de programação é a técnica de organizar o jeito de pensar para chegar até certo objetivo. Essa maneira de organizar é a sequência lógica que é usada para desenvolver os algoritmos dos softwares (MORAES, 2000). O que devo saber antes de programar? Obter conhecimentos sobre inglês é fundamental para poder programar, pois a maioria dos bons livros de programação tem a linguagem em inglês. Compreender melhor noções de programação básica, de C++, de Cobol, de Java, de TML, de Ajax, de hardware, de Windows e de Linux faz parte para desenvolver qualquer tipo de programa para computador com qualquer tipo de objetivo. O que é programar? Programar é a ação de desenvolver um programa, um sistema, um software por meio dos conhecimentos, instruções e ideais organizadas em uma sequência lógica. Por que programar? O ato de programar, de criar softwares, de criar sistemas para computadores, tem como finalidade atender a algum objetivo. A construção de programas de computação pode estar ligada à resolução de problemas em qualquer área de conhecimento. Por existirem linguagens de programação que funcionam de diferentes modos, os programadores possuem a mobilidade de construir diferentes programas. AN02FREV001/REV 4.0 102 4.1 FLUXOS Os fluxogramas usam formas geométricas para representar os fluxos de um programa. Nesses fluxos estão as ações e decisões usadas no programa. A seguir é mostrado um exemplo de fluxograma. FIGURA 102 - EXEMPLO DE FLUXOGRAMA FONTE: Carvalho, 2007. AN02FREV001/REV 4.0 103 4.2 PROCESSO LÓGICO Um processo são as ações sequências com objetivos em comum. O processo lógico é um conjunto de ações, sequências lógicas de ideias, as quais podem desenvolver um software. 4.3 SCRIPT Scripts são roteiros que possuem informações seguidas por softwares. A linguagem de script é uma linguagem de programação que pode ser executada dentro de programas ou dentro de outras linguagens de programação. Essa linguagem é utilizada para estender a funcionalidade de um programa por meio de suas APIs. 5 ESTRUTURA DE PROGRAMAÇÃO A estrutura de programação é o corpo da programação. Na criação de um programa em qualquer linguagem são abordados os seguintes itens: bloco de programa; declaração de variáveis; sintaxe dos comandos (PILLAT, 2013). A seguir, é apresentada uma estrutura simples na linguagem Java, que é uma linguagem orientada a objeto. AN02FREV001/REV 4.0 104 FIGURA 103 - ESTRUTURA SIMPLES NA LINGUAGEM JAVA FONTE: Pillat, 2013. A estrutura de um programa escrito em Java possui classes, atributos, métodos e o método main( ). A linguagem estruturada C possui como estrutura comandos para inclusão de ficheiros com declarações, definições de constante, declarações de variáveis, declarações de funções, definições de funções (subprogramas), definição da função main (programa principal). AN02FREV001/REV 4.0 105 5.1 TIPOS DE DADOS 5.1.1 Constantes Constantes são dados que não variam com o tempo. São dados que possuem um valor fixo durante toda a existência do programa. Só irão variar se o programador mudar seu valor manualmente (MORAES, 2000; CARVALHO, 2007). FIGURA 104 - CONSTANTE FONTE: Moraes, 2000. 5.1.2 Variáveis Variáveis são dados que variam com o tempo. São dados que não possuem um valor fixo durante toda a existência do programa (MORAES, 2000; CARVALHO, 2007). AN02FREV001/REV 4.0 106 FIGURA 105 - VARIÁVEIS FONTE: Moraes, 2000. FIGURA 106 - VARIÁVEL E CONTEÚDO DA VARIÁVEL FONTE: Moraes, 2000. AN02FREV001/REV 4.0 107 5.2 ARRAY Array representa um conjunto de elementos posicionados em uma sequência. Array é um arranjo de elementos que não transmite a relação de ordem entre esses elementos. FIGURA 107 - MODELO DE UM ARRAY FONTE: Francielly Morais Rodrigues da Costa, 2013. O array mostrado possui cinco posições e dependendo da linguagem de programação utilizada pelo programador a primeira posição pode ser nomeada com o número um ou zero. Cada linguagem de programação possui sua maneira particular de acessar cada posição de um array. AN02FREV001/REV 4.0 108 5.3 MATRIZ Matriz é um array bidimensional com dois índices (linha i, coluna j) para identificar o elemento que está armazenado. Um exemplo seria: A = new int [2] [2] Esse exemplo é mostrado a seguir. FIGURA 108 - MODELO DE UMA MATRIZ FONTE: Francielly Morais Rodrigues da Costa, 2013. 5.4 CONDICIONAIS IF, THEN E ELSE Na estrutura if ... then ... else, caso a condição seja verdadeira, os comandos dentro do if serão executados, caso contrário, os comandos dentro do else é que serão executados (MORAES, 2000). AN02FREV001/REV 4.0 109 FIGURA 109 - EXEMPLO DA ESTRUTURA IF ... THEN ... ELSE FONTE: Francielly Morais Rodrigues da Costa, 2013. 5.5 REPETIÇÕES FOR/WHILE 5.5.1 Repetições while A estrutura while, também conhecida como “enquanto isso”, possui a forma mostrada a seguir. FIGURA 110 - EXEMPLO DA ESTRUTURA WHILE FONTE: Francielly Morais Rodrigues da Costa, 2013. AN02FREV001/REV 4.0 110 A variável x recebe o valor 1 e enquanto esse valor for menor ou igual a 10 o x receberá seu valor anterior mais o valor 1. Quando a repetição chega ao valor igual a 11, os comandos de dentro da estrutura while não são executados e o valor da variável x é impresso na tela. 5.5.2 Repetições for A estrutura for possui a forma mostrada a seguir. FIGURA 111 - EXEMPLO DA ESTRUTURA FOR FONTE: Francielly Morais Rodrigues da Costa, 2013. A variável x recebe inicialmente o valor igual a 1 e durante a repetição dessa estrutura receberá valores de 1 a 10 e todos serão impressos na tela. Note que essa repetição vai direto de 1 a 10, mas se houver necessidade de realizar alguma parada pode-se usar os condicionais if ... then ... else dentro da estrutura for. AN02FREV001/REV 4.0 111 5.6 OPERADORES ARITMÉTICOS, RELACIONAIS E LÓGICOS Os operadores são usados nas estruturas de incrementos, decrementos, comparações e avaliações de dados usados nos programas. Existem três tipos de operadores: operadores aritméticos; operadores relacionais; operadores lógicos (MORAES, 2000). 5.6.1 Operadores aritméticos Os operadores aritméticos são os usados nas estruturas que envolvem valores numéricos, como adição, subtração, multiplicação, divisão e exponenciação (MORAES, 2000). Os símbolos para os operadores aritméticos são mostrados a seguir. FIGURA 112 - OPERADORES ARITMÉTICOS FONTE: Moraes, 2000. Nos programas, é usada uma hierarquia para executar os dados, de acordo com Moraes (2000): 1) ( ) parênteses; 2) exponenciação; AN02FREV001/REV 4.0 112 3) multiplicação e divisão (o que aparecer primeiro); 4) adição e subtração (o que aparecer primeiro). 5.6.2 Operadores relacionais Os operadores relacionais são os usados nas estruturas que envolvem comparações de caracteres e de números, e possuem resultados booleanos (true ou false – verdadeiro ou falso) (MORAES, 2000). Os operadores relacionais são mostrados a seguir. FIGURA 113 - OPERADORES RELACIONAIS FONTE:Moraes, 2000. FIGURA 114 - EXEMPLO COM USO DE OPERADORES RELACIONAIS FONTE: Moraes, 2000. AN02FREV001/REV 4.0 113 5.6.3 Operadores lógicos Os operadores lógicos são usados em estruturas que realizam combinações de resultados e de expressões, e possuem resultados booleanos (true ou false) (MORAES, 2000). FIGURA 115 - OPERADORES LÓGICOS FONTE: Moraes, 2000. O operador E (AND) é verdadeiro se todas as condições forem verdadeiras. O operador OU (OR) é verdadeiro se pelo menos uma das condições for verdadeira. O operador NÃO (NOT) inverte o valor da expressão (MORAES, 2000). A seguir, são mostrados todos os valores possíveis criados usando os operadores lógicos, onde T representa true e F false. AN02FREV001/REV 4.0 114 FIGURA 116 - TODOS OS VALORES POSSÍVEIS PARA OS OPERADORES LÓGICOS FONTE: Moraes, 2000. FIGURA 117 - EXEMPLO COM OPERADORES LÓGICOS FONTE: Moraes, 2000. AN02FREV001/REV 4.0 115 5.7 PROGRAMAÇÃO WEB Desenvolvimento web representa o desenvolvimento de sítios na internet ou em uma intranet. Desenvolvimento web está associado a programação e marcação, configuração e trabalho realizado na retaguarda dos sítios, mas também pode estar relacionado ao desenvolvimento de simples páginas até um comércio eletrônico. Para desenvolvimento web pode-se fazer o uso do conhecido HTML dinâmico. HTML dinâmico é um termo que sugere a junção de tecnologias web voltadas para criação de páginas HTML dinâmicas. Podemos citar algumas dessas tecnologias como: HTML, XHTML, XML, CSS, Java Script e DOM. As vantagens da criação das páginas dinâmicas envolve um layout mais suave e atraente ao usuário da página. Outra grande vantagem é a procura por esse tipo de desenvolvimento de páginas para internet por empresas do ramo e, certamente, será um diferencial no concorrido mercado de trabalho. O mercado web é povoado abrangentemente pela linguagem Java. Criar um projeto em Java é bem mais amplo e independente de vários softwares como Servlet Container, banco de dados e até da própria fabricante da sua Virtual Machine. Mas trabalhar com a linguagem Java na Web não é tão trivial. O desenvolvedor web precisa conhecer todas as características de APIs, de servlets, de JSP e de HTTP (CAELUM, 2013). Caso o aluno queira aprender mais detalhes em tutorias na Internet, ele poderá entrar em portais como o GUJ (disponível em <thttp://www.guj.com.br/>), em blogs e muitos sites voltados à montagem de sites para internet. Livros de Java, de Android, JSF e JPA e e-books podem ser encontrados no site Casa do Código (disponível em: <http://www.CasaDoCodigo.com.br/>) (CAELUM, 2013). http://www.casadocodigo.com.br/ AN02FREV001/REV 4.0 116 5.8 PEQUENO DICIONÁRIO COM AS PRINCIPAIS FRASES E PALAVRAS ENVOLVENDO HARDWARE E SOFTWARE A seguir, são explicados alguns conceitos básicos sobre software e hardware. Alguns conceitos estão de acordo com Spolador et al. (2012). Barramento: é um conjunto de linhas de comunicação que permitem a interligação entre os dispositivos de um sistema de computação; Barramento do processador: é utilizado pelo processador internamente para o envio de sinais para outros componentes do sistema computacional; Barramento de cache: é o barramento dedicado para acesso à memória cache do computador; Barramento de memória: é o barramento responsável pela conexão da memória principal ao processador; Barramento de entrada e saída: é o barramento responsável pela comunicação das diversas interfaces e periféricos ligados à placa-mãe, possibilitando a instalação de novas placas, os mais conhecidos são PCI, AGP e USB; Barramento de dados: é o barramento responsável por transportar informação da instrução, da variável, do processamento ou da informação de um periférico de entrada e saída; Clock: gerador de impulsos que serão repetidos dentro de um tempo determinado gerando a frequência que é medida por hertz; Computador: máquina capaz de realizar vários tipos de processamento de dados; Disco rígido: "memória de massa", é a parte do computador onde são armazenados os dados; Firmware: é o conjunto de instruções operacionais programadas diretamente no hardware. Freeware: software disponível integramente e gratuitamente com tempo indeterminado de uso; http://pt.wikipedia.org/wiki/Processamento_de_dados http://pt.wikipedia.org/wiki/Processamento_de_dados AN02FREV001/REV 4.0 117 Hardware: conjunto de elementos físicos que compõem o sistema computacional; Memória: são todos os dispositivos que permitem a um computador guardar dados temporariamente ou permanentemente; Memória principal: são memórias que o processador pode endereçar diretamente, sem as quais o computador não pode funcionar. nesta categoria podemos citar a memória RAM (volátil), a memória ROM (não volátil), registradores e memórias cache; Memória secundária: memórias que servem para armazenamento permanente de dados. Não podem ser endereçadas diretamente e são geralmente não voláteis, são exemplos os discos rígidos, CDs, DVDs e blu- rays, disquetes e fitas magnéticas; Periféricos: são aparelhos ou placas que enviam ou recebem informações do computador; Placa-mãe: é a parte do computador responsável por conectar e interligar todos os componentes do computador entre si; Placa de vídeo: placa responsável pelo armazenamento e conversão de dados que serão enviados para o monitor; Placa de rede: placa responsável pela comunicação entre dois ou mais computadores; Processador: processa as informações, controla as operações lógicas e aritméticas e efetua o processamento de entrada e saída; Recurso on-board: placas-mãe on-board oferecem todos os componentes básicos necessários para um computador funcionar sem o auxílio de placa adicional; Recurso off-board: placas off-board para vídeo e áudio permitem, dependendo do modelo destas, tomarem para si todo o processamento dessas tarefas, com RAM exclusiva para a de vídeo (instalada na própria placa de vídeo), liberando a RAM e o processador principal; Sistema operativo: é um programa ou um conjunto de programas que gerencia os recursos do sistema e fornece uma interface entre um computador e o usuário; http://pt.wikipedia.org/wiki/Fitas_magn%C3%A9ticas AN02FREV001/REV 4.0 118 Shareware: uma parte desse código fonte é gratuita com tempo limitado e a outra parte do código possui um valor a ser pago; Softwares: programas que executam diferentes tarefas para o processamento de dados; Software proprietário: o código fonte não é distribuído. Para ser distribuído, alterado e copiado é necessário autorização do proprietário; Software livre: código fonte disponível para alteração, cópia e distribuição mediante ou não de pagamento; Software básico: é o programa responsável pelo gerenciamento dos recursos do computador e pela conversão da linguagem homem para máquina e vice-versa; Softwares aplicativos: são os sistemas mais complexos que visam atender a uma determinar área; Softwares utilitários: programas com complexidade baixa usados para atender a um objetivo específico. 5.9 LABORATÓRIO Neste laboratório serão apresentados ao aluno alguns exemplos de códigos desenvolvidos na linguagem Java. O objetivo do aluno neste momento é tentar entender a lógica que foi utilizada. Será necessário, o aluno deve instalar em seu computador ou o Eclipse ou o NetBeans. Eclipse é um ambiente de desenvolvimento integrado (IDE) – sigla que advém da expressão em inglês integrated development environment – feito em Java usado para desenvolvimento de softwares na linguagem Java. O NetBeans é outro IDE gratuito usado para o desenvolvimento de códigos emJava. Basta o aluno ir aos seguintes links listados a seguir para instalar um dos ambientes de desenvolvimento em seu computador: http://www.eclipse.org/downloads/ https://netbeans.org/features/index.html AN02FREV001/REV 4.0 119 O aluno deve digitar os códigos sugeridos nas próximas figuras na área de desenvolvimento do IDE escolhido. Logo em seguida, o aluno deve executar o código e observar os resultados. Na figura a seguir, o aluno precisa tentar entender o que o código está executando e qual será o resultado. Liste se houver variáveis, constantes e comandos. Se as variáveis e as constantes forem encontradas, devem ser listados os valores que elas possuem durante o programa e suas funções dentro dos comandos. FIGURA 118 - CÓDIGO EM JAVA FONTE: Sauvé, 2012. Faça os mesmos procedimentos para os códigos das próximas figuras. AN02FREV001/REV 4.0 120 FIGURA 119 - CÓDIGO EM JAVA No código acima, as variáveis que não possuem um valor fixo são n1, n2 e n3. FONTE: Sauvé, 2012. AN02FREV001/REV 4.0 121 FIGURA 120 - CÓDIGO EM JAVA No código acima, as variáveis que não possuem um valor fixo são n1, n2 e n3, mínimo e máximo. FONTE: Sauvé, 2012. AN02FREV001/REV 4.0 122 FIGURA 121 - CÓDIGO EM JAVA No código acima, as variáveis que não possuem um valor fixo são num, mínimo e máximo. FONTE: Sauvé, 2012. AN02FREV001/REV 4.0 123 FIGURA 122 - CÓDIGO EM JAVA No código acima, as variáveis que não possuem um valor fixo são num, mínimo e máximo. Variavel Numero_A_LER é uma variável com valor fixo. FONTE: Sauvé, 2012. FIM DO MÓDULO III AN02FREV001/REV 4.0 124 PROGRAMA DE EDUCAÇÃO CONTINUADA A DISTÂNCIA Portal Educação CURSO DE TÉCNICO DE INFORMÁTICA Aluno: EaD - Educação a Distância Portal Educação AN02FREV001/REV 4.0 125 CURSO DE TÉCNICO DE INFORMÁTICA MÓDULO IV Atenção: O material deste módulo está disponível apenas como parâmetro de estudos para este Programa de Educação Continuada. É proibida qualquer forma de comercialização ou distribuição do mesmo sem a autorização expressa do Portal Educação. Os créditos do conteúdo aqui contido são dados aos seus respectivos autores descritos nas Referências Bibliográficas. AN02FREV001/REV 4.0 126 MÓDULO IV 6 BANCO DE DADOS Banco de dados normalmente agrupa informações que são utilizadas para um mesmo objetivo. Em um banco de dados essas informações estão estruturadas de forma organizada para facilitar as operações como inserção, busca e remoção sobre estes dados. O técnico de informática precisa ter o conhecimento de como funciona um banco de dados caso haja necessidade de assistência por parte dele nesta área. 6.1 ARMAZENAMENTO E GERENCIAMENTO DE DADOS (SGBD) FIGURA 123 - SISTEMA DE BANCO DE DADOS FONTE: Ricarte, 1996. AN02FREV001/REV 4.0 127 Um sistema gerenciador de banco de dados (SGBD) é um software usado para gerenciar banco de dados por meio de ações como criar, manter e manipular um banco de dados (RICARTE, 1996). Um sistema de banco de dados (SBD) é constituído por um banco de dados e por um SGBD (RICARTE, 1996). 6.2 EXEMPLOS DE BANCO DE DADOS E DE SGBDs Podem ser citados os seguintes bancos de dados como exemplos: agenda telefônica; cadastro de clientes de uma empresa; lista de pedidos de qualquer produto; cadastro de alunos de um curso em uma faculdade. Podem ser citados os seguintes sistemas gerenciadores de bancos de dados como exemplos: Oracle; PostgreSQL; SQL Server; MySQL; HSQLDB; Paradox; FireBird. 6.2.1 Structured query language (SQL) O SQL é uma linguagem usada para realizar pesquisas em um banco de dados relacional. Uma grande parte das características da linguagem SQL possui ligação com a álgebra relacional. Para realizar a criação de uma nova tabela no banco de dados é usado o comando CREATE TABLE. http://pt.wikipedia.org/wiki/Banco_de_dados_relacional http://pt.wikipedia.org/wiki/Banco_de_dados_relacional AN02FREV001/REV 4.0 128 FIGURA 124 - COMANDO CREATE TABLE FONTE: Francielly Morais Rodrigues da Costa, 2013. O ponto e vírgula no final é opcional, assim como o texto entre colchetes também é. SQL é uma linguagem que não diferencia letras maiúsculas das minúsculas. Para que um campo não seja preenchido com vazio é usado o operador NOT NULL. FIGURA 125 - EXEMPLO DO COMANDO CREATE TABLE FONTE: Francielly Morais Rodrigues da Costa, 2013. Para inserir novos registros em uma tabela que já existe no banco de dados é usado o comando INSERT. AN02FREV001/REV 4.0 129 FIGURA 126 - COMANDO INSERT FONTE: Francielly Morais Rodrigues da Costa, 2013. FIGURA 127 - EXEMPLO DO COMANDO INSERT FONTE: Francielly Morais Rodrigues da Costa, 2013. Quando se deseja selecionar e agrupar informações que estão em uma tabela dentro de um banco de dados é usado o comando SELECT. FIGURA 128 - COMANDO SELECT FONTE: Francielly Morais Rodrigues da Costa, 2013. AN02FREV001/REV 4.0 130 O asterisco é usado para selecionar todos os campos de uma tabela que está dentro de um banco de dados e que atendem ao critério. Caso se deseja selecionar só alguns itens, a estrutura dessa seleção é igual à mostrada a seguir. FIGURA 129 - COMANDO SELECT FONTE: Francielly Morais Rodrigues da Costa, 2013. O operador BETWEEN é utilizado para especificar um critério de seleção. FIGURA 130 - COMANDO SELECT COM O OPERADOR BETWEEN FONTE: Francielly Morais Rodrigues da Costa, 2013. AN02FREV001/REV 4.0 131 6.3 ORGANIZAÇÃO DE UM BANCO DE DADOS (MODELOS DE DADOS) 6.3.1 Modelo hierárquico O modelo hierárquico foi conhecido como o primeiro modelo de dados. Nessa hierarquia os dados são estruturados como se estivessem em uma árvore. Os nós possuem as ocorrências dos registros, que por sua vez são uma coleção dos campos que possuem uma informação. Nessa estrutura de hierarquia existe um registro pai e os registros filhos. Quando há uma ligação entre dois registros é chamada de associação. O relacionamento de um registro pai com seus registros filhos é representando por 1:N (TAKAI et al., 2005). FIGURA 131 - DIAGRAMA DE ESTRUTURA DE ÁRVORE. EXEMPLO DE CLIENTE – CONTA CORRENTE FONTE: Takai et al., 2005. AN02FREV001/REV 4.0 132 6.3.2 Modelo em rede Com alguns estudos, surgiu o modelo em rede, como uma extensão do modelo hierárquico. A diferença entre esses dois modelos é que um registro pode ser envolvido em várias associações no modelo em rede; o que não acontece no modelo hierárquico. No modelo em rede, não há o conceito de hierarquia e os registros são organizados em estrutura de grafos. Nessa estrutura, há um único tipo de associação (set) que define a relação 1:N ente dois tipos de registro. Pode-se montar o seguinte relacionamento M:N entre A e D vindo de dois relacionamentos, onde há 1:N entre os registros A e D e entre os registros C e D (TAKAI et al., 2005). FIGURA 132 - DIAGRAMA DE ESTRUTURA EM REDES. EXEMPLO DE CLIENTE – CONTA CORRENTE FONTE: Takai et al., 2005. AN02FREV001/REV 4.0 133 6.3.3 Modelo relacional O modelo relacional foi criado para aumentar a independência dos dados nos SGBs, para criação de funções que melhorassem o armazenamento, a recuperação e o processamento dos dados que estão no banco de dados (TAKAI et al., 2005). Dentro do modelo relacional, a estrutura principal é a tabela. Uma tabela é formada por um ou mais
Compartilhar