________________________ ________________________ ________________________ ________________________ Sistemas Operacionais I Parte III – Estrutura dos SOs ________________________ ________________________ ________________________ ________________________ Prof. Gregorio Perez [email protected] 2007 ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ Roteiro ________________________ Componentes do Sistema ________________________ Serviços ________________________ Estrutura dos Sistemas Operacionais • Funções do Sistema Operacional • Chamadas do Sistema (System Calls) • Modos de Acesso ________________________ ________________________ ________________________ Arquitetura dos Sistemas Operacionais • Sistema Monolítico • Sistema em Camadas • Microkernel (Cliente Servidor) • Máquinas Virtuais ________________________ ________________________ ________________________ ________________________ Questões ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 2 ________________________ ________________________ ________________________ Componentes do Sistema ________________________ Os Sistemas Operacionais são complexos e possuem estruturas diferentes ________________________ Divisão em partes definidas do sistema • Gerência de Processos • Gerência da Memória Principal • Gerência de Arquivos • Gerência do Sistema de E/S • Gerência Secundária • Redes • Sistema de Proteção • Interpretador de Comandos ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 3 ________________________ ________________________ ________________________ Componentes do Sistema Gerência de Processos ________________________ ________________________ Um processo é um programa em execução • Um processo precisa de certos recursos • tempo de CPU, memória, arquivos e dispositivos de E/S ________________________ ________________________ O Gerenciamento de processos é responsável por (em conjunto com o SO) • Criar e excluir processos • Suspender e retomar processos • Oferecer mecanismos para: • sincronismo de processos • comunicação entre processos ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ Programa é uma entidade passiva Processo é uma entidade ativa 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ 4 ________________________ ________________________ ________________________ Componentes do Sistema Gerência de Memória ________________________ ________________________ Memória é um grande vetor de palavras ou bytes • É um repositório de dados rapidamente acessíveis • Cada elemento tem um com seu próprio endereço ________________________ ________________________ Memória principal • Dispositivo de armazenamento volátil • Perde seu conteúdo em caso de falha de sistema ________________________ ________________________ ________________________ O Gerenciamento de memória é responsável por (em conjunto com o SO) • Alocar e desalocar espaço de memória conforme a necessidade • Controlar as partes da memória são usadas e por quem • Decidir quais processos devem ser carregados ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 5 ________________________ ________________________ ________________________ Componentes do Sistema Gerência de Arquivos ________________________ ________________________ Um arquivo é uma coleção de informações relacionadas • Normalmente, os arquivos representam programas e dados ________________________ • Programas nos formatos de fonte e objeto ________________________ ________________________ O Gerenciamento de Arquivos é responsável por (em conjunto com o SO) • Criação e exclusão de arquivos • Criação e exclusão de diretórios • Suporte a primitivas para manipulação de arquivos e diretórios • Mapeamento de arquivos em armazenamento secundário • Backup de arquivos em meios de armazenamento não voláteis ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 6 ________________________ ________________________ ________________________ Componentes do Sistema Gerência de Armazenamento Secundário ________________________ Armazenamento Secundário • Memória principal é volátil e muito pequena • Usado para apoiar a memória principal • Discos são o principal meio de armazenamento para programas e dados ________________________ ________________________ ________________________ ________________________ O Gerenciamento de Disco é responsável por (em conjunto com o SO) • Gerenciamento do espaço livre • Alocação do armazenamento • Escalonamento do disco ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 7 ________________________ ________________________ ________________________ Componentes do Sistema Gerência de I/O ________________________ ________________________ O sistema de E/S consiste em: • Inclui buffering, sistema de caching e spooling • Uma interface genérica controladora de dispositivos • Drivers para dispositivos de hardware específicos ________________________ ________________________ ________________________ Buffering • Armazenamento principal Spooling • Armazenamento secundário Processador ________________________ ________________________ ________________________ Armazenamento Área de transferência ________________________ Controlador De Disco ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 8 ________________________ ________________________ ________________________ Componentes do Sistema Redes (Sistemas Distribuídos) ________________________ ________________________ Um sistema distribuído é um conjunto de processadores • Fornece ao usuário acesso a vários recursos do sistema • Cada processador possui sua própria memória local ________________________ ________________________ • Não compartilham memória ou um relógio ________________________ Conexão por uma rede de comunicação • A comunicação ocorre através do uso de um protocolo ________________________ ________________________ O acesso a um recurso compartilhado permite: • Maior velocidade de computação • Maior disponibilidade de dados • Maior confiabilidade ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 9 ________________________ ________________________ ________________________ Componentes do Sistema Proteção ________________________ ________________________ Mecanismo para controlar o acesso aos recursos do sistema • Programas • Processos • Usuários ________________________ ________________________ ________________________ O mecanismo de proteção precisa • Distinguir entre uso autorizado e não autorizado • Especificar controles a serem impostos • Fornecer um meio para a imposição ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 10 ________________________ ________________________ ________________________ Componentes do Sistema Interpretador de Comandos ________________________ O usuário interage com o SO Programa de leitura e interpretação de instruções de controle • Interpretador de linha de comando ou Shell • Função de apanhar e executar a próxima instrução de comando ________________________ ________________________ ________________________ • E/S, armazenamento secundário, arquivos e processos • Proteção • Uso da rede ________________________ ________________________ Shell • Interface Texto - Prompt de Comando • Interface Gráfica - Windows Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ Instruções de Controle dão comandos ao SO • Tratamento de E/S • Gerenciamento 2007 ________________________ ________________________ ________________________ 11 ________________________ ________________________ ________________________ Serviços do Sistema Operacional ________________________ Execução de Programa • Capacidade para carregar um programa na memória e executá-lo Operações de E/S • Os programas do não podem executar operações de E/S • SO deve prover os meios necessários ________________________ ________________________ ________________________ ________________________ Manipulação do sistema de arquivos • capacidade do programa para ler, gravar, criar e excluir arquivos ________________________ Comunicações • Troca de informações entre processos • Através de memória compartilhada ou passagem de mensagens ________________________ ________________________ Detecção de erro • Assegura computação correta ________________________ • Erros na CPU, hardware, memória, dispositivos de E/S e programas 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ 12 ________________________ ________________________ ________________________ Serviços do Sistema Operacional Funções Adicionais ________________________ ________________________ Não usadas para auxiliar o usuário ________________________ Garantir operações eficientes do sistema • Alocação de Recursos ________________________ ________________________ • Alocação para diversos usuários ou múltiplas tarefas • Contabilidade ________________________ • Controle e registro de usuários e recursos ________________________ • Proteção • Controle de acesso aos recursos do sistema ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 13 ________________________ ________________________ ________________________ Introdução Estrutura dos Sistemas Operacionais Aplicação não seqüencial • Rotinas • Eventos Assíncronos • Associados ao hardware • Tarefas internas do SO ________________________ ________________________ ________________________ Núcleo do Sistema Ou Kernel ________________________ ________________________ Kernel • Software que contém o “núcleo” do sistema ________________________ ________________________ Formado por Rotinas (procedimentos) • Oferecem serviços ________________________ • Aos usuários • Aplicações • Rotinas do próprio sistema ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 14 ________________________ ________________________ ________________________ Estrutura dos Sistemas Operacionais Chamadas do Sistema - System Calls ________________________ Mecanismo de Proteção do Núcleo • Método usado para requisitar uma ação do Sistema Operacional • Geralmente disponíveis como instruções em linguagem assembly ________________________ ________________________ ________________________ Cada Serviço tem um System Calls associado Cada SO tem uma biblioteca de System Calls ________________________ Acesso por linguagens de alto nível • Linguagens definidas para substituir a ________________________ ________________________ ________________________ linguagem assembly na programação de sistemas permitem chamadas diretas (C/C++) • Linguagens independentes da plataforma não permitem chamada diretas (Java) ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 15 ________________________ ________________________ ________________________ Chamadas de Sistema Modos de Acesso ________________________ Instruções Privilegiadas - Podem comprometer o sistema Modo Usuário ________________________ ________________________ • executa instruções não privilegiadas ________________________ Modo Kernel ________________________ • executa instruções privilegiadas Aplicativos Aplicativos ________________________ Aplicativos Aplicativos Interface das Chamadas de Sistemas usuário ________________________ kernel ________________________ ________________________ Componentes do SO ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 16 ________________________ ________________________ ________________________ Chamadas de Sistema Passagem de Parâmetros ________________________ ________________________ 3 Métodos são usados para passagem de parâmetros • Passar parâmetros via registradores • Armazenar os parâmetros em uma tabela na memória • O endereço na tabela é passado como um parâmetro em um ________________________ ________________________ registrador • O programa coloca (push) os parâmetros na pilha e o Sistema Operacional retira (pop) os parâmetros da pilha ________________________ ________________________ ________________________ X X: parâmetros para chamada Carrega endereço X Chamada de sistema 13 registrador Usa parâmetros da tabela X Código para Chamada de Sistema 13 ________________________ ________________________ ________________________ Programa de usuário 2007 ________________________ Sistema Operacional Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 17 ________________________ ________________________ ________________________ Chamadas de Sistema Exemplos Interface API Win32 / Unix ________________________ Tanenbaum Sistemas Operacionais Modernos Ed. Pearson ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 18 ________________________ ________________________ ________________________ Chamadas de Sistema Exemplos de Chamadas dos Componentes ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ Tanenbaum, Sistemas Operacionais Modernos, Ed. Pearson 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 19 ________________________ ________________________ ________________________ ________________________ Chamadas de Sistema Exemplos de Chamadas dos Componentes ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ Tanenbaum, Sistemas Operacionais Modernos, Ed. Pearson 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 20 ________________________ ________________________ ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ ________________________ Sistema Operacionais Atuais tendem a ser complexos • Devem prover muitos serviços • Suportam uma grande variedade de software e hardware ________________________ ________________________ A organização (arquitetura) dos Sistemas Operacionais auxiliam o gerenciamento de sua complexidade • Organização dos componentes do sistema operacional • Especificam o privilégio com o qual cada componente será ________________________ ________________________ ________________________ executado ________________________ Mais Utilizadas • Arquitetura Monolítica • Arquitetura em Camadas • Arquitetura Cliente / Servidor 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ ________________________ 21 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Sistema Monolítico ________________________ ________________________ Organização mais comum • Cada componente é contida no Kernel • Rotinas podem interagir livremente entre si • System Calls dispara o processo VMS Modo kernel Linux ________________________ ________________________ Aplicativos Aplicativos Aplicativos Aplicativos Modo usuário OS/360 ________________________ ________________________ ________________________ Interface das Chamadas de Sistemas ________________________ Kernel do SO MM – Gerência de Memória PS – Escalonador de Processador IPC – Comunicação Interprocessos FS- Sistema de Arquivos IO – Gerência de Entrada e Saída Net – Gerência de Redes 2007 MM IPC IO PS ________________________ FS Net ________________________ ________________________ Hardware Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 22 ________________________ ________________________ ________________________ Sistema Monolítico Vantagens e Desvantagens ________________________ Vantagens • Tende a ser altamente eficiente ________________________ ________________________ ________________________ ________________________ Desvantagens • Dificuldade de determinar a origem de erros sutis • Particularmente suscetíveis a códigos maliciosos ________________________ ________________________ (todo código é executado com acesso irrestrito ao sistema) ________________________ ________________________ Podem se tornar “desajeitados” ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 23 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Sistemas em Camadas ________________________ ________________________ Divisão dos componentes do SO em camadas sobrepostas • Cada camada oferece um conjunto de funções ________________________ • Funções podem ser utilizadas por outros módulos ________________________ • Cada camada se comunica apenas com camadas imediatamente acima ou abaixo ________________________ • Camada inferior (camada 0) é o hardware • Camada superior (camada N) é a interface com o usuário ________________________ Usuário Windows NT Modo Usuário Linux Modo Kernel Sistema THE (Technische Hogeschool Eindhoven) - Dijkstra – Holanda (1968) 2007 Programas Programas de de Usuários Usuários 33 Gerência Gerência de de Entrada Entrada // Saída Saída 22 Comunicação Comunicação 11 Gerência Gerência de de Memória Memória 00 Alocação Alocação ee Escalonamento Escalonamento de de Processos Processos Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ Hardware Windows XP 44 ________________________ 24 ________________________ ________________________ ________________________ ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Sistemas em Camadas ________________________ MS-DOS OS/2 • Sistema em camadas simples • Descendente do MS-DOS - multitarefa • O usuário sem acesso aos recursos de baixo nível • SO tem maior controle de hardware Aplicação Aplicação ________________________ ________________________ ________________________ ________________________ Aplicação Programa de Aplicação ________________________ Interface de programa de aplicação (API) Programa residente do sistema subsistema Extensão da API subsistema ________________________ subsistema ________________________ Drivers de dispositivos do MS-DOS • Gerência de memória • Despacho de tarefas • Gerência de dispositivos Kernel do sistema ________________________ ________________________ Driver de dispositivo Driver de dispositivo Driver de dispositivo ________________________ Drivers de dispositivos do ROM BIOS 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 25 ________________________ ________________________ Sistemas em Camadas Vantagens e Desvantagens Usuário Usuário Supervisor Supervisor ________________________ Executivo Executivo Kernel Kernel ________________________ ________________________ Vantagens • Sistema mais Modular ________________________ • Isolar as funções do SO MULTICS e VMS • Facilita alteração e depuração Mais interna – mais privilegiada • Hierarquia de níveis de modos de acesso ________________________ ________________________ • Interface protege a implementação (encapsulamento) ________________________ • Camadas internas fornecem o serviço para as camadas externas ________________________ Desvantagens • Processo pode ter que passar por muitas camadas antes da ________________________ execução ________________________ • Eficiência pode ser reduzida em relação ao sistema monolítico ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 26 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Sistema de Microkernel (Cliente/Servidor) ________________________ Núcleo (kernel) menor, mais simples e expansível • Prover pequeno número de serviços • Sistema dividido em processos • Cada processo responsável por conjunto de serviços • de arquivos, de criação de processos, de memória, .. ________________________ Todos os componentes podem se comunicar Windows XP Linux UNIX e MacOS X Server • (kernel Mach) 2007 Processo Processo Cliente Cliente (usuário) (usuário) ________________________ ________________________ ________________________ ________________________ Troca de Mensagens (função do núcleo) requisição resposta Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ Processo Processo Servidor Servidor ________________________ ________________________ Realiza Realiza a a tarefa tarefa ________________________ 27 ________________________ ________________________ ________________________ Sistema Cliente Servidor Modos de Acesso ________________________ Servidores executam o pedido no modo usuário ________________________ Apenas o Núcleo executa no modo kernel ________________________ ________________________ Aplicativos Aplicativos Aplicativos Aplicativos ________________________ ________________________ Interface das Chamadas de Sistemas Modo usuário FS Modo kernel PS IO ________________________ PS – Servidor de Processos FS- Servidor de Arquivos IO – Servidor de E / S ... Kernel IPC Gerência de memória 2007 ________________________ ... sincronização ________________________ ________________________ IPC – Comunicação Interprocessos Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 28 ________________________ ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Sistema de Microkernel ________________________ ________________________ Estrutura do Windows NT • Estrutura híbrida • Parte em Camadas Aplicações ________________________ Aplicações Aplicações POSIX POSIX Aplicações OS/2 OS/2 Aplicações Aplicações win32 win32 Servidor Servidor win32 win32 Servidor Servidor OS/2 OS/2 ________________________ Servidor Servidor POSIX POSIX ________________________ ________________________ Kernel ________________________ Estrutura do MacOS X • kernel Mach Ambiente do kernel 2007 ________________________ Ambiente de Aplicação e Serviços Comuns ________________________ ________________________ BSD ________________________ Mach Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 29 ________________________ ________________________ ________________________ Sistema Cliente Servidor Vantagens ________________________ ________________________ Serviço pode parar sem comprometer o sistema ________________________ Alto grau de modularidade • Portável e Expansível • Isolar Funções do SO por processos (Servidores) • Mais fácil manutenção ________________________ ________________________ ________________________ Independente da quantidade de processadores • Sistemas múltiplos processadores (fortemente acoplados) • Sistemas distribuídos (fracamente acoplados) ________________________ ________________________ ________________________ Cliente / Servidor em ambiente distribuído • Resposta pode ser processada remotamente 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ 30 ________________________ ________________________ ________________________ Sistema Cliente Servidor Desvantagens ________________________ ________________________ Implementação difícil • Funções do SO que exigem acesso direto ao hardware ________________________ por exemplo: operações de Entrada / Saída ________________________ ________________________ Aumento do nível de comunicação inter-modular • Pode degradar a eficiência do Sistema ________________________ ________________________ ________________________ Usualmente: Combinação de modelo em Camadas com Cliente/Servidor ________________________ Ex. Windows NT ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 31 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Máquinas Virtuais ________________________ ________________________ Conclusão lógica da técnica de Camadas ________________________ Hardware e o Kernel como se ambos fossem hardware ________________________ Uma MV oferece interface idêntica à do hardware básico ________________________ ________________________ O sistema operacional cria a ilusão de múltiplos processos, cada um sendo executado em seu próprio processador, com sua própria memória (virtual) ________________________ ________________________ ________________________ IBM - VM ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 32 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Máquinas Virtuais ________________________ Máquina Não Virtual Máquina Virtual ________________________ ________________________ processos processos processos kernel kernel kernel VM1 VM1 VM1 ________________________ processos ________________________ Interface de Programação kernel Implementação da máquina virtual hardware hardware ________________________ ________________________ ________________________ ________________________ IBM VM / 370 ________________________ ________________________ 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 33 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Máquinas Virtuais ________________________ ________________________ VMWare ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ Silberschatz et al. Operating Systems 7a ed. Ed. Elsevier 2007 ________________________ Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 34 ________________________ ________________________ ________________________ Máquina Virtual Vantagens e Desvantagens ________________________ ________________________ Vantagens • Provê proteção completa dos recursos do sistema ________________________ • cada MV é completamente isolada de todas as outras MV • Não existem problemas de segurança ________________________ • Veículo perfeito para pesquisa e desenvolvimento de SO ________________________ • O desenvolvimento do sistema é feito na máquina virtual, e não em uma máquina física, e não interrompe a operação normal do sistema. Desvantagens • O isolamento não permite compartilhamento direto dos recursos • Implementação de compartilhamento pode ser feito por software • Compartilhamento pode ser feito por rede de comunicação virtual ________________________ ________________________ necessário para oferecer uma duplicata exata da máquina utilizada Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ • Conceito de MV difícil de implementar devido ao esforço 2007 ________________________ ________________________ 35 ________________________ ________________________ ________________________ Máquina Virtual Java (JVM) ________________________ Os programas Java compilados são bytecodes para plataforma neutra executados por uma Máquina Virtual Java (JVM) A JVM consiste em • Carregador de classes • Verificador de classe • Interpretador de tempo de execução Carregador de classes ________________________ ________________________ ________________________ Java API ________________________ ________________________ Interpretador Java ________________________ ________________________ Sistema Operacional (Windows, Linux, etc...) 2007 ________________________ ________________________ Os compiladores Just-In-Time (JIT) aumentam o desempenho Programa Java ________________________ Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 36 ________________________ ________________________ Arquitetura dos Sistemas Operacionais ________________________ Questões ________________________ O que é Kernel ? Cite 3 das principais funções do Kernel Qual a diferença entre Kernel e Shell ? Qual é a finalidade do interpretador de comandos? Por que ele normalmente é separado do kernel? Explique o que são as Chamadas do Sistema e porque são necessárias Por que é arriscado permitir que usuários executem livremente operações de leitura e escrita para qualquer região do disco ? ________________________ ________________________ Como funciona um Sistema Monolítico ? Qual a sua principal desvantagem ? ________________________ ________________________ Em que condição o Sistema em Camadas será menos eficiente que o Sistema Monolítico ? ________________________ Como o Sistema de microkernel difere do Sistema em Camadas ? ________________________ ________________________ ________________________ Quais são os modos de Acesso às instruções do núcleo 2007 ________________________ ________________________ Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez 37 ________________________ ________________________ ________________________ Questões Quais as vantagens de um Sistema Cliente Servidor (microkernel) e como ele pode promover a portabilidade ? Qual é a principal vantagem para um projetista de sistema operacional em usar uma arquitetura de máquina virtual? Por que Java oferece a capacidade de chamar métodos nativos que são escritos, digamos, em C ou C++? Dê um exemplo em que um método nativo é útil. ________________________ O sistema operacional experimental Synthesis possui um assembler incorporado dentro do kernel. Para otimizar o desempenho da chamada de sistema, o kernel monta rotinas dentro do seu espaço para diminuir o caminho que a chamada de sistema precisa percorrer no kernel. Essa técnica é a antítese da técnica em camadas, em que o caminho pelo kernel é estendido para facilitar a montagem do sistema operacional. • Discuta os prós e os contras da técnica do Synthesis para o projeto do kernel e a otimização do desempenho do sistema. Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ ________________________ Por que um compilador just-intime é útil para a execução de programas Java? 2007 ________________________ ________________________ 38 ________________________ ________________________ ________________________ Referência Bibliográfica ________________________ Sistemas Operacionais • Deitel, Deitel e Choffnes; • Ed. Pearson 3a Edição • www.prenhall.com/deitel_br ________________________ Sistemas Operacionais, Conceitos e Aplicações • A. Silberschatz, P. Galvin, G. Gagne; • Ed. Campus Tradução da 6a Edição • www.wiley.com/college/silberschatz6e/ ________________________ ________________________ ________________________ ________________________ ________________________ 0471417432/slides/slides.html ________________________ Sistemas Operacionais Modernos • Andrew Tanenbaum; • Ed. Pearson 2a Edição • www.prenhall.com/tanenbaum_br 2007 Sistemas Operacionais I - parte III - Estrutura - prof. Gregorio Perez ________________________ ________________________ ________________________ 39 ________________________