Please enable JavaScript.
Coggle requires JavaScript to display documents.
Estruturas do Sistema Operacional - Coggle Diagram
Estruturas do Sistema Operacional
Serviços do SO
Interface com o usuário
Interpretador de comandos
Shell
Um software que provê uma interface para que o usuário possa acessar o kernel
CLI
Permite a entrada direta de um comando, pode ser implementado diretamente no kernel, ou como um programa especial
GUI (
Graphic User Interface
)
Interface amigável ao usuário básico, normalmente são usados ícones e botões para representar programas e ações. Geralmente são usados mouse, teclado, monitor/tela sensivel ao toque.
Execução do Programa
Operações de E/S
Manipulação do sistema de arquivo
Comunicações
Detecção de erro
Alocação de Recursos
Contabilidade
Proteção e Segurança
Sistema
Chamadas de Sistema
Acessadas pelos programas por meio de API. A API facilita a
Portabilidade
e a
Simplicidade
Controle de Processos
Gerenciamento de arquivos
Gerenciamento de dispositivos
Manutenção de informações
Comunicações
Programas do Sistema
Fornecem um ambiente conveniente para desenvolvimento e
execução de programa
Gerenciamento de arquivo
Informação de status
Modificação de Arquivo
Suporte a linguagens de programação
Carga e execução de programa
Comunicação
Programas específicos para o SO
Programas compilados em um SO não executam em outro SO, principalmente por terem
Chamadas de SIstemas
diferentes.
Essa compatibilidade pode existir se utilizarmos linguagens interpretadas, ou linguagens que usam
Máquinas Virtuais
Projeto e Implementação do SO
Estrutura do SO
Estrura Monolítica
Sistema sem estrutura, todas as funcionalidades em um binário único. Possui alto
desempenho
Enfoque em Camadas
Sistema divido em diversos níveis. Dificil de aplicar, baixa eficiência se comparada com a
Monolítica
Microkernels
Sistema "modularizado", e o máximo possvel no espaço do usúario. Facilidade de manutenção, confiabilidade e segurança. Overhead de desempenho.
Módulos
Uso de módulos kernel carregáveis. Uma das melhores metodologias atuais, busca unir os benefícios das outras abordagens
Híbridos
Geração do SO
SYSGEN
Esse programa obtém informações do hardware no momento da instalação.
Objetivos do Usuário
Fácil de projetar, implementar e manter. Flexível confiável e sem erros
Objetivos do Sistema
Sistema conveniente, facil de usar e seguro
Implementação
Atualmente escritos em C/C++, e alguns utilizam partes de Assembly (para Drivers)
Android
O Android é um SO de código livre gerenciado pelo Google. O android é similar ao iOS no uso de camadas. Por rodar em diversos tipos de dispositivos, o Android possui um abstração do hardware, chamada de HAL -
Hardware Abstractio Layer
macOS e IOS
O macOS é compilado tanto para Intel quanto para ARM. O kernel do iOS é modificado a fim de atender as especificidades como otimização da memória RAM e o consumo ernegético. Por essas modificações o iOS possui diversas funcionalidades bloqueada, que são liberadas no macOS
Boot do SO
Kernel
Precisa estar disponível ao hardware
Bootstrap
Localiza o kernel, carrega-o na memória e o inicia
BIOS
Firmware usado para manter o código inicial de boot