Sistemas Operacionais - DEInfo

Propaganda
Noções de Software
André Aziz ([email protected])
Francielle Santos ([email protected])
1

Noções de Software;

Sistemas Operacionais:
◦ Evolução;
◦ Conceitos Básicos;
◦ Tipos;
◦ Exemplos.
Francielle Santos e André Aziz
DEINFO/UFRPE
2

Caracterizar os tipos de software;

Identificar as fases de evolução dos SOs;

Entender o funcionamento dos SOs:
◦ Arquitetura, estrutura e funcionalidades dos Sos;

Caracterizar os diferentes tipos de SOs.
Francielle Santos
<[email protected]>
13/11/2014
3
chips
Minicom
putadores
Circuitos
Integrados
ENIAC,
UNIVAC
Transistor
es
Válvulas
Memória
para
dados
• 1940 1956
Microproces
sadores
• 1972 - …
• 1966 - 1971
Redes e
internet
• 1973 - …
Processos
distribuídos
• 1956 1965
Confiabilidade
Custo
Francielle Santos e André Aziz
DEINFO/UFRPE
4

Classificação quanto ao porte e utilização
Computador
pessoal
Minicompu
tador
Estação
de
Trabalho
Supercompu
tador
Mainframe
Fonte: Gandon, 1999
Francielle Santos e André Aziz
DEINFO/UFRPE
5
Entrada
Unidade de Controle
Unidade de Processamento
•Determina a interpretação e
execução das instruções e controla
o fluxo de dados
•Recebe os dados da memória para
processá-los quando uma instrução
aritmética ou lógica é executado
Memória Principal
Memória Secundária
Periféricos
Francielle Santos e André Aziz
DEINFO/UFRPE
Saída
Fonte: http://ci.ufpel.edu.br/treinamento/apostilas/nocoes_de_informatica/computador.pdf
CPU
6


Tipos de Software –
licença
Tipos de Software propósito
Francielle Santos e André Aziz
DEINFO/UFRPE
7

Shareware:
◦ Programas que podem ser utilizados durante um
período de teste;
◦ Após esse período o uso é pago.

Freeware:
◦ Programas que podem ser copiados sem qualquer
custo ou perda de funcionalidade;
◦ Prezam pela identificação de autoria.
Francielle Santos e André Aziz
DEINFO/UFRPE
8
Software
Firmware
Software de
Sistemas
Francielle Santos e André Aziz
DEINFO/UFRPE
Aplicações
9

Firmware:
◦ Programas embarcados no hardware:
 Importantes para o funcionamento básico do
computador;
 Maior velocidade na execução;
 Presentes em memórias de leitura do tipo:
 ROM, EPROM, EEROM, etc.
Francielle Santos e André Aziz
DEINFO/UFRPE
10

Software de Sistemas:
◦ Programas gerenciam e apóiam as atividades de
processamento de um computador:
 Programas de Gerenciamento de Sistemas:
 Gerenciam o acesso e utilização de recursos de hardware,
software, redes e dados.
 Programas de Desenvolvimento de Sistemas:
 Ferramentas CASE (Computer Aided Software Engineering)
para suprote ao desenvolvimento de programas.
Francielle Santos e André Aziz
DEINFO/UFRPE
11

Programas de Gerenciamento de Sistemas:
◦ Sistemas Operacionais;
◦ Sistemas de Gerenciamento de Rede;
◦ SGBDs: Sistemas de Gerenciamento de Bancos de
Dados.
Francielle Santos e André Aziz
DEINFO/UFRPE
12

Sistema Operacional (S.O.):
◦ Conjunto de programas que compõem o software
básico do computador, permitindo:
 O reconhecimento do hardware e o seu
funcionamento;
 A representação dos dados na memória.
◦ Finalidade principal:
 Executar os programas aplicativos e servir de interface
entre o computador e seus usuários.
◦ Foco na interface com o hardware.
Francielle Santos e André Aziz
DEINFO/UFRPE
13

Aplicações:
◦ Programas que constituem formas de operação do
computador para o desempenho de tarefas práticas,
ligadas ao processamento de dados.
◦ Rodam com o auxílio do SO e com foco no usuário.
◦ Classificação:







Automação industrial;
Automação comercial;
Apoio educacional;
Especiais e científicos;
Artístico;
Entretenimento;
CAD/CAM.
Francielle Santos e André Aziz
DEINFO/UFRPE
14





Anos
Anos
Anos
Anos
Anos
40 e 50
60
70
80
90
Francielle Santos e André Aziz
DEINFO/UFRPE
15

Programação externa:
◦ Nessa época os computadores não tinham memória para
armazenamento dos programas.
◦ Controle através de chaves, fios e luzes de aviso.

