02-Introdução a sistemas operacionais

Propaganda
Sistemas Operacionais
Prof. Pedro Luís Antonelli
Anhanguera Educacional
SISTEMA OPERACIONAL
• Definição (MACHADO/MAIA, 2007)
– Conjunto de rotinas executadas pelo processador
– Controlar o funcionamento de um computador,
gerenciando a utilização e o compartilhamento dos seus
recursos:
• Processadores
• Memórias
• Dispositivos de Entrada e Saída
• Definição (TANANBAUM, 2003)
– Programa de computador que age como intermediário
entre o usuário e o hardware
SISTEMA OPERACIONAL
• Definição (MACHADO/MAIA, 2007)
– Conjunto de rotinas executadas pelo processador
– Controlar o funcionamento de um computador,
gerenciando a utilização e o compartilhamento dos seus
recursos:
• Processadores
• Memórias
• Dispositivos de Entrada e Saída
• Definição (TANANBAUM, 2003)
– Programa de computador que age como intermediário
entre o usuário e o hardware
SISTEMA OPERACIONAL
• Por quê utilizar um Sistema Operacional
– Aproveitamento de hardware
– Executar programas e facilitar a solução de problemas
– Usar o hardware de maneira eficiente
• Funções Básicas
–
–
–
–
–
–
Interface com o usuário (shell, ambiente)
Gerenciamento de processos
Gerenciamento de memória
Tratamento de interrupções
Gerenciamento do sistema de arquivos
Operações de entrada/saída
VISÃO DO SISTEMA COMPUTACIONAL
• Sistema Computacional consiste em
– Hardware
– Programas do Sistema
– Programas de Aplicação
TANENABUM, fig.1.1, pag 1 – Um sistema computacional
VISÃO DO SISTEMA OPERACIONAL
MACHADO, fig.1.1, pag 4 – Visão do sistema operacional
MÁQUINA DE NÍVEIS
• Máquina de Camadas
– Ótica do hardware e software
• Máquina Virtual
– Visão modular
MACHADO, fig.1.2, pag 6 – Visão do computador pelo usuário
HISTÓRICO
• Antes de 1940
–
–
–
–
–
–
–
–
–
Computadores eram grandes calculadoras
1642 – Pascaline
1673 – Máquina de somar e multiplicar
1820 – Máquina realiza as 4 operações
1833 – Máquina analítica
1854 – Lógica booleana
1890 – Leitor de Cartões perfurados
1930 – Z1 (Computador com reles)
1937 – Máquina Universal (Turing)
• Executava algoritmos e processamento de
símbolos
• Base de toda a ciência da computação moderna
HISTÓRICO
• Década de 40
– 1943 – ENIGMA (decifrar códigos de guerra)
– 1944 – Colossus (IBM)
– 1946 – ENIAC
– 1949 – EDSAC, EDVAC, IAS, MARK1 ...
HISTÓRICO
• Década de 50
– Transistor – + velocidade de
processamento
– Memórias magnéticas –
acesso + rápido
– 1951 – Whirtwind 1º
computador
(processamento real)
– 1953 – IBM 701
1º Sistema Operacional
– Processamento em Bath
HISTÓRICO
• Década de 60
– Circuito Integrado – CI
– 1964 – IBM System 360
– OS/360 – Multiprogramação, Time-sharing, On-line
– 1965 – MULTICS – múltiplos processadores
– 1969 – UNIX – Versão do MULTICS (Ken Tompson)
HISTÓRICO
• Década de 70
–
–
–
–
–
–
Circuitos Integrados de Larga Escala – LSI
PDP-11, VAX-VMS
1971 – ALTAIR – Processador 8008, Pascal e C
1976 – APPLE II – Steve Jobs e Steve Wozniak
Fundação da Apple e da Microsoft
CM/P – Sistema Operacional da Digital Research
HISTÓRICO
• Década de 80
–
–
–
–
IBM PC – Processador 8080 de 16 bits
UNIX Berkeley = BSD
1982 – Sun Microsystem (RISC com SunOS e Solaris)
Microsoft Windows, IBM OS/2, Novell Netware, Microsoft Lan Manager
HISTÓRICO
• Década de 90
–
–
–
–
–
Sistemas especialistas, multimídia, BD distribuídos
IA, Redes Neurais
Processadores + rápidos, Memórias + baratas
Unidades de E/S menores
UNIX (HP VX e IBM AIX), Microsoft Windows, Linux
HISTÓRICO
• Momento Atual (2007 ...)
– Evolução mais rápida do hardware
– Novas interfaces
• Linguagens naturais, som, realidade virtual
– Processamento Distribuído
– Sistemas Operacionais Embarcados
EVOLUÇÃO DOS SISTEMAS OPERACIONAIS
• 1ª FASE (1945-1955)
– ENIAC – Programação painéis - linguagem de máquina
– Não existia o conceito de SO e LP
• 2ª FASE (1956-1965)
– Primeiras LP, cartões perfurados, SO processamento Bath,
Input/Output
• 3ª FASE (1966-1980)
–
–
–
–
–
IBM OS/360
Multiprogramação, Sistemas de Tempo Compartilhado
Surgimento do UNIX (1969)
Primeiros Microcomputadores de 8 bits da Apple
SO CP/M
EVOLUÇÃO DOS SISTEMAS OPERACIONAIS
• 4ª FASE (1981-1990)
–
–
–
–
–
Miniaturização de equipamentos
Personal Computer (PC) 16 bits da IBM
Microsoft MS-DOS
Sistemas Multitarefas: 1-Preemptivos e 2-Cooperativos
Sistemas Operacionais de Rede (SOR)
• 5ª FASE (1990-...)
–
–
–
–
–
Sistemas para arquiteturas paralelas
Sistemas de processamento distribuído
Arquitetura Cliente/Servidor
Interfaces Gráficas Amigáveis
Software Livre
TIPOS DE SISTEMAS OPERACIONAIS
• Evolução do hardware e de aplicações suportados
pelo Sistema Operacional
– Job  Processo  Thread
Tipos de
Sistemas Operacionais
Sistemas
Monoprogramáveis/
Monotarefa
Sistemas
Multiprogramáveis/
Multitarefa
MACHADO, fig.1.5, pag 15 – Tipos de sistemas operacionais
Sistemas
com Múltiplos
Processadores
SO MONOPROGRAMÁVEIS/MONOTAREFA
• Primeiros SOs
• Processador, memória e periféricos dedicados à execução de um
único programa
• Surgimento dos primeiros computadores (1960)
• Computadores pessoais (PC - 1970)
• Simples implementação
MACHADO, fig.1.6, pag 16 – Sistemas monoprogramáveis / monotarefa
SO MULTIPROGRAMÁVEIS/MULTITAREFA
• Evolução dos SOs mono-programáveis
• Recurso computacionais compartilhados entre os usuários
• Outros programas são executados durante período de
espera por aplicações
• Vantagens
– Redução do tempo de resposta de aplicações
– Compartilhamento de Recursos
• Multiprogramáveis
– Monousuários – computadores pessoais, estações de trabalho,
interação no SO
– Multiusuários – ambiente interativo, usuários simultâneos
SO MULTIPROGRAMÁVEIS/MULTITAREFA
MACHADO, fig.1.7, pag 17 – Sistemas multiprogramáveis / multitarefa
SO MULTIPROGRAMÁVEIS/MULTITAREFA
• Classificam-se conforme as aplicações são
gerenciadas
MACHADO, fig.1.8, pag 18 – Tipos de sistemas multiprogramáveis / multitarefa
SO MULTIPROGRAMÁVEIS/MULTITAREFA
• Sistemas Bath (Lote)
–
–
–
–
2ª Fase SO
Grupo de programas é submetido ao processamento
Diminui o tempo entre a execução dos programas
Permitindo melhor desempenho de processamento
– Exemplo
•
•
•
•
traz os cartões para o 1401
lê os cartões para a fita
coloca a fita no 7094 que executa o processamento
coloca a fita no 1401 que imprime a saída
TANENBAUM, fig.1.2, pag 5 – Um sistema em lote
SO MULTIPROGRAMÁVEIS/MULTITAREFA
• Sistemas Time Sharing (Tempo Compartilhado)
– Arquitetura complexa e de propósito geral
– Interação de vários usuários com o sistema por meio de
terminais de vídeo
– Computador pode ser usado por vários usuários ao mesmo
tempo
– Divide o poder computacional do computador entre os
usuários
– Time-Slice ou Quanta = Tempo do processador
– Exemplo
• UNIX
• OS2 IBM
• Windows NT (200X)
SO MULTIPROGRAMÁVEIS/MULTITAREFA
• Sistemas Operacionais Real Time (Tempo Real)
– Dedicados à sistemas de controle e medição, com
monitoramento contínuo de instrumentos
• Controle industrial, robóticos, realidade virtual
• Sistemas Operacionais de propósito geral
• Multimídia, realidade virtual, robótica
SISTEMAS COM MÚLTIPLOS PROCESSADORES
• Duas ou mais CPUs trabalham em conjunto
• Vários programas são executados ao mesmo tempo ou o
programa é dividido em tarefas
• Escalabilidade – Capacidade de ampliar o poder computacional
adicionando novos processadores
• Disponibilidade – Capacidade de manter o sistema em operação
em caso de falhas
• Balanceamento de Carga – Capacidade de atribuir
processamento entre os diversos processadores
• Classificação
– Sistemas Fortemente Acoplados
– Sistemas Fracamente Acoplados
SISTEMAS COM MÚLTIPLOS PROCESSADORES
• Sistemas Fortemente Acoplados
– Vários processadores e uma única memória física e
dispositivos de E/S são gerenciados por um único SO
– Multiprocessadores
– SMP – Simetric Multiprocessors
– NUMA – Nom Univorm Memory Access
MACHADO, fig.1.10, pag 21 – Sistemas fortemente acoplados
SISTEMAS COM MÚLTIPLOS PROCESSADORES
• Sistemas Fracamente Acoplados
– Dois ou mais sistemas computacionais conectados através de
linhas de comunicação independentes
– Gerenciam seus próprios recursos
– Multicomputadores
– SOR – Sistemas Operacionais de Rede
– SD – Sistemas Distribuídos
MACHADO, fig.1.11, pag 21 – Sistemas fracamente acoplados
SISTEMAS DISTRIBUÍDOS
• Sistema formado por um conjunto de módulos,
compostos pelo menos por processador-memória,
interligados através de um subsistema de comunicação
• O hardware deve oferecer facilidades de comunicação
entre processadores cooperando sob um controle
descentralizado, possibilitando a execução de programas
de aplicação
• Exemplo
– UNIX
– Amoeba
EXEMPLO DE SISTEMAS
DISTRIBUÍDOS
Sistema MOSIX – Sistema distribuído fracamente acoplado
SISTEMAS PARALELOS
• Sistemas atuando em mais de uma CPU de modo colaborativo
• Paralelismo de hardware de sistemas multiprocessados
• Compartilham a mesma memória física, barramento, relógio
• Sistemas Distribuídos Fortemente Acoplados
• É uma classificação dos sistemas multiprocessados
• Dependendo como estão conectados e compartilhados pode
ser:
– Paralelo
– Multicomputador
– Multiprocessador
SISTEMAS OPERACIONAIS DE SERVIDORES
• Executados em servidores, estações de trabalho,
computadores de grande porte
• Controlam múltiplos usuários
• Compartilham recursos e dados
• Exemplo
–
–
–
–
–
UNIX
Windows 200X Server
Linux
IBM AIX
Sun Solaris
SISTEMAS OPERACIONAIS DE COMPUTADORES PESSOAIS
• Surgiram na 4ª Fase dos SO em 1981 para computadores de 16
bits (IBM e MS-DOS)
• Oferece interface para único usuário
• Dispositivos: mouse, teclado, impressora, monitor
• Microprocessador
– Conceito de multitarefa (time sharing)
– Multitarefa – múltiplas tarefas são executadas aparentemente de
forma simultânea em uma única CPU
• Exemplo
–
–
–
–
Windows NT
Linux
Windows 9x
MacOS
SISTEMAS OPERACIONAIS EMBARCADOS
• Sistemas adaptados para dispositivos móveis
• Equipamentos como PDAs, celulares, MP3
Player, Câmeras
• Memória limitada, processador mais lento
• Exemplo
– PalmOS
– Windows Mobile
Sistemas Operacionais
Adaptada do material original do Prof. Marcio A. Artero
BIBLIOGRAFIA BÁSICA
DEITEL, Harvery M.; DEITEL, Paul J.;
CHOFFNES, David R.. Sistemas Operacionais. 3ª
ed. São Paulo: Pearson Education,2005.
TANENBAUM, Andrew S. Sistemas Operacionais
Modernos. 2ª ed. São Paulo: Pearson Prentice
Hall, 2008.
Sistemas Operacionais
BIBLIOGRAFIA COMPLEMETAR
SILBERSCHATZ, Abraham; GALVIN, Peter Baer; GAGNE,
Greg. Fundamentos de Sistemas Operacionais. 6ª ed. Rio
de Janeiro: LTC, 2004.
SILBERSCHATZ, A.. Sistemas Operacionais. 6ª ed. Rio de
Janeiro: LTC, 2004.
OLIVEIRA, Rômulo Silva de; CARISSIMI, Alexandre da
Silva; TOSCANI, Simão Sirineo. Sistemas Operacionais. 3ª
ed. Porto Alegre: Sagra Luzzatto, 2004.
Sistemas Operacionais
BIBLIOGRAFIA COMPLEMETAR- continuação
TANEMBAUM, A. S.. Organizacao estruturada de
computadores. 4ª ed. Rio de Janeiro: LTC, 2001.
KORFF, Yanek. Mastering FreeBSD and OpenBSD
Security. 5ª ed. Sebastepol - CA: Beiging O'Reily, 2005.
Download