A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Operacionais III – Estrutura do Sistema Operacional

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais III – Estrutura do Sistema Operacional"— Transcrição da apresentação:

1 Sistemas Operacionais III – Estrutura do Sistema Operacional
Introdução Funções do Núcleo Modo de Acesso Rotinas do S.O. e System Call Chamada a Rotinas do S.O. Linguagem de Comandos Ativação/Desativação do Sistema Arquiteturas do Núcleo

2 Introdução Conjunto de rotinas que oferece serviços aos usuários e às suas aplicações Núcleo Kernel S.O. Ferramentas que acompanham o S.O.: Utilitários Linguagens de comando

3 Rotinas do Sistema Operacional
Introdução Aplicações Utilitários Linguagem de Comando Rotinas do Sistema Operacional Hardware Usuários Kernel

4 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.;

5 Tratamento de interrupções e exceções;
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.

6 Memória Processador Dispositivos de E/S
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: Memória Processador Dispositivos de E/S Exigências: O S.O. garante a confiabilidade dos recursos concorrentes de todos os programas e dados bem como da sua integridade fazendo:

7 Compartilhamento da CPU.
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.

8 O armazenamento simultâneo em disco também é .
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.

9 3. Modo de Acesso O 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

10 Modo Kernel: Acessa o conjunto total de instruções do processador.
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.

11 4. Rotinas do S.O. (RSO) e System Call
As 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.

12 Havendo privilegio, o processo ocorre conforme figura abaixo.
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.

13 Modo Usuário Modo kernel System call Salva Contexto dos Registradores
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 System call Aplicação Rotina do S.O. Modo kernel Modo Usuário

14 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.

15 5. Chamada a Rotinas do S.O. As chamada a RSO seguem o seguinte esquema. Rotinas do S.O Núcleo do S.O. Hardware Aplicação System Call System Call  Típico do Unix System Services  OpenVMS API (Aplication Program Interface) Ms Windows

16 Exemplo: Uso da API GetSystemTime para obter a hora do MS Widows.
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.

17 As rotinas do sistema podem ser divididas por grupos de funções.
5. Chamada a Rotinas do S.O. As rotinas do sistema podem ser divididas por grupos de funções. Funções do System Call Funçõ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

18 Funções do System Call Funções System Call
5. Chamada a Rotinas do S.O. Funções do System Call Funçõ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

19 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.

20 O PROXI estabeleceu uma biblioteca padrão.
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)

21 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

22 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 Windows Comando Descrição dir Lista conteúdo do diretório cd Altera diretório default type Exibe conteúdo do arquivo del Elimina arquivos mkdir Cria um diretório ver Mostra versão do windows

23 Algoritmo de execução do comando:
6. Linguagem de Comandos Algoritmo de execução do comando: c:\>Comando O shell interpreta e verifica a sintaxe Chama as rotinas do sistema Apresenta os resultados Por não fazer parte do kernel, o interpretador de comandos é flexível.

24 Usuário Hardware Bach ou shell scripts
6. Linguagem de Comandos Usuário Linguagem de Comandos Interface Gráfica Sistema Operacional Hardware Bach ou shell scripts Possibilitam a automatização de tarefas.

25 7. Ativação/Desativação do Sistema
O 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

26 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)

27 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

28 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.

29 8. Arquiteturas do Núcleo
Projeto: O projeto do S.O. é bastante complexo para atender os seguintes requisitos: Confiabilidade Portabilidade Fácil manutenção Flexibilidade desempenho Podem ser conflitantes

30 Tempo de compartilhamento Monousuário Multiusuário Tempo real, etc
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

31 Os primeiros S.O. possuiam 1 milhão de instruções em Assembly;
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.

32 A desvantagem é que há perda de desempenho.
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:

33 Melhoria de organização das funções e recursos do sistema;
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.

34 Arquitetura Monolítica
8. Arquiteturas do Núcleo Arquitetura Monolítica Constituí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

35 Arquitetura Monolítica
8. Arquiteturas do Núcleo Arquitetura Monolítica

36 Arquitetura de Camadas
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.

37 Arquitetura de Camadas
8. Arquiteturas do Núcleo Arquitetura de Camadas

38 Cada nova camada implica na mudança do modo de acesso.
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.

39 Exemplo: maioria das versões do Unix e MS Windows
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

40 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

41 8. Arquiteturas do Núcleo
Máquina Virtual

42 Arquitetura Microkernel
8. Arquiteturas do Núcleo Arquitetura Microkernel Função Principal

43 Constituída por um núcleo menor e mais simples.
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

44 É um modelo cliente servidor.
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.

45 O fim....O fim


Carregar ppt "Sistemas Operacionais III – Estrutura do Sistema Operacional"

Apresentações semelhantes


Anúncios Google