Exokernel Aluno : Leandro Heleno Möller Professor : Eduardo Bezerra Fabiano Hessel Disciplina : Sistemas Digitais e Arquitetura de Computadores 2
Sumário Kernels Sistemas Operacionais Tradicionais Exokernels Exemplos Comparações Conclusões Referências Bibliográficas
Kernel Kernel – SW responsável por prover acesso ao HW; Por que preciso dele? HW muito complexo. Tipos de Kernels: Kernels Monolíticos; Microkernels; Kernels Híbridos; Exokernels.
SOs Tradicionais Utilizam kernels monolíticos ou microkernels; SOs acessam recursos de HW através do kernel; Limita o desempenho e diminui liberdade das aplicações; SOs implementam abstrações para aplicações que não utilizam tais características;
Exokernel Kernel miniatura; Provê basicamente primitivas de HW em nível de aplicação; Limita-se em proteger e gerenciar recursos;
Estrutura Duas estruturas básicas: Exokernel e biblioteca do SO; LibOS - esconde recursos de baixo nível; LibOS - executada em nível de usuário; LibOS - pode ser modificada ou substituída; Aplicações são executadas sobre o Exokernel e a LibOs;
Princípios Alocação – aplicações alocam recursos através de chamadas explícitas; Nomes – o exokernel deve exportar as estruturas de acesso ao HW por nome para eliminar um nível de indireção; Revogação – o exokernel deve utilizar um protocolo que permita recuperar um HW específico de uma aplicação;
Exemplos de Exokernels Aegis para DECstations; Xok para PCs; Glaze para o multiprocessador Fugu;
Comparação de Aplicações UNIX
Aplicações Especializadas
Conclusões + Aumento de desempenho; + Liberdade para implementação de rotinas de acesso ao HW; + Aplicações sabem melhor que o SO como utilizar os recursos de HW; - Fazer a interface não é simples; - Requer conhecimento de HW, SW e da arquitetura na qual o SO está sendo embarcado
Referências Bibliográficas www.stanford.edu/~engler Engler, D.; Kaashoek, F.; Toole, J. “Exokernel: An Operating System Architecture for Application-Level Resource Management”. In: 15th ACM Symposium on Operating Systems, 1995.