introdução à computação - deinf.ufma.brmaria/arqintqu/2013-2/aula-soft.pdf · • do ponto de...
TRANSCRIPT
Maria Auxiliadora H. L. Capron / J. A. Johnson
1
Introdução à Computação
Universidade Federal do Maranhão
Departamento de Informática
Profa. Msc. Maria Auxiliadora Freire [email protected]
1
Maria Auxiliadora H. L. Capron / J. A. Johnson
2
SOFTWARE
PARTE 1
Universidade Federal do Maranhão
Departamento de Informática
2
Maria Auxiliadora H. L. Capron / J. A. Johnson
3
Software de Sistemas
• Todos os programas relacionados à coordenação
das operações do computador.
• Exemplos:
– Sistemas operacionais.
– Conversores de linguagem:
• Convertem código de programa para
uma forma legível por máquina.
– Programas utilitários:
– Executam tarefas secundárias.
3
Maria Auxiliadora H. L. Capron / J. A. Johnson
4
• Conjunto de instruções/funções/tarefas que
definem o que o computador deve executar
para chegar a um determinado resultado.
• Instruções eletrônicas que em geral residem
em um meio de armazenamento.
• Um conjunto específico destas instruções é
chamado Programa.
• Quando o computador está usando um
programa em particular, dizemos que eles
está rodando ou executando aquele
PROGRAMA.
SOFTWARE
4
Maria Auxiliadora H. L. Capron / J. A. Johnson
6
Programas:
• Partes componentes do software
• Desenvolvidos utilizando Linguagens de Programação.
• Analistas de Sistemas e Programadores
– Projetam e desenvolvem programas / software
• Engenharia de Software
– Área de estudo que se preocupa com o desenvolvimento
de software
SOFTWARE
6
Maria Auxiliadora H. L. Capron / J. A. Johnson
7
• O sistema operacional é software: um conjunto de rotinas que são executadas pelo processador para facilitar o acesso aos componentes de hardware (processador, memória, dispositivos de E/S), e gerenciar o uso do sistema de computação (hardware e software).
• Tradicionalmente os S.O. eram escritos em linguagem Assembly. Já faz um certo tempo que a maioria dos S.O. são escritos em linguagens de alto nível.
Sistemas Operacionais
7
Maria Auxiliadora H. L. Capron / J. A. Johnson
8
• Composto por um conjunto de programas e rotinas
• Controla a execução de qualquer software utilizado
em um computador
• Gerencia os recursos do computador (hardware e
software) de modo a:
– Possibilitar sua utilização
– Aumentar sua eficiência
– Permitir a comunicação com outros equipamentos.
Sistemas Operacionais
8
Maria Auxiliadora H. L. Capron / J. A. Johnson
9
• Composição Básica Kernel (Núcleo) - coração do sistema
operacional, composto pelas funções centrais do SO
– O kernel é residente na memória
– Responsável por implementar as chamadas de sistema
(serviços)
– Principais componentes são: Gerência de processador,
memória, entrada / saída e Sistema de arquivos
– Gerencia o sistema operacional.
• Carregado do disco rígido para a memória quando o
computador é inicializado (Booting).
Sistemas Operacionais
9
Maria Auxiliadora H. L. Capron / J. A. Johnson
10
• Inicialização do Computador
• Gestão da Memória
• Gestão de Programas
• Programação de Tarefas
• Interfaceamento com o Usuário
• Configuração de Dispositivos
• Gerenciamento de Sistema Arquivo
• Segurança do Sistema
• Controle da Rede
• Monitoração do Desempenho
• Contabilidade
Funções do Sistemas Operacionais
10
Maria Auxiliadora H. L. Capron / J. A. Johnson
Passo 1
A fonte de alimentação fornece
energia elétrica para as
diferentes partes do sistema processador
BIO
S
Funções dos Sistemas Operacionais
Inicialização
11
Maria Auxiliadora H. L. Capron / J. A. Johnson
Passo 2
O processador procura
o BIOS
BIOS
Basic Input/Output System
Firmware que contém as
instruções de inicialização
do computador
processador
BIO
S
Funções dos Sistemas Operacionais
Inicialização
12
Maria Auxiliadora H. L. Capron / J. A. Johnson
Passo 3
A BIOS realiza o POST
POST
Power-On Self Test
Teste mediante o qual são verificados componentes tais como mouse, teclado, conectores e placas de expansão
processador
BIO
S
placas de expansão
conectores
teclado
drive de CD-ROM
Funções dos Sistemas Operacionais
Inicialização
13
Maria Auxiliadora H. L. Capron / J. A. Johnson
Passo 4
Os resultados do POST são
comparados com os dados
armazenados no chip CMOS
Chip CMOS
Complementary Metal Oxyde
Semiconductor
Armazena informações de
configuração do computador e
também detecta novos
dispositivos conectados
processador
BIO
S
placas de expansão
conectores
drive de CD-ROM
chip CMOS
Funções dos Sistemas Operacionais
Inicialização
14
Maria Auxiliadora H. L. Capron / J. A. Johnson
Passo 5
O BIOS procura os arquivos
do sistema no drive A
(disco flexível) e, em
seguida, no drive C (disco
rígido)
Arquivos do sistema
Arquivos específicos do
sistema operacional,
carregados durante a
inicialização
processador
BIO
S
placas de expansão
conectores
drive de CD-ROM
chip CMOS
disco rígido
Funções dos Sistemas Operacionais
Inicialização
15
Maria Auxiliadora H. L. Capron / J. A. Johnson
Passo 6
O programa de boot
carrega na RAM o kernel
do SO (armazenado no
HD), o qual assume, a
partir de então, o controle
do computador
processador
BIO
S
placas de expansão
conectores
drive de CD-ROM
chip CMOS
disco rígido
módulos de memória RAM
Funções dos Sistemas Operacionais
Inicialização
16
Maria Auxiliadora H. L. Capron / J. A. Johnson
Step 7
Passo 7
O SO carrega informações de configuração, exibe a área de trabalho (desktop) na tela e executa programas na pasta Iniciar (StartUp)
Pasta Iniciar (StartUp)
Contêiner de uma lista de
programas que são
automaticamente
iniciados quando o
computador é inicializado
Funções dos Sistemas Operacionais
Inicialização
17
Maria Auxiliadora H. L. Capron / J. A. Johnson
19
RAM (memória física)
O SO aloca uma
porção de um
meio de
armazenamento
(usualmente o
disco rígido)
para atuar como
RAM adicional
Disco (memória virtual)
Funções dos Sistemas Operacionais
Gestão da Memória Virtual
19
Maria Auxiliadora H. L. Capron / J. A. Johnson
20
Passo 1
O SO transfere os
dados e as
instruções de
programas menos
usados
recentemente
para o disco
rígido, uma vez
que a memória é
necessária para
outros propósitos
RAM (memória física)
Disco (memória virtual)
swap out de página
Funções dos Sistemas Operacionais
Gestão da Memória Virtual
20
Maria Auxiliadora H. L. Capron / J. A. Johnson
21
Passo 2
O SO transfere os
dados e as
instruções de
programas do
disco rígido para
a memória
quando
necessários
RAM (memória física)
Disco (memória virtual)
swap out de página
swap in de página
Funções dos Sistemas Operacionais
Gestão da Memória Virtual
21
Maria Auxiliadora H. L. Capron / J. A. Johnson
22
• Pode ser implementado por meio de paginação.
– Divide a memória em páginas pequenas, de tamanho fixo.
– A tabela de páginas (page table) controla as localizações
na memória.
Funções dos Sistemas Operacionais
Gestão da Memória
22
Maria Auxiliadora H. L. Capron / J. A. Johnson
23
• Salvar arquivos em disco.
• Ler arquivos do disco para a memória.
• Verificar o espaço disponível em disco e memória.
• Alocar memória para armazenar dados e programas.
• Ler toques de teclas do teclado e exibir caracteres ou gráficos na tela.
• Os programas trazem incorporados a si instruções que solicitam ao sistema operacional estes serviços (chamadas ao sistema operacional).
Funções dos Sistemas Operacionais
Gestão de Programas
23
Maria Auxiliadora H. L. Capron / J. A. Johnson
24
• Tempo Compartilhado
– Os programas se alternam na utilização da CPU.
– Baseado no tempo.
• A cada usuário é designada uma fatia de tempo (fração de
segundo).
• A CPU trabalha somente nas tarefas desse usuário durante
sua fatia de tempo.
• Tempo de resposta: o tempo entre o pedido digitado e a
resposta do computador.
– Tipicamente, é usado em aplicações com muitos
usuários.
Funções dos Sistemas Operacionais
Programação de Tarefas
24
Maria Auxiliadora H. L. Capron / J. A. Johnson
25
• O uso de um computador potente com múltiplas CPUs.
• Múltiplos programas rodam simultaneamente.
– Cada um é executado em seu próprio processador
• Dois ou mais programas executados concorrentemente.
– Os programas se alternam na utilização da CPU.
– Baseada em eventos.
• Uma interrupção suspende o processamento para permitir a
execução de um outro programa.
• Depois que o segundo programa é executado, o sistema
operacional retorna a CPU a outro programa.
• Geralmente é usada em programas em lote que não exigem entrada do
usuário.
Funções dos Sistemas Operacionais
Multiprogramação
25
Maria Auxiliadora H. L. Capron / J. A. Johnson
26
• Do ponto de vista do usuário, o que faz ou prejudica um sistema operacional é a qualidade da interface com o usuário
• Às vezes, a interface com o usuário é denominada shell, sugerindo a idéia de que a interface com o usuário (o shell) “envolve” o sistema operacional (o kernel dentro do shell).
• Os três tipos de interfaces com o usuário são:
• Interface de linha de comando,
• Interface baseada em menus e
• Interface gráfica.
Funções dos Sistemas Operacionais
Interface com o Usuário
26
Maria Auxiliadora H. L. Capron / J. A. Johnson
27
• Interface de linha de comando
• A comunicação é feita via digitação de palavras (limitadas) e símbolos no teclado do computador;
• O usuário controla os programas através da digitação de comandos no
aviso de comando (prompt), Exemplo: c> ; • Exige que o usuário digite os comandos utilizando palavras-chave que
instruem o sistema operacional sobre o que fazer (Ex.: “format” e “copy”).
• Usuário deve conhecer as regras de sintaxe.
• Pouco utilizados pelos usuários porque exigem memorização e é muito
fácil cometer um erro de digitação. • Preferido pelos usuários experientes.
Funções dos Sistemas Operacionais
Interface com o Usuário
27
Maria Auxiliadora H. L. Capron / J. A. Johnson
28
• Interface Baseada em Menus
• Permitem que o usuário evite a memorização das palavras-
chave e sintaxe. Os menus baseados em texto na tela mostram
todas as opções disponíveis em um determinado ponto.
• Alguns sistemas permitem que o usuário clique a opção
desejada com o mouse.
Funções dos Sistemas Operacionais
Interface com o Usuário
28
Maria Auxiliadora H. L. Capron / J. A. Johnson
29
• Interface gráfica
• Também conhecida por GUI (Graphical User Interface);
• Possibilita o trabalho em termos visuais;
• Desenvolvimento do conceito de Menus, ícones e caixas de diálogos
• Facilidade de utilização medida pela intuitividade da interface
• Tipo de interface chamada amigável
• Utiliza o conceito de desktop - área de trabalho digital: Mesa de
trabalho digital
• Calculadora, bloco de notas, pastas, lixeira, etc...
Funções dos Sistemas Operacionais
Interface com o Usuário
29
Maria Auxiliadora H. L. Capron / J. A. Johnson
30
Driver de Dispositivo - Programa que possibilita
a comunicação do SO com um dispositivo de
E/S
Cada dispositivo requer um driver próprio
driver de
dispositivo
Funções dos Sistemas Operacionais
Comunicação SO - dispositivo de E/S
30
Maria Auxiliadora H. L. Capron / J. A. Johnson
31
Plug’n Play (PNP ou Plug and Play) Reconhecimento de novos dispositivos pelo
computador, instalação automática de drivers para esses dispositivos e verificação de conflitos com outros dispositivos.
Suportado pela maioria dos dispositivos e SO atuais.
Quando se liga um sistema Plug/Play, o principal árbitro entre o software e o hardware, o BIOS é o primeiro componente a assumir o controle.
Sistemas Operacionais
31
Maria Auxiliadora H. L. Capron / J. A. Johnson
32
Sistema de Arquivo
• Um sistema de arquivos é um conjunto de
estruturas lógicas e de rotinas que permitem
ao sistema operacional controlar o acesso ao
disco rígido. Diferentes sistemas
operacionais usam diferentes sistemas de
arquivos.
– Controla a localização dos arquivos.
– Responde a comandos para manipular arquivos.
– Controla pedidos de entrada e saída de arquivos
– Processa-os na ordem em que são recebidos. 32
Maria Auxiliadora H. L. Capron / J. A. Johnson
33
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
• Os sistemas operacionais agrupam os dados em
compartimentos lógicos para armazená-los em disco
33
Maria Auxiliadora H. L. Capron / J. A. Johnson
34
Como os Dados São Organizados
Setor ou Segmento
Trilhas
1 2
3
4
5
6
7
8
9
Cluster
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
34
Maria Auxiliadora H. L. Capron / J. A. Johnson
35
Formatação Física - os discos são divididos em
trilhas, setores e cilindro e são gravadas as marcações
servo, que permitem que a placa lógica posicione
corretamente as cabeças de leitura.
Formatação Lógica - organizado à maneira do
sistema operacional, preparado para receber
dados. A esta organização damos o nome de
“sistema de arquivos”.
Formatação - Processo de
preparação de um disco para
leitura e escrita (gravação).
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
35
Maria Auxiliadora H. L. Capron / J. A. Johnson
36
FAT – “File Alocation Table” ou “tabela de alocação de arquivos”.
localizado no setor “0” do disco. A função da FAT é servir como um índice, armazenando informações sobre cada cluster do disco
Comparando o FAT com um livro.
as páginas clusters;
a FAT as legendas e numeração das páginas;
o diretório raiz índice, com o nome de cada capítulo e
a página onde ele começa.
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
36
Maria Auxiliadora H. L. Capron / J. A. Johnson
37
Organização de arquivos
0 1 2 3 4 5 6 7
?
readme.txt
0 1 2
prova.doc
0 1 2 3 4 5 6 7
aula.pdf
0 1 2 3 4
Dispositivo
físico
Vetor de
blocos
lógicos
Arquivos
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
37
Maria Auxiliadora H. L. Capron / J. A. Johnson
38
Organização de arquivos
/raiz
arquivos windows docs temp
java Winzip help system32 aulas pedro
carta
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
38
Maria Auxiliadora H. L. Capron / J. A. Johnson
39
Gravando o arquivo ”carta”
Arquivo cluster
Despesas.xls 1
Relatorio anual.doc 2
Disponível 3
Novo orcamento.xls 4
FAT
ENDEREÇO DO CLUSTER
CLUSTER TRILHA SETORES
3 1 2,3,4,5
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
39
Maria Auxiliadora H. L. Capron / J. A. Johnson
40
• Técnicas de alocação
– Formas de mapear os blocos dos arquivos em posições no vetor de blocos lógicos
– Alocação contígua de arquivos
– Alocação em listas encadeadas
• listas diretas ou listas indexadas
– Alocação indexada
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
40
Maria Auxiliadora H. L. Capron / J. A. Johnson
41
readme.txt 010 003
prova.doc 002 008
Aula.pdf 017 005
arquivo inicio #blocos
0 1 2 3 4 5 6 7
Alocação contígua Cada arquivo ocupa um conjunto de blocos lógicos consecutivos.
Não há blocos vazios entre os blocos de um mesmo arquivo.
Para cada arquivo, o diretório informa seu bloco de início e o no de
blocos.
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
41
Maria Auxiliadora H. L. Capron / J. A. Johnson
42
• Alocação contígua – Vantagens:
• Simplicidade de implementação.
• Rapidez de acesso aos arquivos:
– todos os blocos do arquivo estão próximos.
• Facilidade de acesso seqüencial e aleatório:
– sequencial: basta ler os blocos consecutivos
– aleatório: posições internas podem ser facilmente calculadas a partir da
posição do bloco inicial.
– Desvantagens: • Pouca flexibilidade no crescimento dos arquivos.
• Tamanho máximo do arquivo deve ser conhecido no momento da alocação.
• Ocorrência de fragmentação externa.
• Necessidade de desfragmentação periódica
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
42
Maria Auxiliadora H. L. Capron / J. A. Johnson
43
• Alocação encadeada
– Os arquivos são armazenados como listas de
blocos – cada bloco aponta para o próximo
– diretório aponta para o bloco inicial
– os blocos podem estar espalhados
– Base de funcionamento da FAT
• sistema de arquivos Windows
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
43
Maria Auxiliadora H. L. Capron / J. A. Johnson
44
arquivo inicio #blocos
Alocação encadeada
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
44
readme.txt 010 003
prova.doc 002 008
Aula.pdf 017 005
Maria Auxiliadora H. L. Capron / J. A. Johnson
45
• Alocação encadeada
– Vantagens – não há fragmentação externa
– todo o disco pode ser usado
– tamanho dos arquivos pode ser mudado facilmente
– Desvantagens – acesso aleatório é mais demorado
– maior fragilidade em caso de problemas
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
45
Maria Auxiliadora H. L. Capron / J. A. Johnson
46
• Alocação indexada
– Baseada em tabelas de blocos
• um bloco especial guarda a tabela de blocos do
arquivo: index-node (i-node)
• diretório aponta para os i-nodes
• blocos podem estar espalhados
– Base de funcionamento do UNIX
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
46
Maria Auxiliadora H. L. Capron / J. A. Johnson
47
Alocação indexada
readme.txt 010 003
prova.doc 002 008
Aula.pdf 017 005
arquivo inicio #blocos
I-node
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
47
Maria Auxiliadora H. L. Capron / J. A. Johnson
48
• Alocação indexada
– Vantagens – não há fragmentação externa
– todo o disco pode ser usado
– acesso rápido
– robustez em caso de problemas
– Desvantagens – gerência mais complexa
– espaço em disco perdido com os i-nodes
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
48
Maria Auxiliadora H. L. Capron / J. A. Johnson
49
• Fragmentação interna
– Arquivos são alocados em blocos: – Os blocos têm tamanho fixo.
– Entre 512 bytes e 8 Kbytes.
– Um bloco não pode ser alocado parcialmente.
– Se usarmos blocos de 4096 bytes: – um arquivo de 5700 bytes ocupará 2 blocos.
– 2492 bytes serão perdidos no último bloco.
– Em média, perde-se 1/2 bloco por arquivo.
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
49
Maria Auxiliadora H. L. Capron / J. A. Johnson
50
• Fragmentação externa
– Espaços vazios entre blocos de arquivos.
– À medida que o sistema evolui:
• arquivos são criados e removidos
• mais espaços vazios aparecem.
• os espaços vazios ficam menores.
– Alocar novos arquivos torna-se difícil !
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
50
Maria Auxiliadora H. L. Capron / J. A. Johnson
51
Evolução da fragmentação
t
aloca aloca
aloca aloca
Agora, como alocar um arquivo com 4 blocos ?
remove remove
remove
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
51
Maria Auxiliadora H. L. Capron / J. A. Johnson
52
• Desfragmentação
– Mover arquivos para reagrupar os
fragmentos em espaços maiores
– Visa permitir alocar arquivos maiores
– Deve ser feita periodicamente
– Uso de algoritmos para minimizar
movimentação de arquivos (rapidez)
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
52
Maria Auxiliadora H. L. Capron / J. A. Johnson
53
Estratégias de desfragmentação
Situação inicial
Moveu 6 blocos
Moveu 4 blocos
Moveu 2 blocos
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
53
Maria Auxiliadora H. L. Capron / J. A. Johnson
54
• Estratégias de alocação
– First-fit: usar o primeiro espaço livre – maior rapidez de alocação
– pouca preocupação com fragmentos
– Best-fit: usar o menor espaço livre – usar o melhor possível os espaços em disco
– fragmentos residuais são pequenos
– Worst-fit: usar o maior espaço livre – fragmentos residuais são maiores
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
54
Maria Auxiliadora H. L. Capron / J. A. Johnson
55
Alocando um arquivo c/ 2 blocos
Worst-fit
Best-fit
First-fit
Situação inicial
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
55
Maria Auxiliadora H. L. Capron / J. A. Johnson
56
• Tamanho dos blocos – A escolha do tamanho dos blocos é importante
para a eficiência do sistema.
– Blocos pequenos:
– menor perda por fragmentação interna
– mais blocos por arquivo: maior custo de gerência
– Blocos grandes:
– maior perda por fragmentação interna
– menos blocos por arquivo: menor custo de gerência
Funções dos Sistemas Operacionais
Gerenciamento de Arquivo
56
Maria Auxiliadora H. L. Capron / J. A. Johnson
57
• Compartilhar recursos (discos rígidos e
impressoras).
• Segurança de dados.
• Diagnóstico e solução de problemas
(troubleshooting).
• Controle administrativo.
Funções dos Sistemas Operacionais
Gerenciamento de Rede
57
Maria Auxiliadora H. L. Capron / J. A. Johnson
58
Primórdios
– Sistema operacional inexistente
– Usuário é o programador e o operador da máquina
– Evolução foi motivada por:
• Melhor utilização de recursos
• Avanços tecnológicos (novos tipos de hardware)
• Adição de novos serviços
Sistemas Operacionais - Classificação
58
Maria Auxiliadora H. L. Capron / J. A. Johnson
59
Sistemas Monousuário – Projetados para serem usados por um único usuário de
cada vez, multi-tarefa (quando existente) limitada.
– Exemplo: MS- DOS, Windows 3.x, Windows 9x, Millenium
Sistemas Multiusuário – Suportam várias sessões de usuário em um computador.
– Exemplo: UNIX, Windows-NT, Windows 2000, “Windows XP”, Vista, Win 7
– Programas e arquivos de dados em um único computador (host), contas de usuário, gerencia o uso comum de periféricos compartilhados.
Sistemas Operacionais - Classificação
59
Maria Auxiliadora H. L. Capron / J. A. Johnson
60
Sistemas Monotarefa (Monoprogramáveis)
– Podem executar apenas uma tarefa de cada vez.
– Exemplo: MS-DOS
Sistemas Multitarefa (Multiprogramáveis)
– Permitem executar várias tarefas “simultaneamente”
• Modo cooperativo. Exemplo: Windows 9x (aplicativos de
16 bits)
• Modo preemptivo. Exemplo: Windows NT, UNIX, OS/2,
Windows 9x (aplicativos de 32 bits)
Sistemas Operacionais - Classificação
60
Maria Auxiliadora H. L. Capron / J. A. Johnson
Cooperação e Preempção
• Multitarefa Cooperativa - cada aplicativo ocupa
seu próprio endereço de memória e recursos do
sistema. Cabe a cada processo liberar voluntariamente
a utilização do processador para que outro processo
possa ser executado
• Multitarefa Preemptiva – o SO gerencia o
escalonamento dos processos, podendo interromper um
processo em favor de outro, de maior prioridade
61
Maria Auxiliadora H. L. Capron / J. A. Johnson
62
Sistemas em Lote (Batch)
- Primeiros sistemas multiprogramáveis
- Caracterizados por terem seus jobs armazenados em disco
ou fita, até o momento de serem executados de forma
seqüencial.
- Os jobs não possuem interação com o usuário (Ex.:
primórdios – compiladores, linkedições, backups).
- Início: passagem entre jobs - manual
- Evolução: Sequenciamento automático de jobs, transferindo
o controle de um job a outro.
Sistemas Operacionais - Classificação
62
Maria Auxiliadora H. L. Capron / J. A. Johnson
63
Sistemas Multiprogramáveis de
Tempo Compartilhado (Time sharing)
• Fornecem serviços a diversos usuários concorrentemente
• Usuários possuem um terminal
– Interação com o programa em execução
• Usuário - Ilusão de possuir a máquina dedicada à execução de seu programa
– Divisão do tempo de processamento entre usuários
– Tempo de resposta é importante
Sistemas Operacionais - Classificação
63
Maria Auxiliadora H. L. Capron / J. A. Johnson
64
Sistemas Multiprogramáveis de Tempo Real
• Quanto à construção, são bem semelhantes aos sistemas de tempo compartilhado. Porém, os objetivos e exigências são diferentes.
• Em geram, atendem (monitoram) processos externos que requerem tempos de resposta dentro de limites rígidos. Ex.: experimentos científicos, tratamento de imagens médicas, controle de processos, etc
• O processo realimenta o computador.
• Em geral não existe o conceito de fatia de tempo alocada a um processo.
• Noção de tempo real é dependente da aplicação (segundos, minuto, horas, etc).
Sistemas Operacionais - Classificação
64
Maria Auxiliadora H. L. Capron / J. A. Johnson
65
Sistemas com Múltiplos Processadores
• Caracterizam-se por possuir 2 ou mais CPUs interligadas, trabalhando conjuntamente.
• No desenvolvimento desses sistemas, o mais importante é a forma de comunicação entre os processadores e o grau de compartilhamento da memória e dos dispositivos de E/S, o que leva a seguinte classificação:
– sistemas fortemente acoplados (assimétricos e simétricos)
– sistemas fracamente acoplados (SO de rede e SO distribuído).
Sistemas Operacionais - Classificação
65
Maria Auxiliadora H. L. Capron / J. A. Johnson
66
Tipos de Sistemas Operacionais
• Plataforma: combinação de hardware de computador e software de sistema operacional. – Wintel (Microsoft Windows que roda em um PC baseado em
Intel) é a mais comum.
• Plataformas Comuns: – MS-DOS
– Windows
– MAC OS
– Unix
– Linux
66
Maria Auxiliadora H. L. Capron / J. A. Johnson
67
Sistemas Operacionais: MS-DOS
• Usa uma interface de linha de comando.
– A tela apresenta prompts ao usuário.
– O usuário digita comandos.
• Amplamente substituído pelas interfaces gráficas.
• Não é amigável (user-friendly).
67
Maria Auxiliadora H. L. Capron / J. A. Johnson
68
Sistemas Operacionais: Windows • Iniciou-se como um ambiente operacional para o MS-DOS.
– Windows 3.1 Uma camada adicionada “por cima” do DOS
– Não era um sistema operacional completo; necessitava do MS-DOS.
• Família Windows
– Windows 9x • Windows 95 / Windows 98 • Windows Millennium Edition (ME)
– Mercado corporativo • Windows NT • Windows 2000
– Windows XP
– Windows Vista
– Windows 7 / Windows 7
68
Maria Auxiliadora H. L. Capron / J. A. Johnson
69
• Recursos do Windows – Nomes de arquivo extensos (até 255 caracteres).
– Plug and Play:
• Torna mais fácil a instalação de componentes de
hardware.
– Object Linking and Embedding (OLE):
• Permite ao usuário incorporar ou vincular um documento
em outro.
Sistemas Operacionais: Windows
69
Maria Auxiliadora H. L. Capron / J. A. Johnson
70
• Windows NT (“new technology” – nova tecnologia)
– A Área de Trabalho tem a aparência do Windows 98 e age
como ele.
– Destina-se a ambientes corporativos, ligados em rede.
– Projetado para garantir escalabilidade (a capacidade de
suportar muitos usuários).
– Segurança mais rígida.
• Windows 2000
– A última geração do Windows NT.
– Você obtém “sua” área de trabalho e arquivos,
independentemente de qual PC usa para acessar a rede.
Sistemas Operacionais: Mercado Corporativo
70
Maria Auxiliadora H. L. Capron / J. A. Johnson
71
• Windows XP – Reúne em um único produto as versões
corporativas e aquelas destinadas ao
consumidor do Windows. • versão doméstica (Home);
• versão profissional (Professional).
– Melhor interface com o usuário
– Melhor suporte para multimídia.
– Mais personalização
– Suporte e proteção para a Internet
Sistemas Operacionais: Mercado Corporativo
71
Maria Auxiliadora H. L. Capron / J. A. Johnson
72
• Windows Vista
– Melhoramento na pesquisa
– Defesas internas contra spyware e
outros malwares.
– Gerencie e monitore o uso que seus
filhos fazem do computador.
– Crie e compartilhe filmes e
apresentações de slides em poucos
minutos.
Sistemas Operacionais: Mercado Corporativo
72
Maria Auxiliadora H. L. Capron / J. A. Johnson
73
• Windows 7
– Compartilhe facilmente arquivos, fotos e
músicas em sua rede doméstica.
– Organize muitos arquivos, documentos e
fotos sem esforço algum.
– Navegue em várias janelas abertas com
mais rapidez.
– Etc.
Sistemas Operacionais: Mercado Corporativo
73
Maria Auxiliadora H. L. Capron / J. A. Johnson
74
Sistemas Operacionais: UNIX
• Desenvolvido em 1971 para ser usado no minicomputador DEC.
• Sistema baseado em caracteres com interface de linha de comando.
• Não é ligado a nenhuma família de processadores. – Roda praticamente em qualquer tipo de sistema (PC,
mainframe, estação de trabalho) de qualquer fabricante.
• Principal sistema operacional em uso em servidores de Internet. – Manipula facilmente muitos usuários ao mesmo tempo.
74
Software Livre
• Free Software – – Liberdade de executar o programa;
– Adaptá-lo as suas necessidades ( acesso ao código fonte);
– Liberdade de redistribuição de cópias;
– Liberdade de aperfeiçoar o programa.
• Open Source Software. – A licença não deve restringir a redistribuição do programa e de
trabalhos derivados;
– O código-fonte deve estar disponível junto com o programa, ou deve estar disponível para download gratuitamente;
– A licença não deve discriminar pessoas ou grupos, nem restringir a forma de uso do programa (por exemplo, não deve restringir o uso comercial)
Maria Auxiliadora 75 H. L. Capron / J. A. Johnson
• Principais vantagens da utilização de Software Livre:
– Segurança (praticamente isento de vírus.
– Economia (você pode baixar ele sem custo da internet, tanto o
software quanto a sua documentação de uso).
– Alternativa à pirataria (você não corre riscos ao ser
surpreendido por fiscais cobrando por licenças).
– Engajamento (você estará utilizando uma solução mais viável
para um país em desenvolvimento como o Brasil).
– Autonomia (você tem liberdade para fazer o que quiser com
este software desde que siga as 4 liberdades básicas a ele
atribuídas)
Maria Auxiliadora 76 H. L. Capron / J. A. Johnson
Software Livre
Sistemas Operacionais - LINUX
• LINUX
– Sistema operacional de livre distribuição, semelhante ao
UNIX, constituído por um kernel, ferramentas de sistema,
aplicativos e completo ambiente de desenvolvimento.
– Nos anos 90 com o crescimento do poder de
processamento dos PCs, um estudante chamado Linus
Torvalds , teve a ideia de desenvolver um sistema
totalmente compatível com o UNIX original e que fosse
capaz de rodar nos PCs da época. Torvalds pegou um UNIX
comercial chamado Minix e o reescreveu criando um
sistema operacional melhor que o próprio Minix e o registrou
na GPL (General Public License).
Maria Auxiliadora 77 H. L. Capron / J. A. Johnson
• Partes que compõem o Linux
Sistemas Operacionais - LINUX
aplicativos
shell
kernel
Maria Auxiliadora 78 H. L. Capron / J. A. Johnson
• Partes que compõem o Linux – Kernel - é o núcleo do sistema. É responsável pelas operações de
baixo nível tais como: gerenciamento de memória, gerenciamento de processos, suporte ao sistema de arquivos, periféricos e dispositivos.
– Shell - é o elo entre o usuário e o sistema. Imagine o Shell como sendo um intérprete entre pessoas que falam línguas diferentes. Ele traduz os comandos digitados pelo usuário para a linguagem usada pelo kernel e vice-versa. O Bourne Shell e o C Shell são os mais comumente usados.
– Aplicações - Incorporam novas funcionalidades ao sistema. É através deles que se torna possível a implementação de serviços necessários ao sistema. Podem ser divididos em aplicações do sistema e aplicações do usuário.
Sistemas Operacionais - LINUX
Maria Auxiliadora 79 H. L. Capron / J. A. Johnson
• Características:
– Multitarefa
– Multiusuário
– É gratuito, atualizações frequentes e é desenvolvido voluntariamente por programadores experientes e colaboradores que visam a constante melhoria do sistema.
– Convive harmoniosamente no mesmo computador com outros sistemas operacionais
– Não exige um computador potente para rodar
– Não é necessário licença para o seu uso.
– Maior estabilidade em relação ao Windows
Maria Auxiliadora 80 H. L. Capron / J. A. Johnson
Sistemas Operacionais - LINUX
• Características:
– Maior confiabilidade.
– Não precisa ser reinicializado devido a instalação de programas ou configuração de periféricos.
– Acessa discos formatados por outros sistemas operacionais
– Suporte a linguagens de programação.
– Ambiente Shell
Maria Auxiliadora 81 H. L. Capron / J. A. Johnson
Sistemas Operacionais - LINUX
• Características:
– Suporte a diversos dispositivos e periféricos disponíveis no mercado
– Código fonte aberto, isso significa que se você for um programador, pode modificá-lo para se adequar a necessidades específicas.
– Case Sensitive ou seja, ele diferencia
letras maiúsculas e minúsculas nos
arquivos.
Maria Auxiliadora 82 H. L. Capron / J. A. Johnson
Sistemas Operacionais - LINUX
Maria Auxiliadora H. L. Capron / J. A. Johnson
83
• Executam tarefas secundárias.
• Exemplos:
– Gerenciador de arquivos (Windows Explorer)
– Compactação de arquivos (Winzip)
– Recursos de Impressão
– Outros
Programas Utilitários dos SO
83
Maria Auxiliadora H. L. Capron / J. A. Johnson
84
• Compartilhando Recursos de Impressão
– Spooling: o programa escreve uma linha em um arquivo em
disco em vez de enviá-la diretamente a uma impressora.
• Quando o arquivo é concluído, é colocado numa fila.
• O arquivo é impresso quando a impressora se torna
disponível.
– Permite a um programa concluir a execução muito mais
rapidamente.
• Escrever em disco é muito mais rápido do que escrever
em uma impressora.
Programas Utilitários
84
Maria Auxiliadora H. L. Capron / J. A. Johnson
85
• Backup e Restauração:
– Backup: faz cópias de discos e armazena-as em um lugar seguro.
– Restauração: restaura arquivos de backups.
• Desfragmentador de disco: reorganiza o disco a fim de que todos os arquivos sejam armazenados em localizações contíguas.
Programas Utilitários
85