Sistemas Operacionais FATEC SP Sistemas Operacionais I Arquitetura de computadores – Revisão de conceitos Sistemas Operacionais I Dionisio Gava Junior Sistemas Operacionais Arquitetura de computadores Componentes básicos FATEC SP Sistemas Operacionais FATEC SP Arquitetura de computadores Componentes Básicos da Tecnologia da Informação • Hardware CPU, Memória e Periféricos de E/S. • Software • Software básicos - Sistema Operacional • Aplicativos • Pessoas Pessoas, outros computadores, maquinas • Redes • Banco de Dados • Procedimentos Aplicações • Comerciais • Científicas • Utilitários • Editores de texto ou imagem • Planilhas • Jogos • Compiladores. • Correio Eletrônico • Visualizador WEB (Browser) • Transferidor de arquivos • Outros... Sistemas Operacionais FATEC SP Arquitetura de computadores Características e Tendências dos elementos Hardware • Diminuição do custo • Aumento da capacidade • Miniaturização • Integração Software • Aumento de funcionalidades • Facilidade de uso Redes • Infra-estrutura da informação e comunicação pública • Meio de integração do mercado • Principal meio de comunicação do indivíduo. Uso Intenso de TI Principal de meio de integração e comunicação entre empresas, instituições e indivíduos Cultura - Organização Estrutura social Estrutura fîsica Tecnologia Sistemas Operacionais Arquitetura de computadores FATEC SP Elementos do hardware do computador Unidade Central de Processamento - UCP É o elemento responsável pela execução das instruções. Sincroniza os eventos entre os demais elementos do hardware. Memória É o elemento responsável pelo armazenamento dos programas e dos dados. Processadores ou Controladores de e/s É o elemento responsável pela transferência dos dados entre MEMÓRIA e PERIFÉRICOS Periféricos Sistemas Operacionais Arquitetura de computadores Arquitetura e organização dos computadores Arquitetura • Conjunto de instruções do processador • Modo de acesso à memória, endereçamento das instruções • Tamanho dos dados manipulados pelo processador • Os interfaces de E/S • Tecnicas de virtualização • Conhecimento desejado pelo programador Organização • Componentes físicos específicos • Tecnologia utilizada na construção dos componentes • Características e capacidades dos componentes (velocidade da CPU) • Conhecimento de construção do fabricante, não necessário a programação FATEC SP Sistemas Operacionais Arquitetura de computadores FATEC SP Arquitetura e organização dos computadores • O fabricante define uma família de processadores dentro de uma mesma arquitetura, visando atender as diversas necessidades do mercado. • Dentro da família, cada processador terá uma organização específica. • Os diversos modelos dentro da família oferecerão características e desempenho distintos Exemplos: A) Intel 486, Pentium, Pentium 2, Pentium 3, Pentium 4 B) Intel Dual Core, Core 2 Duo, Dual Quad Sistemas Operacionais FATEC SP Arquitetura de computadores Interação entre os elementos do hardware do computador CPU Memória PES PES PES Periférico Periférico Periférico Sistemas Operacionais FATEC SP Arquitetura de computadores Interação entre os elementos do Hardware CPU-MEM A CPU acessa a memória na busca de instruções e dados para a execução, e o armazenamento de resultados. Memória Instruções CPU Dados Sistemas Operacionais FATEC SP Arquitetura de computadores Interação entre os elementos do Hardware CPU-PES A CPU solicita ao PES (Processador de entrada e saída) a execução de operações de entrada e saída (E/S). CPU Memória PES PES PES Periférico Periférico Periférico Sistemas Operacionais FATEC SP Arquitetura de computadores Interação entre os elementos do Hardware PES-CPU-MEM • O Processador E/S busca na memória a operação de E/S a ser realizada • Inicia a operação de entrada e saída • Avisa a CPU assim que a transferência dos dados for concluída • Armazena na MEM informações sobre a condição desta transferência. CPU Memória PES PES PES Periférico Periférico Periférico Sistemas Operacionais Arquitetura de computadores FATEC SP Elementos que diferenciam arquiteturas Conjunto de Instruções (de maquina) • Instruções aritméticas, lógicas e outras • Denominadas instruções de máquina • De acordo com a arquitetura terão formato, tamanho e funcionalidades específicas. Acesso a Memória • Mecanismo utilizado pela CPU para buscar ou armazenar um dado na memória. • Exemplos: Acesso absoluto, indireto com a utilização de registradores, pilha, etc... Sistemas Operacionais Arquitetura de computadores FATEC SP Elementos que diferenciam arquiteturas Interface de E/S • A interface de e/s envolve não somente a conexão fisica, mas também o protocolo específico de comunicação, inerente a organização. • Os dispositivos do hardware interagem de acordo com este protocolo de comunicação, baseado em um conjunto de comandos de e/s. Sistemas Operacionais Arquitetura de computadores FATEC SP Elementos que diferenciam arquiteturas Técnicas de Virtualização • Técnicas utilizadas pela arquitetura, com o objetivo de aumentar estender as funções e eficiência do sistema. • Tais técnicas utilizam dispositivos especiais do hardware, implementados através de controles do sistema operacional Sistemas Operacionais Arquitetura de computadores FATEC SP Exemplos de Arquiteturas Mainframes Sistema 390 – Sistema operacional OS/390 (IBM) Servidores / Super Servidores IBM Regatta – Sistema operacional AIX (IBM) HP Superdome – Sistema operacional HPUX (HP) SUN E10000 Series – Sistema operacional SUN SOLARIS (SUN) Estações de trabalho / desktops / PCs Intel Pentium Core 2 Duo - Windows / LINUX SUN SPARC – Sistema Operacional SunOs Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Unidade Central de processamento - Funções básicas • Executar as instruções • Ler e Gravar na memória • Sincronizar eventos para o uso da memória • Enviar comandos ao PES • É composta basicamente pela UAL, UC e Registradores Unidade Aritmética e Lógica CPU Unidade de controle Memória PES PES PES Registradores Periférico Periférico Periférico Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Unidade Aritmética e Lógica - UAL Compreendem os circuitos que executam as instruções de maquina, tais como Somar, Multiplicar, dividir, mover, ou instruções de booleanas, ou ainda, instruções que iniciarão e/s. Unidade Aritmética e Lógica Unidade de controle CPU Registradores Memória PES PES PES Periférico Periférico Periférico Sistemas Operacionais FATEC SP Arquitetura de computadores Processador (CPU) ULA • • • Operações aritméticas (+,-,*,/) Operações Lógicas (OR, AND, NOT, XOR) A velocidade é elevada (ns) Tabelas verdade A B A OR B A AND B A XOR B NOT A 0 0 0 0 0 1 0 1 1 0 1 1 1 0 1 0 1 0 1 1 1 1 0 0 Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Registradores • São circuitos de armazenamento • De rápido acesso Unidade Aritmética e Lógica CPU Unidade de controle Memória PES PES PES Registradores Periférico Periférico Periférico Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Unidade de Controle • Responsável pelo sincronismo dos eventos • Controla o acesso a memória Unidade Aritmética e Lógica CPU Unidade de controle Memória PES PES PES Registradores Periférico Periférico Periférico Sistemas Operacionais Arquitetura de computadores FATEC SP Processador Palavra de estado do Processador - PSW É um registrador que registra em seu conteúdo diversas informações relevantes, como por exemplo: • O endereço da próxima instrução que será executada • O estado em que maquina se encontra (ativa, inativa, etc.) • O modo de execução (Supervisor, ou programa) • Indicará se o processo em execução pode ou não ser interrompido Sistemas Operacionais FATEC SP Arquitetura de computadores Processador PSW – Formato Exemplos: Maquina em modo Supervisor 07 02 0001 0000 000010120000 Maquina com estado Ativa Endereço da próxima instrução Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Instrução de Maquina OP OPERANDO 1 OPERANDO 2 ... • OP – Identifica o código da operação, como por exemplo Somar, mover, etc • OPERANDOS – identificam os campos de memória que serão manipulados pela instrução. Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Instrução de Maquina - Operandos OP OPERANDO 1 OPERANDO 2 ... • O número de operandos é variável • A instrução pode ter 0,1,2 ou 3 operandos • O operando contém ou indica o endereço de memória, e o tamanho implícito ou explícito do campo. • A arquitetura estabelece o conjunto e o formato das instruções. Sistemas Operacionais Arquitetura de computadores FATEC SP Tradutores Assembler ou Montador • • Monta programas convertendo o código assembler para linguagem de máquina A montagem é um para um Compilador • • Converte código fonte em linguagem de alto nível para linguagem de máquina Agrega N instruções de máquina para uma instrução de alto nível Interpretador • • Mesma função do compilador, só que vai executando linha a linha É feito em tempo de execução Sistemas Operacionais FATEC SP Arquitetura de computadores Compilação e Montagem Assembler Linguagem de Alto Nível Ler Ler arq1 Somar A,B em C Se C >= 0 Gravar reg1 Compilacão Linguagem de Máquina 01001101b 00101010b 11100000b 11110101b 11001010b 10000101b Montagem Get arq1,reg1 Add R1,R2 St R1,R3 Clc R1,=f’0’ Be ler B gravar Sistemas Operacionais FATEC SP Arquitetura de computadores Tradução Bibliotecas Códigos Instruções de Máquina Linguagem de Alto Nível Tradutor Programa Fonte Compilador ou Interpretador 01001101b 00101010b 11100000b 11110101b 11001010b 10000101b Código objeto Programa executável Sistemas Operacionais FATEC SP Arquitetura de computadores Processador Ciclo de instrução de maquina • Busca – A CPU busca a instrução na memória, com base na PSW • Decodificação – Identifica qual a operação a ser realizada • Endereçamento – Faz o acesso aos operandos na memória e traz os dados. • Execução – ativa o circuito especifico que realizará a operação • Verificação – verifica o resultado da operação • Armazenamento – armazena resultados da operação na memória • Posicionamento – Reposiciona a PSW com a próxima instrução a ser executada Questão: Quais os erros comuns acontecem na execução das instruções? Sistemas Operacionais Arquitetura de computadores FATEC SP Memória Conceitos básicos • É o elemento do computador onde são armazenadas as informações. • A unidade é o bit, Que assume dois estados: 0 ou 1 • O byte contém 8 bits sequenciais. • O byte é a unidade de acesso, e de endereçamento • Para cada byte na memória existe um endereço acessível. • Os programas possuem instruções e dados. • As partes que contém instruções, não sofrem alteração no seu conteúdo. Sistemas Operacionais Arquitetura de computadores FATEC SP Memória Tipos de memória RAM - Random Access Memory • Memória volátil de leitura e escrita • As informações são perdidas caso o sistema de alimentação seja interrompido ROM - Read Only Memory • Memória não-volátil apenas de leitura • Seu conteúdo é gravado no processo de fabricação PROM - Programable ROM • Pode ser gravada apenas uma vez EPROM - Erasable PROM • Pode ser apagada e regravada várias vezes. Sistemas Operacionais Arquitetura de computadores FATEC SP Memória Tempo de Acesso • Tempo requerido para leitura ou gravação na memória Ciclo de processador • Menor unidade de tempo em que o processador (CPU) ao executar uma instrução, transfere uma informação. O maior componente de tempo na execução de uma instrução é o acesso a memória Sistemas Operacionais Arquitetura de computadores FATEC SP Memória Hierarquia de memória • Registradores – funcionam na velocidade da CPU, em frações de ns • Cache – alguns ns • Memória RAM, ou Memória principal – uma, ou duas dezenas de ns • Disco Magnético (este poderá ter Cache) – até uma ou duas dezenas de ms • Fita Magnética – Frações de segundos, crescendo com o tamanho do arquivo Sistemas Operacionais FATEC SP Arquitetura de computadores Processador de entrada e Saída • É um processador especializado em E/S • Controla e coordena as operações de E/S • Ao ser acionado pela CPU, busca na memória o que fazer. • Reconhece o pedido, identifica o periférico, a localização dos dados • Estabelece um sincronismo com o periférico • Uma vez sincronizado, inicia a transferência dos dados para a memória (leitura), ou da memória para o periférico (gravação). • Identifica se a operação foi realizada com sucesso, registrando na memória. • Ao concluir avisa a CPU, emitindo um sinal de controle, de que a operação foi finalizada.