Aula 2 (25/08/2016) - Conceitos e Estrutura de SO

Propaganda
Conceitos e Estrutura do SO
Prof. Alexandre Monteiro
Recife
‹#›
Contatos

Prof. Guilherme Alexandre Monteiro Reinaldo

Apelido: Alexandre Cordel

E-mail/gtalk: [email protected]
[email protected]

Site: http://www.alexandrecordel.com.br/fbv

Celular: (81) 9801-1878
Agenda
•
Revisão sobre hardware de computadores
•
Conceitos sobre Sistemas Operacionais
•
Chamadas ao sistema
Estrutura de Sistemas Operacionais
•
3
Revisão sobre hardware de
computadores (1)
Componentes de um computador pessoal simples
4
Processador

É o cérebro do computador – CPU.

Ciclo Básico do Processador
1. Busca a 1ª instrução da memória;
2. Decodifica para determinar seus
operandos e qual operação executar;
3. Executa as operações subsequentes.

O ciclo é repetido até que o programa pare.

Cada CPU tem um conjunto específico de instruções.

MMU (memory management unit): unidade de
gerenciamento de memória.
Processador
Clock (ciclo de instrução)




Um computador é algo que possui funções, tarefas e coisas
a fazer, ele precisa de um sinal de relógio para sincronizar
as suas operações, assim como nós mesmos precisamos
sincronizar as nossas.
Esse relógio é chamado de CLOCK, e ele é gerado por um
oscilador eletrônico que fornece uma sequência
ininterrupta de pulsos com períodos constantes.
A isso chamamos, de frequência. Portanto, quando falamos
que um computador possui tanto de Hertz(Hz), estamos
falando da velocidade que ele processa ou sincroniza algo.
O Time Slice é um breve período de tempo durante o qual
uma determinada tarefa recebe o controle do
microprocessador em um ambiente de multitarefa.
Processador
Clock (ciclo de instrução)





A cada intervalo de tempo T, que corresponde a um período
do sinal de clock, dá-se o nome de estado.
O estado é a unidade básica de tempo do microprocessador.
Cada instrução demora um número inteiro de estado para a
sua completa execução.
Algumas instruções podem ter 4 estados, isto é, demoram 4
períodos do sinal de clock, outras podem chegar a ter 18
estados.
Por exemplo: O tempo gasto para processar uma instrução de 7 estados
no microprocessador 8085 com um cristal que fornece um sinal externo
do oscilador de 6,144 MHz é de , 2,28 microsegundos, pois a frequência
do sinal de clock é de 3,072 MHz e o período, que corresponde ao
estado, é de 325,52 ns(nano segundos).
Revisão sobre hardware de
computadores (2)
(a) Um pipeline de três estágios
(b) Uma CPU superescalar
8
Revisão sobre hardware de
computadores (3)

Típica hierarquia de memória
• números mostrados são apenas aproximações
9
Registradores




Lembrando que os registradores são circuitos digitais
capazes de armazenar e deslocar informações binárias, e
são tipicamente usados como um dispositivo de
armazenamento temporário.
São utilizados na execução de programas de computadores,
disponibilizando um local para armazenar dados.
Na maioria dos computadores modernos, quando da
execução das instruções de um programa, os dados são
movidos da memória principal para os registradores.
Então, as instruções que utilizam estes dados são
executadas pelo processador e, finalmente, os dados são
movidos de volta para a memória principal.
Registradores





Registradores de propósito geral (B, C, D, E, H e L): armazena
variáveis importantes e resultados temporários, são as unidades de
memórias mais rápidas e caras de armazenar um dado.
Contador de Programas: contém o endereço de memória da
próxima instrução a ser buscada. Depois que busca é atualizado
para apontar a próxima instrução.
Ponteiro de Pilha (Stack Pointer): aponta para o topo da pilha
atual na memória. A pilha contém uma instrução.
PSW (program status word – palavra de estado do programa):
contém os bits de códigos de condições de instruções de
comparação, pelo nível de prioridade da CPU.
Por exemplo, o processador Intel 80486, cuja palavra é de 32 bits,
tem registradores também de 32 bits.
Registrador Ponteiro de Pilha
Cache (L1, L2), RAM e ROM