Controle do computador:
◦ Através de programas isolados;


Não havia a noção de tipos de software.
Não haviam as linguagens de programação
estruturadas.
Francielle Santos e André Aziz
DEINFO/UFRPE
16

Sistemas em lote (batch systems):
◦
◦
◦
◦


Programas escritos em cartões perfurados;
SOs enfileiravam tarefas (jobs);
Recursos computacionais eram melhor utilizados;
Programas armazenados na memória principal.
Para cada computador, um novo programa e um
novo SO.
Aparecimento de rotinas de auxílio ao
programador:
◦ Para lidar com a memória e execução dos programas.
Francielle Santos e André Aziz
DEINFO/UFRPE
17

Aparecimento dos computadores pessoais:
◦ Necessidades de SOs com interação com o usuário;
◦ Surgimento de linguagens de programação
estruturadas;
◦ Surgimento das aplicações de pequeno porte.
Francielle Santos e André Aziz
DEINFO/UFRPE
18

Início do império de Bill Gates:
◦ Ele e um colega de faculdade (Paul Allen) compram o
sistema QDOS ("Quick and Dirty Operating System") de
Tim Paterson por $50.000:
 Renomearam para DOS (Disk Operating System);
 Venderam as licenças para a IBM.


A IBM lançou o seu 1º computador pessoal com o
Sistema Operacional DOS.
IBM e Microsoft firmaram breve parceria para o
desenvolvimento do SO multitarefa chamado
OS/2.
Francielle Santos e André Aziz
DEINFO/UFRPE
19

O projeto GNU foi iniciado por Richard Stallman:
◦ Com o objetivo de prover um SO livre como alternativa
ao UNIX;

O estudante finlandês Linus Torvalds iniciou o
desenvolvimento do núcleo de um sistema
operacional:
◦ Precursor do Linux;
◦ Desenvolvimento colaborativo através da internet.

Mais tarde os dois esforços foram unificados:
◦ Linux:
 Grátis e portado para várias arquiteturas de computadores.
Francielle Santos e André Aziz
DEINFO/UFRPE
20
1º Sistema
Operacional
Monoprogramável
1950
1960
Conceito de
Memória
Virtual
Sistemas
Multitarefa
1970
1990
1980
Sistemas
Multiprogramáveis
Multitarefa
Francielle Santos e André Aziz
DEINFO/UFRPE
21




Objetivos
Arquitetura e
estrutura dos SOs
Funcionalidades dos
SOs
Boot
Francielle Santos e André Aziz
DEINFO/UFRPE
22

Usabilidade:
◦ Facilidade de uso para o usuário final.

Eficiência:
◦ No provimento de acesso aos recursos
computacionais;
◦ No escalonamento do uso destes recursos pelas
aplicações;
◦ Na otimização da utilização dos recursos pelos
programas em execução.
Francielle Santos e André Aziz
DEINFO/UFRPE
23

Segurança:
◦ Garantia da privacidade e permissões no acesso aos
recursos de hardware e dados armazenados.

Evolução:
◦ Ser bem-estruturado, garantindo a possibilidade de
correção de funcionalidades e desenvolvimento de
novas funcionalidades.
Francielle Santos e André Aziz
DEINFO/UFRPE
24
Aplicativos
Utilitários
Sistema Operacional
Hardware
Francielle Santos e André Aziz
DEINFO/UFRPE
25

Conjunto de rotinas - núcleo do sistema ou
kernel :
◦ Oferecem serviços essenciais aos usuários, às suas
aplicações, e também ao próprio sistema.

O SO não é executado como uma aplicação
tipicamente seqüencial, com início, meio e
fim.
◦ Procedimentos do sistema são executados
concorrentemente;
◦ Sem uma ordem específica ou predefinida.
Francielle Santos e André Aziz
DEINFO/UFRPE
26

As funcionalidades dos SOs são
implementadas pelos seus diversos módulos:
Gestão de
Processamento
Gestão de
Memória
Gestão de
Arquivos
Gestão de
Entrada e Saída
(E/S, I/O)
Redes
Segurança
Interface com o Usuário!!!
Francielle Santos e André Aziz
DEINFO/UFRPE
27


Comandos de chamadas ao sistema que
implementam a interface entre aplicações e o SO.
São genericamente agrupadas em 5 classes:
◦ Controle de Processo;
◦ Manipulação de arquivos;
◦ Manipulação de dispositivos;
◦ Informações de manutenção;
◦ Comunicações.
Francielle Santos e André Aziz
DEINFO/UFRPE
28

A interação do usuário com o hardware
através do SO pressupõe:
◦ A criação de processos pelo SO:
 Alocar e desalocar em memória todos os recursos
