Please enable JavaScript.
Coggle requires JavaScript to display documents.
Sistemas Operacionais A - Cap.1 - Visão Geral Cezar Augusto Crummenauer…
Sistemas Operacionais A - Cap.1 - Visão Geral
Cezar Augusto Crummenauer
Funções básicas de um sistema operacional
Gerenciar recursos do hardware
Abstração - Proporcionar uma máquina virtual mais simples do que a máquina real
Tipos de sistemas operacionais
Sistemas monoprogramáveis/monotarefa
Hardware dedicado à execução de um único programa
Simples implementação
Subutilização de recursos
Sistemas multiprogramáveis/multitarefa
Os recursos computacionais são compartilhados entre diversos usuários e aplicações
Redução do custo em virtude do compartilhamento
Sistemas multiprogramáveis monousuário/multiusuário
Gerenciamento de aplicações
Batch
Década de 60
Sem interação do usuário com as aplicações
Entradas e saídas implementadas por memória secundária
Exemplos de aplicações
Cálculos numéricos
Compilações
Ordenações
Backups
Tempo compartilhado - Sistemas on-line
Tarefas são divididas e executadas em fatias de tempo
Usuário tem a sensação de que o sistema está dedicado a ele
Permitem a interação de usuários como interromper uma tarefa ou verificar aquivos
Tempo real
Implementação semelhante aos sistemas de tempo compartilhado
Tempos de processamento devem estar dentro de limites rígidos - usado em serviços críticos
Não existe a ideia de fatia de tempo
A aplicação atual somente é substituída por uma aplicação de maior prioridade
A prioridade é definida pela própria aplicação e não pelo sistema operacional
Exemplos de uso
Monitoramento de refinarias de petróleo
Controle de tráfego aéreo
Usinas termoelétricas e nucleares
Sistemas com múltiplos processadores
Mais de uma CPU trabalhando em conjunto
Mais de um programa ao mesmo tempo ou dividido em mais de uma CPU
Exemplos de uso
Desenvolvimento aeroespacial
Prospecção de petróleo
Simulações
Processamentos de imagens
CAD
Vantagens adicionais
Escalabilidade
Ampliar o poder adicionando novos processadores
Disponibilidade
Manter o sistema em funcionamento mesmo em casos de falhas
Balanceamento de carga
Tipos
Fortemente acoplados - multiprocessadores
Apenas uma memória principal para todos os processadores (taxa maior de transferência)
Gerenciados por apenas um sistema operacional
Divididos em
SMP (Symmetric Multiprocessors)
Tempo uniforme de acesso à memória principal pelos processadores
NUMA (Non-Uniform Memory Access)
Apresenta diversos conjuntos interconectados de processadores e memórias principais
Tempo de acesso a memória varia de acordo com a localização física
Fracamente acoplados - multicomputadores
Cada processador tem sua memória principal
Mais de um sistema computacional conectados através de linhas de comunicação
Funcionam de forma independente (próprio sistema operacional e gerenciamento de recursos)
Cada sistema também pode possuir mais de um processador
Tipos
Sistemas operacionais de rede
Host compartilha seus recursos - como impressoras ou diretórios - com outros hosts
Rede local é um exemplo
Sistemas operacionais distribuídos
O sistema operacional esconde os detalhes dos hosts e passa a tratar eles como um conjunto único, como se fosse um sistema fortemente acoplado
Divide a carga entre os hosts
Outro exemplo, Clusters
Mais de um servidor ligado - geralmente por uma conexão de alto desempenho
Máquina de camadas
Aplicações
Utilitários
Sistema Operacional
Linguagem de máquina
Microprogramação
Circuitos elétricos
Histórico
1642
Blaise Pascal - francês
Máquina de somar
1673
Gottfried Leibniz - alemão
Máquina de somar e multiplicar
1820
Charles Colmar - francês
Máquina para as quatro operações
1822
Charles Babbage - inglês
Máquina para equações polinomiais
1833
Charles Babbage - inglês - "pai do computador"
Máquina analítica - qualquer operação
Conceitos de entrada/saida, processamento, memória, unidade de controle
Programada por Augusta Ada Byron - primeira pessoa programadora
1854
George Boole - matemático inglês
Criação da lógica booleana - modelo digital utilizado até hoje
~1890
Herman Hollerith
Calcular o senso dos EUA em 1890 usando cartões perfurados
1896
Herman Hollerith
Funda a Tabulating Machine Company
Que se torna a IBM (Internacional Business Machine) em 1924
Grande uso do sistema de cartões perfurados por boa parte século XX
1930
Primeiras tentativas de criar uma calculadora eletrônica
Na Alemanha, Konrad Zuse desenvolveu o Z1
Nos EUA, John Vicent Atanasoff e Clifford Berry
Máquina para equações lineares
Para muitos, o ABC (Atanasofff-Berry Computer) é o primeiro computador eletrônico da história
1937
Alan Turing - inglês
Desenvolveu a ideia de Maquina Universal ou Máquina de Turing, capaz de executar qualquer sequência de instruções
Apesar de ser um modelo teórico, criou a ideia de "processamento de símbolos", base da ciência da computação moderna
Década de 1940
A Segunda Guerra Mundial desencadeou o desenvolvimento de máquinas que pudessem acelerar os procedimentos manuais realizados para fins militares
1943
Alan Turing
Máquina Colossus para decifrar os códigos - conhecidos com Enigma - dos nazistas
1944
Professor Howard Aiken
Mark 1
~1946-1955
ENIAC
Década de 1950
1951
MIT
Whirlwind - Primeiro computador para processamento em tempo real
Introduziu a tecnologia de memória magnética
UNIVAC I
Primeiro computador bem sucedido fabricado para fins comerciais
1953
Primeiro sistema operacional
Desenvolvido na GM em um computador IBM
Final da década de 1950
Universidade de Manchester, na Inglaterra desenvolveu o sistema Operacional Atlas
Implementação de sistema de paginação - Hierarquia de memória
Década de 1960
Multiprogramação
Mais facilidade para computadores em empresas
Substituição das fitas por discos
1963
A Burroughs lança o computador B-5000
Memória virtual com segmentação e multiprocessamento assimétrico
1964
A IBM lança o System/360
Máquinas de portes diferentes com a mesma arquitetura
OS/360
Década de 1970
1971
A Intel Corp. produz seu primeiro microprocessador, o Intel 4004 e 3 anos depois o 8080
1976
Fundação da Apple e Microsoft
Década de 1980
1981
IBM PC
TCP/IP
Workstation
1982
Sun Microsystems
Primeiras estações RISC
SunOS e posteriormente Sun Solaris
1982-1986
NCE/UFRJ
Sistema Operacional PLURIX para o computador PEGASUS
Transportado depois, em 2002, para a linhas de processadores Intel, dando origem ao TROPIX
Década de 1990
Grandes avanços em telecomunicações
TCP/IP torna-se padrão
Internet
Sistemas operacionais baseados em interfaces gráficas
1991
Linus Torvalds
Início do desenvolvimento do Linux
1993
Windows NT
Windows NT e Unix no ambiente corporativo
Software aberto
Linux, MySQL, Apache, Sendmail e outros
Década de 2000
Computadores mais eficientes para atender a demanda cada vez maior de processamento
Novas interfaces entre homem e máquina - Imagens, sons e linguagens naturais
Sistemas proativos
Menos intervenções do usuário
Exploração de sistemas distribuidos
Esforços para unificar s plataformas Windows
Novas arquiteturas de 64 bits - Mais capacidade de endereçamento de memória
Windows XP, Vista...
Década de 2010
Tablets e SmartPhones
Serviços alugados
Infraestrutura