Cache: Memória extremamente rápida e cara.
•Cache hit vs. Cache Miss (taxa de acertos e erros)

Cache L1 (16KB): dentro da CPU, decodifica instruções;

Cache L2 (4MB): armazena memória recente, mais lenta.

Memória RAM (4GB): volátil.

Memória CMOS (necessita de bateria): data/hora, disco de boot.

Memória ROM: boot, placas.

Memória Flash (portáteis): intermediária entre a RAM e a de disco
Cache
(a) Chip quad-core com cache
L2 compartilhada.
(b) Chip quad-core com cache
L2 separada.
14
Memória ROM


Mask-ROM: As primeiras ROMs a serem desenvolvidas são as chamadas
Mask-ROM, e são nada mais do que circuitos integrados que guardam o
software ou os dados gravados durante a sua criação. Podemos comparálas com os CD-ROMs: o usuário acessa aquilo que comprou e não pode
gravar outros dados na mídia ou chip.
PROM: Com o passar do tempo, foram necessárias memórias similares,
mas que possibilitassem a inserção posterior de dados. A primeira dessa
nova leva foi a Programmable Read-Only Memory (PROM), que permite
que o conteúdo seja modificado por meio de um dispositivo conhecido
como programador PROM. Porém, como o programador PROM altera
fisicamente as ligações internas do chip, essa inserção pode acontecer
apenas uma vez. Esse tipo de ROM pode ser encontrado em consoles de
video games e em aparelhos de celulares. Além disso, podemos comparar
a PROM com o CD gravável (CD-R), que também suporta apenas uma
gravação.
Memória ROM




EPROM: Outro tipo muito usado é o Erasable Programmable Read-Only Memory
(EPROM). A grande inovação da EPROM é permitir a regravação de dados. O
conteúdo do chip pode ser apagado expondo-o à luz ultravioleta por cerca de 10
minutos. Já o processo de reescrita dos dados requer uma voltagem cada vez maior
e, com isso, a número de reprogramações acaba sendo limitado.
EEPROM: Um tipo mais recente é a Electrically Erasable Programmable Read-Only
Memory (EEPROM) que, como o próprio nome indica, permite que os dados sejam
apagados e gravados com o uso de eletricidade. Assim, é possível atualizar o
firmware de uma câmera ou de um MP3 Player de maneira muito mais prática, sem
precisar remover o chip ROM de dentro do aparelho.
Os modelos mais comuns de EEPROM são a EAROM, que permite a alteração de um
bit por vez do seu conteúdo, e a Flash Memory, que pode ter seu conteúdo alterado
de forma muito mais rápida, além de durar muito mais, possibilitando mais de 1
milhão de ciclos de reprogramação.
Continuando a ideia de relacionar os tipos de ROM com as mídias óticas, podemos
comparar tanto a EPROM quanto a EEPROM com os CDs regraváveis (CD-RW).
Revisão sobre hardware de
computadores(4)
Estrutura de uma unidade de disco (1 TB)
Setores de 512 bytes / 5400, 7200 e 10800 rpm /
braço setor – 1ms / braço disco – 5 a 10 ms
17
Revisão sobre hardware de
computadores (6)
(a)
(b)
Passos para iniciar um dispositivo de E/S e
obter uma interrupção
Como a CPU é interrompida
18
Revisão sobre hardware de
computadores(7)
Barramentos (8): Estrutura de um sistema Pentium grande
BUS – Barramento Serial Universal
19
Conceitos sobre Sistemas
Operacionais (1)

Uma árvore de processos
• A criou dois processos filhos: B e C
• B criou três processos filhos: D, E, e F
20
Conceitos sobre Sistemas
Operacionais (2)
(a) Um deadlock potencial. (b) um deadlock real.
21
Conceitos sobre Sistemas
Operacionais (3)
Sistema de arquivos de um departamento universitário
22
Conceitos sobre Sistemas
Operacionais (4)

Antes da montagem,
• os arquivos do disco flexível são inacessíveis