necessários à execução do processo.
◦ Escalonamento e controle destes processos:
 Organização da fila de acesso ao processador.
 Utiliza parâmetros do sistema e do perfil do usuário
para estabelecer a ordem em que os processos
permanecerão à espera pela liberação da CPU, para
então entrarem em execução.
Francielle Santos e André Aziz
DEINFO/UFRPE
29


Função responsável por fornecer à função de
criação/eliminação de processos os
endereços em memória disponíveis para
alocação;
Garante que os programas não utilizarão
memória já em utilização por outros
programas.
Francielle Santos e André Aziz
DEINFO/UFRPE
30

Responsável por:
◦ Gerenciamento dos arquivos;
◦ Compartilhamento dos arquivos pelos diversos
usuários;
◦ Implementação de mecanismos de controle da
segurança;
◦ Implementação de mecanismos de direitos de
acesso às áreas utilizadas pelos usuários nos
diversos dispositivos.
Francielle Santos e André Aziz
DEINFO/UFRPE
31

Responsável por:
◦ Gerenciamento dos dispositivos de E/S;

Auxilia na criação/eliminação de processos;

Auxilia na gerência de sistemas de arquivos:
◦ Na parte de endereçamento e associação de
arquivos em periféricos;
Francielle Santos e André Aziz
DEINFO/UFRPE
32




Função que executa todos os serviços de rede;
Permite que computadores utilizando o mesmo
SO em uma mesma rede compartilhem recursos e
capacidade de processamento;
Empacotamento das mensagens vindas dos
terminais para o processador central e viceversa;
Controla e confirma o envio e recebimento de
todas as mensagens que trafegam pela rede.
Francielle Santos e André Aziz
DEINFO/UFRPE
33

Função que detecta e registra (num arquivo
especial de LOG):
◦ Todas as ocorrências de erro;
◦ Todas as violações de direitos de acesso:
 Ao sistema, aos arquivos, à memória e a todos os
recursos do sistema.

O arquivo de LOG é usado pela gerência de
sistemas:
◦ Para verificar e aperfeiçoar os mecanismos de
segurança e proteção ao sistema.
Francielle Santos e André Aziz
DEINFO/UFRPE
34
Fonte: http://www.tecmundo.com.br/aumentar-desempenho/11266-comofunciona-o-boot-de-um-computador.htm
Francielle Santos e André Aziz
DEINFO/UFRPE
35


BIOS reconhece placas de vídeo e memória RAM,
testa os componentes de hardware;
BIOS lê o setor zero (que contém apenas 512
bytes, denominado Master Boot Record) do HD.
Ou de outros dispositivos de boot;

Leitura do boot loader, inicialização do kernel;

Carregamento do SO.
Francielle Santos e André Aziz
DEINFO/UFRPE
36



Monotarefa
Multitarefa
Multiprocessados
Francielle Santos e André Aziz
DEINFO/UFRPE
37
Tipos de Sistemas
Operacionais
Monoprogramáveis/
Monotarefa
Multiprogramáveis/
Multitarefa
Francielle Santos e André Aziz
DEINFO/UFRPE
Múltiplos
Processadores
38


Executam uma única tarefa (processo) por vez;
Processador, memória e periféricos alocados para
este processo:
◦ Processador pode ficar ocioso e a memória e periféricos
subutilizados!
Francielle Santos e André Aziz
DEINFO/UFRPE
39


Permitem que vários programas executem
simultaneamente;
Programas concorrem pela alocação de
processador, memória e periféricos alocados para
este processo:
◦ Maior complexidade e melhor utilização de recursos;

O SO gerencia o acesso concorrente aos recursos;
Francielle Santos e André Aziz
DEINFO/UFRPE
40
Francielle Santos e André Aziz
DEINFO/UFRPE
41
Multiprogramáveis/
Multitarefa
Batch
Tempo Partilhado
Francielle Santos e André Aziz
DEINFO/UFRPE
Tempo Real
42
1.
2.
Programas são inseridos previamente no
computador;
Programas são executados de acordo com a
disponibilidade de recursos.
Não há interação com o usuário!
Francielle Santos e André Aziz
DEINFO/UFRPE
43

Computador usado por vários usuários,
compartilhando à distância, seus recursos
(processador, memória e periféricos):
◦ Impressão de utilização única do computador;
◦ Sem processamento local (terminais “burros”);

SO gerencia os recursos:
◦ Alocando fatias de tempo (“time slices”) do processador
pra cada usuário;
◦ Definindo níveis de prioridade para processos e
usuários;

Noção de workspace para os usuários.
Francielle Santos e André Aziz
DEINFO/UFRPE
44

