Upload
ana-laura-castilhos-azeredo
View
212
Download
0
Embed Size (px)
Citation preview
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
Sistemas OperacionaisIII – ESTRUTURA DO SISTEMA OPERACIONAL
1. Introdução2. Funções do Núcleo3. Modo de Acesso4. Rotinas do S.O. e System Call5. Chamada a Rotinas do S.O.6. Linguagem de Comandos7. Ativação/Desativação do Sistema8. Arquiteturas do Núcleo
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
1. Introdução
S.O.Conjunto de rotinas que oferece serviços aos usuários e às suas aplicações
NúcleoKernel
Ferramentas que acompanham o S.O.:
UtilitáriosLinguagens de comando
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
1. Introdução
Aplicações UtilitáriosLinguagem
de Comando
Rotinas do Sistema Operacional
Hardware
USUÁRIOS
Kernel
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
2. Funções do Núcleo
Seu funcionamento é diferente de uma aplicação convencional.
• As rotinas são executadas sem ordem predefinidas, com base em eventos dissociados do tempo (eventos assíncronos);
• Muitos desses eventos estão relacionados ao hardware e a tarefas internas do próprio S.O.;
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
2. Funções do Núcleo
Principais Funções do Núcleo
• Tratamento de interrupções e exceções;• Criação e eliminação de processos e
threads;• Gerência de memória;• Gerência de sistema de arquivos;• Gerência de dispositivos de E/S;• Suporte a redes locais e distribuídas;• Contabilização do uso do sistema;• Auditoria e segurança do sistema.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
2. Funções do Núcleo .................Principais Funções do Núcleo
Para um sistema multiprogramável há problemas relativos à segurança como:Considerando a utilização de mais de um usuário utilizando os mesmos recursos:
Exigências: O S.O. garante a confiabilidade dos recursos concorrentes de todos os programas e dados bem como da sua integridade fazendo:
Memória ProcessadorDispositivos de E/S
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
2. Funções do Núcleo .................Principais Funções do Núcleo
• Compartilhamento da CPU.
• Reserva de memória para dados e códigos armazenados, implementando mecanismos de proteção.
• Para o caso em que diferentes programas compartilhem a mesma área de memória, o S.O. deve oferecer mecanismos para que a comunicação seja realizada de forma sincronizada e controlada, evitando inconsistência das informações.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
2. Funções do Núcleo .................Principais Funções do Núcleo
• O armazenamento simultâneo em disco também é .
• Para a solução de diversos problema originados pelo ambiente multiprogramável, o S. O. deve implementar mecanismos de proteção que controlem o acesso concorrente aos diversos recurso do sistema.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
3. Modo de AcessoO sistema operacional deve permanecer protegido, pois, uma vez corrompido, os processos ficarão inadequados.
Em geral os processadores possuem dois modos de acesso: Modo Usuário Modo Kernel
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
3. Modo de Acesso
Modo Usuário: é o modo não privilegiado com acesso a um número reduzido de instruções
Modo Kernel: Acessa o conjunto total de instruções do processador.
O modo de acesso é determinado no registrador de Status do processador que indica o modo de acesso corrente. Através deste registrador o hardware verifica se as instruções podem ou não ser executada.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
4. Rotinas do S.O. (RSO) e System CallAs RSO compõem o núcleo do S.O. oferecendo serviços aos usuários e suas aplicações.
Possuem instruções privilegiadas
Para que estas rotinas sejam executadas, o processador deve estar no modo kernel, exigindo mecanismos de proteção (System Call).
Toda vez que uma aplicação chama uma aplicação chama uma rotina do S.O., o mecanismo de System Call é ativado.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
4. Rotinas do S.O. (RSO) e System Call
O S.O. verifica se a aplicação possui privilégios. Em caso negativo o desvio é impedido, sinalizando a impossibilidade ao programa chamador.
Este mecanismo de proteção por software é previamente definido pelo administrador do sistema.
Havendo privilegio, o processo ocorre conforme figura abaixo.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
4. Rotinas do S.O. (RSO) e System Call
Salva Contexto dos Registradores
Altera o modo do processador para
Kernel
Altera o modo do processador para
Usuário
Restaura Contexto dos Registradores
Syste
m ca
ll
Aplicação
Rotina do S.O.
Modo kernel
Mod
o U
suár
io
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
4. Rotinas do S.O. (RSO) e System Call
Instruções privilegiadas executadas no modo usuário são bloqueadas por hardware para solicitação de acesso à disco, o mecanismo de system call verifica se a aplicação possui privilegio.
Em caso positivo, o modo usuário do processador é alterado para kernel, executa-se a rotina de acesso e posteriormente retorna-se o modo para kernel.
Os mecanismos: System Call e proteção por Hardware garantem a integridade do sistema.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
5. Chamada a Rotinas do S.O.As chamada a RSO seguem o seguinte esquema.
Rotinas do S.ONúcleo do S.O. Hardware
Aplic
ação
System Call
System Call Típico do Unix
System Services OpenVMS
API (Aplication Program Interface) Ms Windows
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
5. Chamada a Rotinas do S.O.
Exemplo: Uso da API GetSystemTime para obter a hora do MS Widows.
Função: SystemTimeToDateTime converte a hora para o formato DataHoraT do Delphi e em seguida para o formato DataTimeToStr.
GetSystemTime(SystemTime);DataHoraT:=SystemToDateTime(SystemTime);DataHoraS:=DateTimeToStr(DataHoraT);RichiEdit1.Lines.Add(DataHoraS);
A última linha exibe a data e a hora do sistema em uma janela previamente criada.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
5. Chamada a Rotinas do S.O.
As rotinas do sistema podem ser divididas por grupos de funções.
Funções do System CallFunções System Call
Gerencia de processos e threads
• Criação e eliminação de processos e threads
• Alteração das características de processos e threads
• Sincronização e comunicação entre processos e threads
• Obtenção de informações entre processos e threads
Gerencia de Memória
• Alocação e desalocação de memória
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
5. Chamada a Rotinas do S.O.
Funções do System CallFunções System Call
Gerencia de Sistemas de arquivos
• Criação e eliminação de arquivos e diretórios
• Alteração das características de arquivos e diretórios
• Abrir e fechar arquivos• Leitura e gravação de arquivos• Obtenção de informações sobre arquivos e
diretórios
Gerencia de dispositivos
• Alocação e desalocação de dispositivos• Operações de entrada e saída em
dispositivos• Obtenção de informações sobre
dispositivos
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
5. Chamada a Rotinas do S.O.
Cada S.O. possui o seu próprio conjunto de rotinas, com nomes, parâmetros e formas de ativação específicos.
A aplicação de um S.O. não são portadas diretamente para outro S.O. sem correção do programa fonte.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
5. Chamada a Rotinas do S.O.
Houve uma tentativa de padronização pelos institutos ISO (International Organization for Standardization) e IEEE (Institute of Eletrical end Eletronic Enginners) resultando em um conjunto conhecido com PROXI (Portable Operating System Interface for Unix), voltada, inicialmente, para unificação de várias versões do Unix.
O PROXI estabeleceu uma biblioteca padrão.
A maioria dos S.O.’s modernos oferece algum suporte ao padrão PROXI(Ms Windows, IBM-AIX, UP-UX, SUN=Solaris)
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
6. Linguagem de Comandos
É a linguagem que permite a comunicação do usuário de forma simples como o S.O., permitindo, portanto, a execução de tarefas simples como:
• Criar, ler e eliminar arquivos• Consultar diretório• Verificar data e hora armazenadas no
sistema
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
6. Linguagem de Comandos
Cada S.O. possui sua própria linguagem de Comandos:
• OpenVMS – DCL (Digital Command Language)• VMS da IBM – JCL (Job Control Language)• Unix – Comandos do Shell
Exemplos para comandos do MS WindowsComando Descriçãodir Lista conteúdo do diretóriocd Altera diretório defaulttype Exibe conteúdo do arquivodel Elimina arquivosmkdir Cria um diretóriover Mostra versão do windows
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
6. Linguagem de Comandos
Algoritmo de execução do comando:
c:\>Comando
Chama as rotinas do sistema
O shell interpreta e verifica a sintaxe
Apresenta os resultados
Por não fazer parte do kernel, o interpretador de comandos é flexível.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
6. Linguagem de Comandos
Usuário
Linguagem de Comandos Interface Gráfica
Sistema Operacional
HardwareBach ou shell scripts
Possibilitam a automatização de tarefas.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
7. Ativação/Desativação do SistemaO S.O. reside no HD (ou DVD ou CD ou
pendrive. É carregado no momento que se liga o
computador pelo procedimento denominado ativação do sistema (boot).
O programa boot loader é carregado endereço fixo da ROM Chama
POST(Power-On-Self-Test) – identificador dos possíveis problemas de Hardware
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
7. Ativação/Desativação do Sistema
Verifica dispositivo de armazenamento onde há um S.O. residente – não havendo, é apresentada uma mensagem de erro e a ativação é interrompida.
Sendo encontrado, um conjunto de instruções é carregado para a memória e localizado em um bloco específico (boot sector)
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
7. Ativação/Desativação do Sistema
Além da carga, executa-se arquivos de inicialização onde são especificados procedimentos de customização e configuração de hardware e software específicos para o ambiente.
S.O.
S.O.
Memória Principal
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
7. Ativação/Desativação do Sistema
A maioria dos S.O.’s possuem procedimento de desativação (shutdown) que garante a integridade do mesmo.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do NúcleoProjeto:
O projeto do S.O. é bastante complexo para atender os seguintes requisitos:
• Confiabilidade• Portabilidade• Fácil manutenção• Flexibilidade• desempenho
Podem ser conflitantes
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Projeto:Depende da arquitetura do hardware e do
tipo de sistema que se deseja construir.
• Batch• Tempo de compartilhamento• Monousuário• Multiusuário• Tempo real, etc
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Os primeiros S.O. possuiam 1 milhão de instruções em Assembly;
Evoluíram para 20 milhões de linhas de código modular em PL/I e Algol
Hoje possuem 40 milhões de linhas (Windows 2000) escrito em C/C++
As linguagens de alto nível facilitam o desenvolvimento e manutenção dos S.O. e melhoram a portabilidade.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
A desvantagem é que há perda de desempenho.
Consequentemente os devices drivers, escalonador e rotinas de tratamento de interrupção são desenvolvidos em assembly.
Tendência atual Orientação ao objeto
Benefícios:
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Benefícios:
• Melhoria de organização das funções e recursos do sistema;
• Redução do tempo de desenvolvimento;
• Maior facilidade na manutenção e extensão do sistema;
• Facilidade na implementação do modelo de computação distribuída.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura MonolíticaConstituída de vários módulos compilados
separadamente e posteriormente linkados formando um grande e único programa onde os módulos podem interagir livremente
Seu desenvolvimento e manutenção são bastante difíceis.
Exemplo: MS-DOS, primeiros Unix
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura Monolítica
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura de CamadasÉ dividida em níveis sobrepostos.
Cada camada possui um conjunto de funções que podem ser utilizadas apenas pelas camadas superiores.
Exemplo: THE (Thechnische Hogeschool Eindhoven)
construído em 1968 por Digkstra na Holanda.MULTICS e OpenVMS: possuindo camadas
concêntricas.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura de Camadas
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura de Camadas
Vantagem:• Isolar as funções do S.O.• Criar hierarquia de níveis de modo de
acesso protegendo as camadas internas.
Desvantagem: • Fraco desempenho.• Cada nova camada implica na mudança do
modo de acesso.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura de Camadas
Atualmente a maioria dos S.O.’s possuem apenas duas camadas: usuário (não privilegiada) e kernel (privilegiada).
Exemplo: maioria das versões do Unix e MS Windows
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Máquina Virtual
É um modelo virtual entre o hardware e o S.O, oferecendo uma cópia virtual do hardware, inclusive do modo de acesso.
Vantagens: • S.O.’s independentes no mesmo hardware• Segurança de acesso
Desvantagem: Complexidade
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Máquina Virtual
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura Microkernel
Função Principal
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura Microkernel
Constituída por um núcleo menor e mais simples.
Os serviços são disponibilizados através de processos onde cada um é responsável por oferecer um conjunto de funções:
• Gerência de arquivo• Gerencia de processos• Gerência de memória• Escalonamento
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional
8. Arquiteturas do Núcleo
Arquitetura Microkernel
É um modelo cliente servidor.
Cliente solicita
Servidor responde
Nesta arquitetura os servidores não possuem acesso direto a certos componentes do sistema. Apenas o núcleo executa no modo kernel.
III – Estrutura do Sistema Operacional
III – Estrutura do Sistema Operacional