Depois da montagem do disco flexível em b,
• os arquivos do disco fazem parte da hierarquia de arquivos
23
Conceitos sobre Sistemas
Operacionais (4)

FAT 12 e 16 (File Allocation Table) ou Tabela de Alocação de Arquivos
(1977), para MS-DOS e Windows 95
• Sistema de arquivos que tem seu funcionamento baseado em uma tabela
representativa que possui a capacidade de indicar onde estão os dados de
cada arquivo.
• A tabela usada possui função de guiar onde está localizado cada bloco e
também onde estão divididos os arquivos gravados.
• O FAT trabalha com grupos de setores, não separadamente, assim, cada um
recebe o nome de cluster ou unidade de alocação.
• No FAT16, cada cluster pode ter o seguintes tamanhos: 2 KB, 4 KB, 8 KB, 16
KB, 32 KB e 64KB.
• O tamanho dos clusters já é definido na instalação do sistema operacional, na
etapa de formatação da unidade de armazenamento.
• O FAT possui melhor funcionamento em pequenos volumes de disco.
• Possui tamanhos iguais, pois não pode ter tamanhos diferentes de clusters em
uma mesma unidade de armazenamento.
• Se, por exemplo, tivermos um arquivo com 50 KB, é possível guardá-lo em dois
clusters de 32 KB cada.
• No FAT16, quanto maior o espaço em disco, maior é o tamanho do cluster.
24
Conceitos sobre Sistemas
Operacionais (4)

FAT 32 (1996), Windows 98
• Com o FAT32, é possível usar clusters menores, no geral de 4 KB,
mesmo que a unidade ofereça maior capacidade de armazenamento.
Assim, o desperdício acaba sendo menor.
• O FAT32 precisa de 4 bytes para poder armazenar valores do cluster.
• Com o FAT32, o desperdício em disco teve bastante redução.
• PenDrives, Discos USB e Disquetes, utilizam o FAT12, 16 ou 32 como
sistema de arquivos.
• O formato padrão para pen-drives é o FAT32.
• Tem a capacidade de posicionar o diretório principal em qualquer
lugar do disco.
• Comparando com os sistemas antigos de FAT, havia uma grande
limitação no número de entradas que podiam ser alocadas no diretório
principal.
• Com o FAT32 não há essa preocupação. O FAT32 tem a capacidade de
suportar partições de até 2 TB.
25
Conceitos sobre Sistemas
Operacionais (4)

exFAT 32 (1996), Windows 98
• FAT de 64 bits.
• Muito mais veloz que a FAT32
• É ideal para pen-drives que serão usados com grandes
arquivos, ou mesmo HD's em que a velocidade de acesso
é essencial.
• O exFAT pode ser instalado sem custos em qualquer
computador XP, Vista, Windows 7, 2003.
• Outros sistemas de arquivos: HFS+, Ext3, Ext4, JFS,
JFFS, JFFS2, LogFS, NTFS, Reiser4, ReiserFS e XFS.
26
Conceitos sobre Sistemas
Operacionais (4)

NTFS (New Technology File System) (2000), Windows NT.
• Quando o computador tem um desligamento repentino, ele tem a capacidade
de reverter os dados para a condição anterior ao problema.
• Suportar uma replicação de dados, como acontece nos sistemas RAID
(Redundância de Discos), por exemplo.
• O esquema de permissões de acesso é outra característica do NTFS.
• O NTFS dá a possibilidade do usuário definir quem pode e, como acessar pastas
ou arquivos.
• Possui muita eficiência no trabalho com grandes arquivos e também unidades de
discos bastante cheias.
• com journaling dá permissão ao Sistema Operacional de manter um log
(journal), de todas as mudanças no sistema de arquivos antes de escrever os
dados no disco.
• Um melhor probabilidade de não sofrer corrupção de dados no caso de o sistema
travar ou faltar energia, e uma recuperação mais rápida, pois não necessita
verificar todo o disco, somente aqueles que pertenciam a um log que não fora
fechado devidamente.
27
Exercício: Questão de Consurso
IFPB-2014

