Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Arquitetura de Sistemas Operacionais Capítulo 1 Visão Geral Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tópicos a serem abordados Definição Introdução Funções básicas Máquina de níveis Histórico Tipos de sistemas operacionais Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Definição Sobell Um Sistema Operacional pode ser definido como um gerenciador dos recursos que compõem o computador (processador, memória, I/O, arquivos, etc). Os problemas centrais que o Sistema Operacional deve resolver são o compartilhamento ordenado, a proteção dos recursos a serem usados pelas aplicações do usuário e o interfaceamento entre este e a máquina. Stemmer. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Definição Stemmer É um programa de controle do computador. O Sistema Operacional é responsável por alocar recursos de hardware e escalonar tarefas. Ele também deve prover uma interface para o usuário - ele fornece ao usuário uma maneira de acesso aos recursos do computador. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Definição Tanembaum Sistema Operacional (SO) é um programa que controla todos os recursos do computador e provê um ambiente no qual programas de aplicação podem ser escritos Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Introdução Sistema operacional: É um conjunto de rotinas executado pelo processador; Principal função é controlar o funcionamento de um computador; Oculta os detalhes do hardware do usuário; Objetivo é funcionar como uma interface entre o usuário e o computador. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Introdução Outros nomes para S.O. Monitor; Executivo; Supervisor; Controlador. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Funções Básicas Facilidade de acesso aos recursos do sistema; Compartilhamento de recursos de forma organizada e protegida. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Funções Básicas Facilidade de acesso aos recursos do sistema Fornecer uma abstração de alto nível dos recursos de hardware da máquina, livrando o programador dos detalhes de funcionamento dos mesmos; Sistema Operacional funciona como uma máquina virtual; Visão top-down. Ex: Fornecer uma visão dos discos como uma coleção hierárquica de arquivos, identificados por nomes e manipuláveis por funções de abertura/fechamento e leitura/escrita, escondendo os detalhes de acionamento dos motores das unidades, posicionamento dos cabeçotes, quantidade de trilhas e tamanho dos setores dos discos. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Funções Básicas Compartilhamento de recursos de forma organizada e protegida Fornecer um esquema de alocação dos recursos (processadores, memórias, I/O, etc.) entre os processos concorrentes. Estabelecer critérios de uso dos recursos e ordem de acesso aos mesmos, impedindo violação de espaço de memória de processos concorrentes e tentativas de acesso simultâneo a um mesmo recurso gerência e proteção dos dispositivos. Visão bottom-up Permite diminuição de custos; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Funções Básicas Visão do sistema operacional Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Funções Básicas Fazem parte do S.O.? Compiladores; Linkers; Bibliotecas; Deputadores; Outras ferramentas. Resposta Não, são utilitários. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Máquina de Níveis Um sistema computacional visto somente sob o óptica do hardware tem pouca utilidade; Os serviços são oferecidos aos usuários através do software. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Máquina de Níveis Motivação Problema: Complexidade O usuário tinha que desenvolver, em linguagem de máquina, as rotinas para acessar e controlar os recursos do computador Solução: Abstração Um software para gerenciar os recursos do computador (Sistema Operacional) Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Máquina de Níveis O computador pode ser visualizado como maquina de níveis ou de camadas. Inicialmente duas camadas: Nível 0 – hardware; Nível 1 – sistema operacional. Esta organização é chamada máquina virtual Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Máquina de Níveis Visão do usuário Arquitetura de Sistemas Operacionais – Machado/Maia Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Máquina de Níveis O computador não possui só dois níveis, mas sim, tanto quando forem necessários Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Máquina de Níveis Máquina de níveis Arquitetura de Sistemas Operacionais – Machado/Maia Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico A evolução dos sistemas operacionais está relacionada com a evolução do hardware; 1642, Pascal inventou a máquina de somar; 1673, Gottfried Leibniz inventou uma máquina para somar e multiplicar; 1820, Charles Colmar uma máquina que fazia as quatro operações; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico 1822 Charles Babbage máquina para cálculos polinomiais evoluindo para uma máquina capaz de executar qualquer tipo de operação (Máquina Analítica); Esta maquina possuía os conceitos de CPU, memória, dispositivos de I/O Augusta Ada Byron era responsável pela seqüência de operações executa pela máquina(primeira programadora); Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico 1854, George Boole cria a lógica booleana, base para o modelo de computação digital; Herman Hollerith cria os cartões perfurados, funda a IBM Máquina de Turing ou máquina universal, 1937, processamento de símbolos, base da ciência da computação moderna. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Cartão perfurado Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Lady Lovelace (Ada) Charles Babbage Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década 1940 Uso militar, milhares de válvulas, ocupavam áreas enormes, lentos e pouco confiáveis; 1943, Alan Turing envolvido com o Enigma – projeto para quebra a criptografia alemã); Mark I primeiro computador eletrônico (1943); ENIAC usado para cálculos balísticos e a bomba de hidrogênio (17.000 válvulas, 30 toneladas, consumo 140KW e 5.000 +); Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1940 Programar exigia conhecimento profundo do hardware, era usados painéis com 6.000 conectores, utilizando linguagem de máquina; O problema era diferença de tempo na execução e na programação; Arquitetura de von Neumann, conceito do programa armazenado. Utiliza os conceitos de Turing e Babbage juntos; EDSAC primeiro computador a usar este conceito (1949). Não existia SO e nem interação. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Mark I Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico ENIAC Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico EDSAC Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Alan Turing von Neumann Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1950 O transistor e a memória magnética contribuiriam para o enorme avanço dos computadores; UNIVAC I primeiro computador bem sucedido para fins comerciais; Whirlwind I primeiro computador de tempo real (MIT), introduziu a memória magnética; Processamento bath; Primeiro SO chamado de monitor (1953); Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1950 Primeira linguagens de alto nível: FORTRAN, Cobol, Algol, etc. Evolução dos SO para facilitar a codificação, submissão, execução e depuração de programas; Conceito de independência de dispositivos, os programadores não precisavam escrever as rotinas de I/O; Sistema operacional Atlas, introduziu a memória hierarquizada. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1960 Surge os circuitos integrados viabilizando e difundindo o uso de sistemas computacionais nas empresas; Implementação de novas técnicas: multiprogramação, multiprocessamento, time-sharing e memória virtual; Multiprogramação: enquanto um programa aguardava uma operação de I/O, outro utiliza a CPU; Troca da fita magnética por disco magnético torna os sistemas mais rápidos; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década 1960 B-5000 (Burroughs) que oferecia: multiprogramação, memória virtual com segmentação, multiprocessamento assimétrico, sendo desenvolvido em uma linguagem de alto nível; Primeiro supercomputador CDC-6600 projetado por Aeymour Cray; IBM lança o System/360 (1964) primeira família de computadores; Sistemas bath com multiprogramação, OS/360; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1960 Tempo compartilhado (time-sharing); Novos dispositivos: teclado e monitor, permitindo sistemas on-line; Lançamento PDP-8 (1965) primeira linha de computadores de pequeno porte e baixo custo; Desenvolvimento do Unix; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1970 LSI e VLSI levam ao barateamento e miniaturização dos equipamentos. PDP-11 (1970) e VAX/VMS; Primeiro microprocessador Intel 4004 (1971) e o 8080 (1974) utilizado o primeiro microcomputador Altair; Zilog lança o Z80; Apple II (8 bits), Steve Jobs e Steve Wozniak (1976); CPM sistema operacional dominante; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1970 Arquiteturas com diversos processadores, multiprocessamento; Processadores vetoriais, CRAY 1 (1976) 100 MFLOPS; Redes distribuídas (WANs) independentes das distâncias geográficas; Protocolos de rede: Proprietários DECnet, SNA; Públicos NCP, X.25; Redes locais (LANs) Linguagem Pascal (1971) e C (1975). Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1980 IBM PC, nova filosofia dos computadores pessoais, Intel 8088, SO DOS; Ganha impulso os SOs multiusuários (UNIX). Bereley cria o Unix BSD que implementa o TCP/IP; Surge as workstations (estações de trabalho) sistemas monousuário porém multitarefa; Sistemas operacionais de rede: Novell, LAN Manager. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1990 Desenvolvimento de processadores, memórias e dispositivos de I/O mais rápidos, baratos, menores, etc.; Evolução para ULSI (Ultra Large Scale Integration); Consolidação da Internet tornando o TCP/IP torna-se um padrão de mercado; Arquitetura cliente/servidor usanda em ambientes distribuídos como a Internet; Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 1990 Disponibilização de serviços distribuídos, servidores WEB, mail, de arquivos, banco de dados, etc.; Consolidação de Sistemas Operacionais baseados em interface gráfica; Amadurecimento e popularização do software aberto Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Histórico Década de 2000 Arquitetura paralelas; Novas interfaces homem-máquina; Processamento distribuído será explorado nos sistemas operacionais; Sistemas operacionais estarão presentes em celulares, handhelds e palmtops. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Tipos e evolução de S.O. estão relacionados com: Evolução do hardware; Tipo de aplicação suportada. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Tipos de sistemas operacionais Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais SOs monoprogramáveis/monotarefa Execução de um único programa; Todos os recursos disponíveis para um único programa; Conhecido também como monotarefa; Simples implementação, sem preocupação com a concorrência do uso dos recursos. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais SOs monoprogramáveis/monotarefa Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais SOs multiprogramáveis/multitarefa Evolução do anteriores; Os recursos são compartilhados; O SO preocupa-se com a gerencia do compartilhamento dos recursos computacionais de forma ordenada e protegida; Redução de tempo de resposta e de custos; Implementação complexa. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Classifica-se (em relação ao número de usuários: Monousuário – um único usuário; Multiusuário – mais de um usuário. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais SOs multiprogramáveis/multitarefa Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais SOs multiprogramáveis /multitarefa Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Sistemas Bath Primeiros tipos de sistemas operacionais multiprogramados; Também chamados de jobs; Não permite interação com o usuário; Tempos de respostas longos; Todas as entradas e saídas são executadas de um dispositivo secundário, normalmente disco ou fita. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Processamento batch Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Sistemas de tempo compartilhado Time-sharing; Diversos programas sendo executados a partir da divisão do tempo do processador em pequenos intervalos (fatia de tempo – time-slice); Permite interação com usuário; Sistemas on-line. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Tipos de Sistemas Operacionais Sistemas de tempo real Semelhante ao tempo compartilhado, a diferença é o tempo de resposta exigido; Tempo de resposta deve ser atendido dentro de limites rígidos; Um programa utiliza o processador até parecer de maior prioridade, definida pela aplicação; Controle de processos, como refinaria de petróleo, usinas térmicas e nucleares, etc. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores SO´s com duas ou mais UCP´s interligadas trabalhando em conjunto, permitindo a execução simultânea de vários programas e/ou partes de um mesmo prograna A classificação através da forma de comunicação com a UCP e o grau de compartilhamento da memória e dos dispositivos de Entrada /Saída. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Escalabilidade é a capacidade de ampliar o poder computacional do sistema apenas adicionando novos processadores. Disponibilidade é a capacidade de um sistema poder continuar o processamento, mesmo se um dos processadores falhar ou parar de funcionar (reconfiguração). Balanceamento de carga possibilita distribuir a carga de processamento entre os diversos sistemas da configuração, melhorando o desempenho. Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores A forma de comunicação entre os processadores é um fator chave no desenvolvimento dos S.O. Esta forma pode ser: Fortemente acoplados; Fracamente acoplados. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Sistemas Fortemente Acoplados Nos sistemas fortemente acoplados apenas um espaço de endereçamento na memória é compartilhado por todos os processadores, sendo controlado pelo Sistema Operacional. Conhecidos como multiprocessadores Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores SMP Tempo de acesso a memória uniforme pelos diversos processadores NUMA Tempo de acesso a memória depende da localização física processadores na rede de interconexão. Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Sistemas Fortemente Acoplados Sistemas Simétricos Todos os processadores tem as mesmas funções e podem executar o Sistema Operacional de forma independente. Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Sistemas Fortemente Acoplados Sistemas Assimétricos(master/slave) Nos sistemas assimétricos(mestre/escravo) somente um processador primário é responsável pelo controle dos demais processadores e pela execução do Sistema Operacional. Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Sistemas Fracamente Acoplados Possui dois ou mais sistemas de computação conectados através de linhas de comunicação. Cada sistema tem sua própria memória, ao contrário dos sistemas fortemente acoplados, que dividem a memória. Funcionam de forma independente, possuindo seu processador, sua memória e dispositivos de E/S. Conhecidos como multicomputadores. Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Sistemas Fracamente Acoplados Sistemas Operacionais de Rede (SOR) Cada nós possui seu sistema operacional, hardware e software que viabilizam acesso a outros componentes da rede em conjunto com o compartilhamento de recursos na rede. Permite que host compartilhe o seus recursos; Os usuários tem conhecimento de todos os hosts. Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Sistemas Fracamente Acoplados Sistemas Operacionais Distribuídos Evolução dos Sistemas Fortemente Acoplados O que define sistemas distribuídos é a existência de um relacionamento mais forte entre os seus componentes, onde os S.O´s são os mesmos, possuindo um único sistema centralizado. O O.S. esconde os detalhes dos hosts individuais Exemplo: Clusters. Múltiplos Processadores Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores Sistemas fortemente acoplados Arquitetura de Sistemas Operacionais Cap. 1 - Visão Geral * Múltiplos Processadores Sistemas fracamente acoplados
Compartilhar