funcionalidades de um sistema operacional · funcionalidades de um sistema operacional prof. dr....

71
Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho [email protected]

Upload: others

Post on 22-Aug-2020

30 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Funcionalidades de um Sistema Operacional

Prof. Dr. André Carvalho [email protected]

Page 2: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Agenda

n  Gerências ¡  Processos, memória, E/S, arquivos,

proteção e outras gerências n  Serviços n  Chamadas ao sistema n  Estrutura de um SO

2

Page 3: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Processos

n  Um processo é um programa em execução

n  Demanda recursos como: ¡  Tempo de CPU ¡  Espaço em memória ¡  Arquivos ¡  Dispositivos de E/S

3

Page 4: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Processos

n  Distr ibuição da capacidade de processamento: ¡  de forma justa entre as aplicações. ¡  evitando que uma aplicação monopolize

o processador. ¡  respeitando as prioridades dos usuários.

4

Page 5: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Processos

n  O S.O. provê a ilusão de que existe um processador independente para cada tarefa. ¡  Facilita o trabalho dos programadores de

aplicações ¡  Permite a construção de sistemas mais

interativos.

5

Page 6: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Processos

n  Tarefas do S.O. relacionadas a gerência de processos ¡  Criação e destruição de processos ¡  Suspensão e continuação dos processos. ¡  Disponibilização de mecanismos para:

n  Sincronização de processos n  Comunicação entre processos

6

Page 7: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Memória

n  A memória pode ser vista como um longo vetor de palavras (sequências de bytes)

n  Cada palavra tem seu próprio endereço.

n  A memória é então um repositório para acesso ráp ido de dados compartilhados entre os dispositivos de E/S e a CPU. 7

Page 8: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Memória

n  A Gerência de memória tem como objetivo fornecer a cada aplicação uma área de memória: ¡  Própria ¡  Independente ¡  Isolada das demais aplicações e

inclusive do núcleo do sistema.

8

Page 9: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Memória

n  O isolamento das áreas de memória d a s a p l i c a ç õ e s m e l h o r a a estabilidade e segurança do sistema como um todo ¡  pois impede aplicações com erros (ou

aplicações maliciosas) de interferir no funcionamento das demais aplicações.

9

Page 10: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Memória

n  Além disso, caso a memória RAM existente seja insuficiente para as aplicações, o sistema operacional p o d e a u m e n t á - l a d e f o r m a transparente às aplicações. ¡  Usando o espaço disponível em um meio

de armazenamento secundário (como um disco rígido).

¡  Memória Virtual 10

Page 11: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Memória

n  Endereçamento virtual ¡  Desvincula os endereços de memória

vistos por cada aplicação dos endereços acessados pelo processador na memória RAM.

11

Page 12: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Memória

n  Uma aplicação pode ser carregada em qualquer posição livre da memória. ¡  Programador não tem de se preocupar

com os endereços de memória onde ela irá executar.

¡  Memória pode ser realocada de acordo com a conveniência do S.O.

12

Page 13: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de E/S

n  Também chamada de gerência de dispositivos

n  Em um sistema de computação existem vários dispositivos diferentes ¡  Pen drive, disquetes, discos IDE e SCSI

n  A ideia é permitir, através de drivers, o uso de forma comum

13

Page 14: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de E/S

n  As funções da gerência de E/S são: ¡  Controle e gerência de buffer e cache. ¡  Interface genérica para comunicação com

drivers. ¡  Alocação de drivers para dispositivos de

hardware específicos.

14

Page 15: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Arquivos

n  Um arquivo (file) é uma coleção de informações relacionadas de acordo os objetivos do seu criador. ¡  Programas (fonte ou objeto). ¡  Dados.

15

Page 16: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Arquivos

n  A gerência de arquivos é construída sobre a gerência de E/S e visa criar arquivos e diretórios, definindo sua interface de acesso e as regras para seu uso.

16

Page 17: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Arquivos

n  O S.O. é responsável por: ¡  Criar e remover arquivos (e diretórios). ¡  Dar suporte a operações primitivas para

manipulação de dados e diretórios. ¡  M a p e a r a r q u i v o s e m m e m ó r i a

secundária. ¡  Manter coerência entre as imagens na

memória primária e secundária.

17

Page 18: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Gerência de Arquivos

n  É importante observar que os conceitos abstratos de arquivo e diretório são tão importantes e difundidos que muitos sistemas operacionais os usam para permitir o acesso a recursos que nada tem a ver com armazenamento. ¡  Conexões de rede (socket UNIX) e informações

do kernel (diretório /proc do UNIX) ¡  Sistema operacional experimental Plan9 [Pike et

al., 1993] 18

Page 19: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Proteção

n  Proteção: Mecanismos de controle de acesso aos recursos de sistema e de usuário por parte dos programas.

n  Funções: ¡  Fazer distinção entre o uso autorizado e

não autorizado. ¡  Especificação de medidas de controle. ¡  Garantia da execução destas medidas.

19

Page 20: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Proteção

