1. 05/12/12
Universidade Federal do Maranhão
Universidade Federal do Maranhão Departamento de Informática
SOFTWAR: PARTE 1
Departamento de Informática
Introdução à Computação
Prof. Esp. Gedson Rios Lopes
gedsonrios@gmail.com
1
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.
1
2. 05/12/12
Componentes genéricos -
SOFTWARE sistema computacional
• 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.
Componentes genéricos -
sistema computacional SOFTWARE
Programas:
Diferentes visões- Sistema computacional
• 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
2
3. 05/12/12
SOFTWARE Sistemas Operacionais
• 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 Sistemas Operacionais
• Composto por um conjunto de programas e rotinas
Usuário Programas
• Controla a execução de qualquer software utilizado
em um computador
• Gerencia os recursos do computador (hardware e
software) de modo a:
SO
– Possibilitar sua utilização
– Aumentar sua eficiência
– Permitir a comunicação com outros equipamentos. Sistema de
Hardware Arquivos
3
4. 05/12/12
Sistemas Operacionais Sistemas Operacionais
• Composição Básica àKernel (Núcleo) - coração do sistema Serviços oferecidos pelo sistema operacional
operacional, composto pelas funções centrais do SO
• Criação de programas
– Editores, depuradores, compiladores
– O kernel é residente na memória
– Responsável por implementar as chamadas de sistema • Execução dos programas
(serviços) – Carga de programas em memória
– Principais componentes são: Gerência de processador,
memória, entrada / saída e Sistema de arquivos • Acesso a dispositivos de E/ S
– Gerencia o sistema operacional.
• Controle de acesso a arquivos
• Carregado do disco rígido para a memória quando o
computador é inicializado (Booting). • Acesso a recursos de sistema
– Proteção entre usuários
Sistemas Operacionais Funções do Sistemas Operacionais
Serviços oferecidos pelo sistema operacional
• Contabilidade
Usuário Hardware
– Estatísticas
– Monitoração de desempenho
– Sinalizar upgrade de hardware necessário (memória, disco, etc) Teclado
– Tarifação de usuários Interface com o usuário
Mouse
• Detecção de erros
Programa HD
– Erros de hardware
• Erros de memória RAM
• Falha em dispositivos de E/ S
– Erros de programação Interface com o programa Modem
• Overflow em operações aritméticas
• Acesso não-autorizado a posições de memória
Impressora
– Aplicação solicita recursos que o sistema operacional não pode SO
alocar (segurança, falta do recurso, etc)
4
5. 05/12/12
Funções dos Sistemas Operacionais
Funções do Sistemas Operacionais Inicialização
• Inicialização do Computador Passo 1
• Gestão da Memória
• Gestão de Programas A fonte de alimentação fornece
• Programação de Tarefas energia elétrica para as
• Interfaceamento com o Usuário diferentes partes do sistema
• Configuração de Dispositivos processador
• Gerenciamento de Sistema Arquivo
• Segurança do Sistema
BIOS
• Controle da Rede
• Monitoração do Desempenho
• Contabilidade
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Inicialização Inicialização
Passo 3
Passo 2
A BIOS realiza o POST
drive de
O processador procura o BIOS POST processador
CD-ROM
Power-On Self Test
processador Teste mediante o qual são
verificados componentes conectores
BIOS
BIOS tais como mouse, teclado,
placas de
Basic Input/Output System conectores e placas de expansão
expansão
BIOS
Firmware que contém as
instruções de inicialização
do computador
teclado
5
6. 05/12/12
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Inicialização Inicialização
Passo 5
Passo 4
O BIOS procura os arquivos drive de
Os resultados do POST são disco flexível
do sistema no drive A (disco
comparados com os dados drive de CD-ROM drive de CD-ROM
flexível) e, em seguida, no
armazenados no chip CMOS
chip
drive C (disco rígido) chip
processador CMOS processador CMOS
disco
Chip CMOS rígido
Complementary Metal Oxyde conectores Arquivos do sistema conectores
BIOS
BIOS
Semiconductor Arquivos específicos do
Armazena informações de sistema operacional,
placas de placas de
configuração do computador e expansão carregados durante a expansão
também detecta novos inicialização
dispositivos conectados
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Inicialização Inicialização
Passo 7
Passo 6
drive de
disco flexível O SO carrega informações de
O programa de boot
drive de CD-ROM configuração, exibe a área de
carrega na RAM o kernel trabalho (desktop) na tela e executa
do SO (armazenado no programas na pasta Iniciar (StartUp)
chip
HD), o qual assume, a processador CMOS
partir de então, o controle
disco
do computador rígido
Pasta Iniciar (StartUp)
conectores
BIOS
módulos de
memória RAM Contêiner de uma lista de
programas que são
placas de
automaticamente
expansão iniciados quando o
computador é inicializado Step 7
6
7. 05/12/12
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Gestão da Memória Gestão da Memória Virtual
• Gerenciamento da memória.
– Divide a memória em partições distintas.
– Aloca memória para programas. ° O SO aloca uma
porção de um Disco
– Mantém os programas mutuamente separados
(memória virtual)
meio de
• Divide a memória em: armazenamento
– primeiro plano à para programas com alta prioridade, que
receberão mais tempo de CPU (usualmente o
– segundo plano à para programas com menor prioridade, que disco rígido)
receberão menos tempo de CPU
– Os programas que aguardam para serem executados são para atuar como
RAM
colocados em filas, baseando-se em sua prioridade. RAM adicional (memória física)
• Usa armazenamento virtual.
– Também chamado de memória virtual.
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Gestão da Memória Virtual Gestão da Memória Virtual
Passo 1 Passo 2
swap out de página swap out de página
O SO transfere os O SO transfere os
dados e as dados e as
instruções de instruções de
programas menos Disco Disco
(memória virtual) programas do (memória virtual)
usados disco rígido para
recentemente a memória
para o disco RAM RAM
(memória física) quando (memória física)
rígido, uma vez necessários
que a memória é
necessária para
outros propósitos swap in de página
7
8. 05/12/12
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Gestão da Memória Gestão de Programas
• Pode ser implementado por meio de paginação.
– Divide a memória em páginas pequenas, de tamanho fixo. • Salvar arquivos em disco.
– A tabela de páginas (page table) controla as localizações na • Ler arquivos do disco para a memória.
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 Funções dos Sistemas Operacionais
Programação de Tarefas Multiprogramação
• O uso de um computador potente com múltiplas CPUs.
• Tempo Compartilhado
• Múltiplos programas rodam simultaneamente.
– Os programas se alternam na utilização da CPU. – Cada um é executado em seu próprio processador
– Baseado no tempo.
• Dois ou mais programas executados concorrentemente.
• A cada usuário é designada uma fatia de tempo (fração de
– Os programas se alternam na utilização da CPU.
segundo).
– Baseada em eventos.
• A CPU trabalha somente nas tarefas desse usuário durante
• Uma interrupção suspende o processamento para permitir a
sua fatia de tempo. execução de um outro programa.
• Tempo de resposta: o tempo entre o pedido digitado e a • Depois que o segundo programa é executado, o sistema
resposta do computador. operacional retorna a CPU a outro programa.
– Tipicamente, é usado em aplicações com muitos
usuários. • Geralmente é usada em programas em lote que não exigem entrada do
usuário.
8
9. 05/12/12
Funções dos Sistemas Operacionais Funções dos Sistemas Operacionais
Interface com o Usuário Interface com o Usuário
• Interface de linha de comando
• Do ponto de vista do usuário, o que faz ou prejudica um sistema
operacional é a qualidade da interface com o usuário • A comunicação é feita via digitação de palavras (limitadas) e símbolos
no teclado do computador;
• Às vezes, a interface com o usuário é denominada shell, • O usuário controla os programas através da digitação de comandos no
sugerindo a idéia de que a interface com o usuário (o shell) aviso de comando (prompt), Exemplo: c> ;
“envolve” o sistema operacional (o kernel dentro do shell).
• Exige que o usuário digite os comandos utilizando palavras-chave que
instruem o sistema operacional sobre o que fazer (Ex.: “format” e
• Os três tipos de interfaces com o usuário são: “copy”).
• Interface de linha de comando,
• Interface baseada em menus e • Usuário deve conhecer as regras de sintaxe.
• Interface gráfica. • 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 Funções dos Sistemas Operacionais
Interface com o Usuário Interface com o Usuário
• Interface Baseada em Menus • Interface gráfica
• Também conhecida por GUI (Graphical User Interface);
• Permitem que o usuário evite a memorização das palavras-
chave e sintaxe. Os menus baseados em texto na tela mostram • Possibilita o trabalho em termos visuais;
todas as opções disponíveis em um determinado ponto.
• Desenvolvimento do conceito de Menus, ícones e caixas de diálogos
• Alguns sistemas permitem que o usuário clique a opção
desejada com o mouse. • 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...
9