Em relação aos sistemas de arquivos do Windows, analise as seguintes
afirmativas:
A Microsoft desenvolveu o NTFS para substituir os sistemas de arquivos utilizados
até então.
PORQUE
O sistema de arquivos FAT32 reconhece arquivos de tamanho ilimitado.
Sobre essas duas afirmativas, é CORRETO afirmar que:
a) As duas são verdadeiras.
b) A primeira é verdadeira e a segunda é falsa.
c) A primeira é verdadeira e a segunda é uma justificativa correta da primeira.
d) A primeira é falsa e a segunda é verdadeira.
e) As duas são falsas.
28
Conceitos sobre Sistemas
Operacionais (5)
Dois processos conectados por um pipe
Entrada de B é a saída de A e vice-versa.
29
Interfaces de um Sistema
Operacional

Usuário – SO:
•Shell ou Interpretador de comandos
•GUI

Programas – SO:
•Chamadas ao Sistema
30
Conceitos Básicos
Chamadas ao Sistema (System Call)

Modos de Acesso:
• Modo usuário;
• Modo kernel ou Supervisor ou Núcleo;
• São determinados por um conjunto de bits localizados no
registrador de status do processador: PSW (program status
word);
- Por meio desse registrador, o hardware verifica se a instrução
pode ou não ser executada pela aplicação;
• Protege o próprio kernel do Sistema Operacional na RAM
contra acessos indevidos;
31
Conceitos Básicos
Chamadas ao Sistema (System Call)

Modo usuário:
•Aplicações não têm acesso direto aos
recursos da máquina, ou seja, ao hardware;
•Quando o processador trabalha no modo
usuário, a aplicação só pode executar
instruções sem privilégios, com um acesso
reduzido de instruções;
•Por que? Para garantir a segurança e a
integridade do sistema;
32
Conceitos Básicos
Chamadas ao Sistema (System Call)

Modo Kernel:
•Aplicações têm acesso direto aos recursos da
máquina, ou seja, ao hardware;
•Operações com privilégios;
•Quando o processador trabalha no modo
kernel, a aplicação tem acesso ao conjunto
total de instruções;
•Apenas o SO tem acesso às instruções
privilegiadas;
33
Conceitos Básicos
Chamadas de Sistema (System Call)


Se uma aplicação precisa realizar alguma instrução
privilegiada, ela realiza uma chamada ao sistema (system
call), que altera do modo usuário para o modo kernel;
Chamadas de sistemas são a porta de entrada para o modo
Kernel;
• São a interface entre os programas do usuário no modo usuário
e o Sistema Operacional no modo kernel;
• As chamadas diferem de SO para SO, no entanto, os conceitos
relacionados às chamadas são similares independentemente
do SO;
34
Conceitos Básicos
Chamadas de Sistema

TRAP: instrução que permite o acesso ao modo kernel;

Exemplo:
•Instrução do UNIX:
count = read(fd,buffer,nbytes);
Arquivo a ser lido
Bytes a serem lidos
Ponteiro para o Buffer
O programa sempre deve checar o retorno da chamada de
sistema para saber se algum erro ocorreu!!!
35
Chamadas ao Sistema
Endereço
0xFFFFFFFFF
Retorno
TRAP
5 Colocar o código para
read no registrador
6
READ
10
4
Espaço
do
Usuário
Biblioteca do
Procedimento
3
2
1
Incrementa SP 11
Comando read
Empilha fd
Empilha &buffer
Empilha nbytes
Chamada ao
Procedimento
READ
9
Tabela de ponteiros para Chamadas
Kernel
SO
Endereço 0
Dispatch
7
8
Manipulador
de Chamadas
36
11 Passos de uma Chamada ao
Sistema read (fd, buffer, nbytes)
37
Algumas Chamadas ao Sistema
para Gerenciamento de Processos
38
Algumas Chamadas ao Sistema
para Gerenciamento de Arquivos
39
Algumas Chamadas ao Sistema
para Gerenciamento de Diretório
40
Algumas Chamadas ao Sistema
para Tarefas Diversas
41
Conceitos Básicos
Chamadas ao Sistema