n  Para proteger os recursos do sistema c o n t r a a c e s s o s i n d e v i d o s , é necessário: a)  definir usuários e grupos de usuários; b)  identificar os usuários que se conectam

ao sistema, através de procedimentos de autenticação;

20

Page 21: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Proteção

c)  definir e aplicar regras de controle de acesso aos recursos, relacionando todos os usuários, recursos e formas de acesso e aplicando essas regras através de procedimentos de autorização;

d)  registrar o uso dos recursos pelos usuários, para fins de auditoria e contabilização.

21

Page 22: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Outras gerências dos S.O. modernos

n  Várias outras vêm se agregar aos sistemas modernos, para cobrir aspectos complementares, ¡  Interface gráfica ¡  Suporte de rede ¡  Multimídia ¡  Energia

22

Page 23: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Outras gerências dos S.O. modernos

n  Gerência de rede ¡  Implementam métodos e políticas para a

comunicação e o compartilhamento de recursos entre vários computadores em uma mesma rede.

¡  Protocolos de comunicação ¡  Compartilhamento de dispositivos (disco,

impressora, etc.) ¡  Acesso compartilhado de usuários

23

Page 24: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Visão geral das funcionalidades de um S.O.

24

Núcleo

Gerência de processo

Gerência de memória

Interface gráfica

Outras gerências

Suporte a rede

Gerência de proteção

Gerência de arquivos

Gerência de E/S

Page 25: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura de um S.O.

n  Núcleo – Coração do S.O. ¡  Gerência de recursos de hardware. ¡  Implementação de abstrações usadas pelas

aplicações. n  Drivers – Módulos de código específicos

para acessar dispositivos físicos. ¡  Muitas vezes construido pelo fabricante do

hardware.

25

Page 26: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura de um S.O.

n  Código de inicialização. ¡  Uso do hardware requer uma série de tarefas

complexas, como reconhecimento de dispositivos, teste e configuração.

¡  Carregar o núcleo do sistema.

n  Programas utilitários. ¡  Não essenciais. ¡  Facilitam o uso. ¡  Formatação de disco, manipulação de arquivos,

calculadora, editor de texto, etc. 26

Page 27: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

27

Page 28: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

S.O. – Política vs. Mecanismo

n  Política – Decisões mais abstratas, através de algoritmos de alto nível. ¡  Quantidade de memória reservada a uma aplicação, qual o

próximo processo a utilizar a CPU, Qual pacote de rede enviar. n  Mecanismo – procedimentos de baixo nível, implementação

no hardware das políticas. ¡  Acesso à memória propriamente dita, envio do pacote de rede. ¡  Genéricos, de modo a suportar mudanças nas políticas.

n  Separação flexibiliza o S.O., possibilitando mudanças de políticas sem grandes traumas.

28

Page 29: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Serviços do S.O.

Page 30: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Serviços do S.O.

n  Um S.O. deve fornecer aos programas e seus usuários uma série de serviços necessários a sua execução.

n  Quando necessário, o programa invoca estes serviços do S.O.

n  I s t o t r a z c o n v e n i ê n c i a a o s desenvolveres dos programas.

Page 31: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Serviços do S.O.

n  Execução de programas ¡  Carregar um programa na memória e

colocá-lo em execução na CPU. ¡  Tratar o fim da execução (anormal ou

não). n  Operações de E/S

¡  Prover os meios para intermediar as ações entre estes programas e os dispositivos.

Page 32: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Serviços do S.O.

n  Manipulação de Arquivos ¡  Serviços básicos de leitura, escrita,

criação e remoção. n  Comunicação

¡  Troca de informação entre processos executando no mesmo computador ou em computadores distintos em uma mesma rede.

Page 33: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Serviços do S.O.

n  Detecção de erros ¡  Garantir a correta execução dos

programas, detectando (e até mesmo tratando) erros no sistema, no hardware ou nos programas de usuário.

Page 34: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Funções adicionais

n  Funções relacionas à eficiência do sistema: ¡  Alocação de recursos para múltiplos usuários e

processos utilizando o sistema ao mesmo tempo.

¡  Manutenção de estatísticas da utilização dos recursos para garantir o bom funcionamento ou para estimar custos de operação.

¡  Garantir a proteção no acesso aos recursos do sistema

Page 35: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Chamadas de Sistema (System Calls)

Page 36: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Chamadas de Sistema

n  A interação entre os programas em execução e o sistema operacional se dá através de chamadas de sistema (system calls)

n  G e r a l m e n t e i m p l e m e n t a d o s c o m o instruções da linguagem de montagem (assembly).

n  Algumas linguagens de alto-nível (ex.: C)

Page 37: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Chamadas de Sistema

n  M é t o d o s p a r a p a s s a g e m d e parâmetros em chamadas de sistema: ¡  Através de registradores ¡  Os parâmetros são armazenados em

uma tabela na memória e o endereço da tabela é passado em um registrador.

¡  Usando uma estrutura de pilha, os parâmetros são empi lhados pelo programa e desempilhados pelo S.O.

Page 38: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Chamada de Sistema

Page 39: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Passagem de Parâmetros