Com tempos de resposta muito pequenos:
◦ Podendo inviabilizar a aplicação se estes não forem
atendidos.
Francielle Santos e André Aziz
DEINFO/UFRPE
45

SOs Monousuário:
◦ Suportam um único usuário por vez;
◦ Exemplo: DOS.

SOs Multiusuário:
◦ Suportam mais de um usuário simultaneamente
◦ Exemplo: UNIX.

Pergunta:
Existem um SO monotarefa
multiusuário?
Francielle Santos e André Aziz
DEINFO/UFRPE
46

Permitem que várias instruções executem
simultaneamente:
◦ Computadores com mais de um processador.

Multiprogramação aplicada a vários
processadores ao mesmo tempo:
◦ Permite mais de um programa em paralelo ou mesmo
mais de uma instrução de um mesmo programa em
paralelo!

Configurações possíveis (acoplamento):
◦ Vários processadores e uma memória;
◦ Vários processadores e várias memórias.
Francielle Santos e André Aziz
DEINFO/UFRPE
47
Multiprocessados
Fortemente
Acoplados
Fracamente
Acoplados
Redes
Distribuídos
Francielle Santos e André Aziz
DEINFO/UFRPE
48

Vários computadores independentes interligados
em rede:
◦ Com compartilhamento de periféricos, dispositivos de
I/O e armazenamento.

O sistema irá definir:
◦ Protocolo para comunicação entre usuários e servidores.

Cada computador da rede funciona
independentemente:
◦ Processamento local.
Francielle Santos e André Aziz
DEINFO/UFRPE
49

Tipo de sistema em rede onde:
◦ Há integração e cooperação entre os
computadores da rede.
 Para execução das tarefas solicitadas pelos usuários.

Para o futuro:
Sistemas operacionais 100%
distribuídos!
Francielle Santos e André Aziz
DEINFO/UFRPE
50
Exemplos
Francielle Santos e André Aziz
DEINFO/UFRPE
51


Desenvolvido pelo finlandês Linus Torvalds;
O seu código fonte está disponível sob
licença GPL:
◦ Qualquer pessoa pode utilizar, estudar, modificar e
distribuir de acordo com os termos da licença.

Apresenta várias distribuições:
◦ Slackware, Debian, Suse, Conectiva e Ubuntu:
 http://www.ubuntu-br.org/
Francielle Santos e André Aziz
DEINFO/UFRPE
52

SO proprietário baseando no kernel Unix;

Desenvolvido pela Apple:
◦ Roda somente nos computadores da linha
Macintosh;

Versões:
◦ Leopard, Snow Leopard, Lion, Mountain lion,
Mavericks, Yosemite;

http://www.apple.com/br/macosx/
Francielle Santos e André Aziz
DEINFO/UFRPE
53





Família de SOs criados pela Microsoft, empresa
fundada por Bill Gates e Paul Allen.
Primeira versão: MS-DOS.
É o SO mais popular!!!
Maior parte de aplicações comerciais disponíveis
apenas para este SO.
Versões:
◦ MS-DOS, 95, 98, 2000, XP, Vista, 7, 8…
◦ Windows 8.1:
 http://windows.microsoft.com/pt-br/windows-8/meet
Francielle Santos e André Aziz
DEINFO/UFRPE
54

Sistema Operacional UNIX desenvolvido pela Sun
Microsystems;
◦ Atualmente pertence a empresa Oracle;


Suporta arquiteturas baseadas nos processadores
x86 e SPARC.
SO otimizado para servidores:
◦ Recursos de análise de desempenho e integração de
vários sistemas;

Versões:
◦ SunOS, Solaris 2, Solaris 10, Solaris 11:
 http://www.oracle.com/us/products/serversstorage/solaris/index.html
Francielle Santos e André Aziz
DEINFO/UFRPE
55

SO de código aberto projetado pelo Google
para trabalhar exclusivamente com aplicações
web:
◦ Baseado no Linux.

GUI minimalista:
◦ Semelhante à de um navegador web.

Público-alvo:
◦ Pessoas que utilizam bastante a internet!
Francielle Santos e André Aziz
DEINFO/UFRPE
56

Noções de Software;

Sistemas Operacionais:
◦ Evolução;
◦ Conceitos Básicos;
◦ Tipos;
◦ Exemplos.
Francielle Santos e André Aziz
DEINFO/UFRPE
57
Francielle Santos e André Aziz
DEINFO/UFRPE
58
Noções de Redes
Francielle Santos e André Aziz
DEINFO/UFRPE
59
Noções de Software
André Aziz ([email protected])
Francielle Santos ([email protected])
60
Download