Chamadas da interface. Unix x Windows:
• Unix
- Chamadas da interface muito semelhantes às chamadas
ao sistema
- ~100 chamadas a procedimentos

Windows
 Chamadas da interface
totalmente diferente das
chamadas ao sistema
 APIWin32 (Application Program
Interface)



Padrão de acesso ao sistema
operacional
Facilita a compatibilidade
Possui milhares de
procedimentos
Retorno
TRAP
Colocar o código para
read no registrador
Incrementa SP
Comando read
Empilha fd
Empilha &buffer
Empilha nbytes
Dispatch
42
Manipulador
de Chamadas
Chamadas ao Sistema (1)

O interior de um shell:
43
Chamadas ao Sistema (2)
Os processos têm três segmentos:
texto, dados e pilha
44
Chamadas ao Sistema (3)
(a)
Dois diretórios antes da ligação de
/usr/jim/memo ao diretório /usr/ast/note
link(“/usr/jim/memo”, “/usr/ast/note”)
(a)
Os mesmos diretórios depois dessa ligação
45
Chamadas ao Sistema (4)
(a)
Sistema de arquivos antes da montagem
(b)
Sistema de arquivos depois da montagem
46
Chamadas ao Sistema (5)
Algumas chamadas da interface API Win32
47
Estrutura dos Sistemas Operacionais –
Baseados em Kernel (núcleo)



Kernel é o núcleo do Sistema Operacional
Provê um conjunto de funcionalidades e serviços que
suportam várias outras funcionalidades do SO
O restante do SO é organizado em um conjunto de rotinas
não-kernel
Interface com usuário
Rotinas não kernel
Kernel
Hardware
48
Estrutura dos Sistemas Operacionais

Principais tipos de estruturas:
•Monolíticos;
•Em camadas;
•Máquinas Virtuais;
•Arquitetura Micro-kernel;
•Cliente-Servidor;
49
Estrutura dos Sistemas Operacionais
- Monolítico



Todos os módulos do sistema são compilados
individualmente e depois ligados uns aos outros em um
único arquivo-objeto;
O Sistema Operacional é um conjunto de processos que
podem interagir entre si a qualquer momento sempre
que necessário;
Cada processo possui uma interface bem definida com
relação aos parâmetros e resultados para facilitar a
comunicação com os outros processos;

Simples;

Primeiros sistemas UNIX e MS-DOS;
50
Estrutura dos Sistemas Operacionais
- Monolítico


Os serviços (chamadas) requisitados ao sistema são
realizados por meio da colocação de parâmetros em
registradores ou pilhas de serviços seguida da execução de
uma instrução chamada TRAP;
Abaixo a estrutura básica para o Sistema Operacional.
• Um Programa Principal que invoca a rotina do
serviço requisitado.
• Um conjunto de Rotinas de Serviços que executam
as chamadas de sistema.
• Um conjunto de Rotinas Utilitários que auxiliam as
rotinas de serviço.
51
Estrutura de Sistemas
Operacionais (1)
Modelo simples de estruturação
de um sistema monolítico
52
Estrutura dos Sistemas Operacionais
- Monolítico
aplicação
aplicação
Modo usuário
Modo kernel
System call
Hardware
53
Estrutura dos Sistemas Operacionais
- Monolítico
Implementação de uma Chamada de Sistema
Memória Principal
Programa de usuário 2
Programas de usuário
rodam em modo usuário
Programa de usuário 1
Chamada ao sistema (kernel)
SO indexa em uma tabela um
ponteiro para o processo
responsável pela execução
TRAP
a chamada é concluída e o
controle volta ao programa do
usuário
4
3
Procedimentos
Procedimentos de
de
Serviços
Serviço
1
2
Rotinas do SO rodam em
modo kernel
Tabela de
Escalonamento
chaveamento da máquina do
Sistema
modo Operacional examina os
usuário para o modoparâmetros
kernel e da chamada para determinar
transferência do controle
qualpara
procedimento
o
deve ser executado
Sistema Operacional
54
Estrutura dos Sistemas Operacionais
– Em camadas