Page 40: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Tipos de Chamadas

n  Controle de Processos n  Manipulação de Arquivos e Diretórios n  Comunicações

Page 41: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Controle de Processos

Page 42: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Controle de Processos (Execução no MS-DOS)

n  Sistema Mono-Tarefa

n Sistema “Livre” n Executando um Programa

Page 43: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Controle de Processos (Execução no UNIX)

n  Sistema Multi-Tarefa

Page 44: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Manipulação de Arquivos

Page 45: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Manipulação de Arquivos

Page 46: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Modelos de Comunicação

n Troca de Mensagens n Memória Compartilhada

Page 47: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Comparação de Chamadas

Page 48: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Programas de Sistema

n  Programas de Sistema (utilitários) ¡  Manipulação de Arquivos ¡  Informação de Status ¡  Suporte a linguagem de programação ¡  Carga e execução de programas ¡  Comunicações

n  Em muitos casos, atua como uma “casca”: para os usuários executarem chamadas de sistema.

Page 49: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estruturas de Sistema

Page 50: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura Monolítica

n  A maior parte do núcleo do S.O. trabalha em modo kernel. ¡  Acesso completo ao sistema.

n  Vantagem: Desempenho. ¡  Qualquer parte do sistema pode acessar

qualquer coisa, como hardware e outras partes do núcleo.

n  Desvantagem: ¡  Tolerância menor a falhas. ¡  Maior possibilidade de travamentos.

50

Page 51: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura Monolítica: MS-DOS

n  MS-DOS ¡  Concebido para prover o máximo de

funcionalidade ocupando o mínimo de espaço

¡  Não há uma separação explícitas dos módulos componentes.

Page 52: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura do MS-DOS

Page 53: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura Monolítica: UNIX

n  Por causa das limitações de HW, o UNIX original consistia de duas partes: ¡  Programas de Sistema ¡  Kernel: Implementação das funções de

system call e interface com o HW. n  file system, escalonamento de CPU, gerência

de memória, etc.

Page 54: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Estrutura do UNIX

Page 55: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Abordagem em Camadas

n  O S.O. é divido em camadas, cada uma construída no top de outra camada de nível mais baixo.

n  Camada 0 é o HW e camada N é a interface com o usuário.

n  Em cada camada são usadas funções e serviços implementados na camada imediatamente abaixo.

Page 56: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Camadas em um S.O.

Page 57: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Sistema Operacional “THE”

Page 58: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Camadas do OS/2

Page 59: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Cliente Servidor e Microkernels

n  Esta abordagem consiste em mover o máximo possível de código para as camadas superiores deixando um microkernel mínimo para as tarefas críticas.

n  Um processo de usuário (cliente) envia uma requisição a um processo servidor que executa a tarefa e envia os resultados

n  O kernel cuida da comunicação entre clientes e servidores.

Page 60: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Cliente Servidor e Microkernels

n  Os servidores, atuando como usuários, em geral fazem requisições ao kernel para ter acesso aos recursos de hardware.

n  Problemas em um servidor específico não perturbam o sistema

Page 61: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Cliente Servidor e Microkernels

n Cliente requisita n  ações ao servidor.

Page 62: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Grande flamewar entre Linus Torvalds e A. Tanenbaum

n  Vale a leitura desta discussão em uma lista de emails entre Linus Torvalds (criador do Linux) e Andrew Tanenbaum (autor do mais famoso livro de S.O.)

n  http://oreilly.com/catalog/opensources/book/appa.html

62

Page 63: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Máquinas Virtuais

n  Extensão da abordagem de camadas. n  O kernel S.O. é tratado com se fosse parte

do HW. n  Uma máquina virtual provê uma interface

similar ao do hardware da máquina. n  O S.O. cr ia a i lusão de múlt iplos

processadores cada um com a sua própria memória virtual.

Page 64: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Máquinas Virtuais

Page 65: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Máquinas Virtuais

n  Provêm completo isolamento dos recursos do sistema uma vez que que as MVs são isoladas umas das outras.

n  O isolamento, no entanto, impede o compartilhamento direto de recursos.

Page 66: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Máquinas Virtuais

n  São a p la ta fo rma i dea l pa ra desenvo l v imen to de s i s temas operacionais pois não põe em risco a operação do sistema Real.

n  Difíceis de implementar devido ao esforço em emular a interface da máquina real.

Page 67: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Tipos

n  Máquinas virtuais de sistema. ¡  Suporte a sistemas operacionais inteiros

rodando sobre eles. ¡  VMWare, Virtualbox

n  Máquinas virtuais de aplicação ¡  Suporte apenas a aplicações específicas. ¡  Java, Wine.

67

Page 68: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Java Virtual Machine

Page 69: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Plataforma Java

Page 70: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Arquivos Java “.class”

Page 71: Funcionalidades de um Sistema Operacional · Funcionalidades de um Sistema Operacional Prof. Dr. André Carvalho andre@icomp.ufam.edu.br Agenda ! Gerências " Processos, memória,

Ambiente de Desenvolvimento