Possui uma hierarquia de níveis;
Primeiro sistema em camadas: THE (idealizado por
E.W. Dijkstra);
• Possuía 6 camadas, cada qual com uma função diferente;
• Sistema em batch simples;



Vantagem: isolar as funções do sistema operacional,
facilitando manutenção e depuração
Desvantagem: cada nova camada implica uma
mudança no modo de acesso
Atualmente: modelo de 2 camadas
55
Estrutura dos Sistemas Operacionais
– Em camadas
Camadas definidas no THE
Forneciment
o de Serviços
56
Estrutura dos Sistemas
Operacionais – Máquina Virtual




Idéia em 1960 com a IBM  VM/370;
Modelo de máquina virtual cria um nível intermediário
entre o SO e o Hardware;
Esse nível cria diversas máquinas virtuais
independentes e isoladas, onde cada máquina
oferece um cópia virtual do hardware, incluindo
modos de acesso, interrupções, dispositivos de E/S,
etc.;
Cada máquina virtual pode ter seu próprio SO;
57
Estrutura dos Sistemas Operacionais
– Máquina Virtual

Principais conceitos:
• Monitor da Máquina Virtual (VMM): roda sobre o hardware e
implementa multiprogramação fornecendo várias máquinas
virtuais  é o coração do sistema;
• CMS (Conversational Monitor System):
- TimeSharing;
- Executa chamadas ao Sistema Operacional;
• Máquinas virtuais são cópias do hardware, incluindo os modos
kernel e usuário;
• Cada máquina pode rodar um Sistema Operacional diferente;
• Hospedagem compartilhada;
• Vmwamre
- SO hospedeiro;
- SO hóspede;
58
Estrutura dos Sistemas Operacionais
– Máquina Virtual
Cópias virtuais do 370s
Instruções de E/S
CMS
TRAP
CMS
CMS
VM/370
TimeSharing;
Chamadas
ao Sistema
Chamadas ao sistema
TRAP
Hardware (VMM)
Monitor da Máquina Virtual
roda sobre o hardware e
implementa multiprogramação
Cada máquina pode rodar um
Sistema Operacional
59
diferente
Multi Boot ou Dual Boot




Multi boot é um sistema que permite a escolha de um entre vários
sistemas operacionais instalados num mesmo microcomputador quando
o mesmo é ligado. Normalmente é chamado de dual boot pelo fato de
que na maioria dos casos possui 'dois' sistemas operacionais.
É fundamental a existência de um programa gerenciador de boot (boot
manager ou gerenciador de arranque) que permita a escolha do sistema
operacional.
Um microcomputador com dois ou mais sistemas operacionais
instalados, mas que não tem o gerenciador de boot, terá um sistema
operacional "padrão" e poderá usar outro sistema operacional se o
processo de boot for feito através de mídia removível.
Neste caso, o microcomputador não tem (ou não é) dual boot.
Multi Boot e Dual Boot




É possível instalar mais de um sistema operacional de categorias
diferentes, como por exemplo o Windows e o Linux (e outros sistemas
operacionais) em um mesmo HD (em partições diferentes,
obviamente).
Também é possível instalar uma distribuição Linux com vários kernels
(com uma opção para cada núcleo no boot manager) ou várias
distribuições Linux, cada uma com um ou mais kernels.
Um dos boot managers mais populares na atualidade é o GNU GRUB, do
projeto GNU, bastante usado no Linux e em alguns outros sistemas
operacionais.
O LILO também é bastante usado no Linux.
Estrutura dos Sistemas
Operacionais – Máquina Virtual

A idéia de máquina virtual foi posteriormente utilizada em
contextos diferentes:
• Programas MS-DOS: rodam em computadores 32bits;
- As chamadas feitas pelo MS-DOS ao Sistema Operacional eram realizadas e
monitoradas pelo monitor da máquina virtual (VMM);
• Emulador expõe as funções de um sistema para reproduzir
seu comportamento, permitindo que um software criado
para uma plataforma funcione em outra.
62
Exercício: Questão de Concurso
PRF 2014

Assinale V para verdadeiro e F para falso.
As rotinas de inicialização GRUB e LILO, utilizadas em diversas
distribuições Linux, podem ser acessadas por uma interface
de linha de comando (Shell).
Correto
O LILO ou GRUB são gerenciadores de partições muito
utilizados quando instalamos uma distribuição Linux em um
computador que já possui o Windows, para permitir o dual
boot. Por serem executados automaticamente ao dar o boot,
oferecem uma interface simples, baseada em linha de
comandos ou uso de menus acessados via teclado.
Estrutura dos Sistemas
Operacionais – Máquina Virtual

A idéia de máquina virtual foi posteriormente utilizada
em contextos diferentes:
• Programas JAVA (Máquina Virtual Java-JVM): o compilador Java
produz código para a JVM (bytecode). Esse código é executado
pelo interpretador Java:
- Programas Java rodam em qualquer plataforma,
independentemente do Sistema Operacional;
64
Estrutura dos Sistemas
Operacionais – Máquina Virtual

A idéia de máquina virtual foi posteriormente utilizada em
contextos diferentes:
•Computação em nuvem
- Virtualização dos servidores simula diferentes ambientes em
servidores físicos.
65
Estrutura dos Sistemas
Operacionais – Máquina Virtual

Vantagens
•Flexibilidade;

Desvantagem:
•Simular diversas máquinas virtuais não é
uma tarefa simples  sobrecarga;
•Performance comprometida.
66
Estrutura dos Sistemas Operacionais
– Máquina Virtual




Para criar um ambiente pronto para ser utilizado por uma
máquina virtual a partir dos parâmetros do próprio computador
será preciso instalar no mínimo dois softwares – um para a
criação e outro para navegar pela máquina virtual.
O aplicativo indispensável para o processo é o Paragon Go
Virtual.
Na hora de utilizar a máquina virtual, há três opções
compatíveis: VMware Workstation, Microsoft Virtual PC e Oracle
VM Virtual Box.
Passo a passo em: http://www.tecmundo.com.br/maquinavirtual/4801-crie-uma-maquina-virtual-a-partir-do-sistemaoperacional-presente-no-computador.htm
em
Modo kernel
ag
ns
me
Modo usuário
me
ns
ag
em
Estrutura dos Sistemas
Operacionais – Micro-Kernel
Microkernel
Hardware
68
Estrutura dos Sistemas Operacionais
– Cliente/Servidor

Reduzir o Sistema Operacional a um nível mais simples:
•Kernel: implementa a comunicação entre
processos clientes e processos servidores 
Núcleo mínimo;
•Maior parte do Sistema Operacional está
implementado como processos de usuários
(nível mais alto de abstração);
•Sistemas Operacionais Modernos;
•Em caso de problema, há indisponibilidade
de apenas um serviço.
69
Estrutura dos Sistemas Operacionais
– Cliente/Servidor
Cada processo servidor trata de uma tarefa
• Os processos servidores não têm acesso direto ao hardware.
Assim, se algum problema ocorrer com algum desses servidores,
o hardware não é afetado;
• O mesmo não se aplica aos serviços que controlam os
dispositivos de E/S, pois essa é uma tarefa difícil de ser realizada
no modo usuário devido à limitação de endereçamento. Sendo
assim, essa tarefa ainda é feita no kernel.
70
Estrutura dos Sistemas Operacionais –
Cliente/Servidor

Adaptável para Sistemas Distribuídos;
71
Estrutura dos Sistemas Operacionais –
Cliente/Servidor

Linux
• Monolítico +Módulos

Windows
• Microkernel + Camadas + Módulos
72
Unidades Métricas
Os prefixos métricos
73
Tarefa para casa.....
1. Criar uma ambiente Dual Boot utilizando Windows e Linux,
ou com várias distribuições Linux para utilizarmos os SO na
próxima aula. (0,5 ponto a mais na nota)
2. Configurar uma Máquina Virtual em seu computador para
podermos acessá-la na próxima aula. (0,5 ponto a mais na
nota)
74
Referências


Sistemas Operacionais Modernos – 3ª Edição. A.
Tanenbaum, 2008.
Modern Operating Systems 3 e. Prentice-Hall, 2008.
Download