Componentes do Sistema operacional

20
UFRPE/EAD Licenciatura em Computação-6P 2011.1 Tutor: Rodrigo Lins Rodrigues Componentes do Sistema operacional Aula 2

Transcript of Componentes do Sistema operacional

Page 1: Componentes do Sistema operacional

UFRPE/EADLicenciatura em Computação-6P

2011.1Tutor: Rodrigo Lins Rodrigues

Componentes doSistema operacional

Aula 2

Page 2: Componentes do Sistema operacional

2

Agenda

Introdução;

Modelos de processo;

Algoritmo de escalonamento;

Sistemas de arquivos;

Thread

Tipos de sistemas;

Page 3: Componentes do Sistema operacional

Introdução

Sistema operacional Software que gerencia todos os recursos da

máquina Responsável por criar uma interface entre os seus

usuários e o hardware.

Para que essas funções sejam desempenhadas,

são necessários um conjunto de componentes padrão, que estão presentes em todos os sistemas operacionais.

Page 4: Componentes do Sistema operacional

Modelo de Processos

Processo Programa em execução;

Contém o programa executável, os dados do programa e a sua pilha de execução.

Cada processo possui: Espaço de endereçamento (localização) em

memória (principal)

Page 5: Componentes do Sistema operacional

Modelo de Processos

O conceito de processo foi criado devido à multiprogramação Em SOs monoprogramados a memória é

dividida entre SO e único programa em execução

Com multiprogramação a memória é dividida entre SO e

diversos processos

Page 6: Componentes do Sistema operacional

Algoritmo de Escalonamento

Algoritmo (componente do SO) que controla como os processos ocuparão a CPU em sistemas de tempo compartilhado.

Decide qual o próximo processo a ocupar a CPU;

Decide a quantidade de tempo em que processo ocupaCPU;

Page 7: Componentes do Sistema operacional

Estados do Processo

(Novo) Programa escolhido para ser executado

(Pronto) Preparado para executar, aguardando a liberação da CPU

(Em execução) Em execução, utilizando a CPU

(Suspenso) Em suspensão, aguardando operação de I/O

(Entrada/Saída) (concluído)

Processo finalizado. Será destruído pelo SO e recursos liberados.

Page 8: Componentes do Sistema operacional

Transição entre Estados

“Em execução” para “ Em espera”: Ocorre quando um processo descobre que não pode continuar pois está

esperando por um evento.

“Em execução” para “ Pronto”: Ocorre quando o escalonador decide que o processo em execução atuou

por tempo suficiente e permite que outro processo em execução tenha algum tempo da CPU.

“Pronto” para “Em execução”: Ocorre quando todos os outros processos tiveram sua fatia justa e é hora

daquele que estava pronto voltar para a CPU para executar novamente.

Em espera” para “Pronto”: Ocorre quando acontece o evento externo pelo qual o processo está

esperando acontecer. Se nenhum outro processo está executando nesse instante, a transição será ativada imediatamente e o processo começará a executar..

Page 9: Componentes do Sistema operacional

Eventos de processos

Criam processos Início do sistema; Chamada de Sistema de criação de processo por

um processo em execução; Requisição do usuário para criação de um novo

processo;

Finalizam processos Saída voluntária; Erro fatal; Cancelamento por outro processo, etc.

Page 10: Componentes do Sistema operacional

Comunicação Interprocessos

Pode ser feita através de troca de mensagens ou compartilhamento de recursos;

Pipe tipo de pseudo-arquivo que pode ser utilizado

para conectar dois processos

Page 11: Componentes do Sistema operacional

Thread (Linha de Execução)

Tradicionalmente um processo possui uma única linha de execução;

Sistemas modernos possuem suporte a múltiplas linhas de execução em um único processo;

As threads também podem assumir os mesmos estados de um processo;

Cada thread possui contador de programa, registradores e o seu próprio estado.

Page 12: Componentes do Sistema operacional

Thread (Linha de Execução)

Page 13: Componentes do Sistema operacional

Sistema de Arquivos

SO utiliza uma unidade de armazenamento lógico de dados denominado arquivo;

Sistema de arquivos: Estrutura criada com o objetivo de permitir

operações de criação, acesso e modificação a dados organizados na forma de arquivos.

Page 14: Componentes do Sistema operacional

Estrutura do SO

Sistemas Monolíticos;

Sistemas em Camadas;

Máquinas Virtuais;

Modelo Cliente-Servidor;

Modelo MicroKernel.

Page 15: Componentes do Sistema operacional

Sistemas Monolíticos

Estrutura mais comum e antiga possuindo vários módulos com diferentes funções trabalhando em conjunto;

S.O é escrito como uma coleção de procedimentos, que podem chamar qualquer um dos outros procedimentos sempre que for necessário;

A principal vantagem dessa arquitetura é a eficiência, uma vez que existe comunicação direta entre os componentes do S.O.

Page 16: Componentes do Sistema operacional

Sistemas em Camadas

Organizado como uma hierarquia de níveis e cada um construído sobre o nível imediatamente abaixo.

Page 17: Componentes do Sistema operacional

Sistemas em Camadas

As principais vantagens dessa estrutura de S.O são:

Modularidade SO realiza suas operações de forma modular

Abstração Uma camada não precisa conhecer como os

serviços da camada inferior foram construídos, bastando apenas conhecer a sua interface.

Page 18: Componentes do Sistema operacional

Máquinas Virtuais

São compostos por um monitor de máquina virtual que executa no hardware básico e faz a multiprogramação, oferecendo várias máquinas virtuais;

Dentre as principais vantagens: A proteção aos recursos do sistema, não havendo,

portanto, problemas de segurança, pois cada máquina virtual é completamente isolada das outras.

Exemplos: Máquina virtual JAVA e VirtualBox

Page 19: Componentes do Sistema operacional

Modelo Cliente-Servidor

Tendência em mover código para camadas mais altas, removendo o máximo de funções do S.O, objetivando a minimização do seu núcleo (kernel);

Um processo é considerado cliente, se ele requisita alguma coisa a outro processo. Um processo é servidor quando ele

disponibiliza algum serviço a outros processos. Modelo é completamente adaptável ao uso em

sistemas distribuídos.

Page 20: Componentes do Sistema operacional

Sistema de Microkernel

O máximo de código do kernel é movido para o espaço do “usuário” e a comunicação acontece entre os módulos do usuário através da troca de mensagens;

Serviços do S.O, tais como, gerência de arquivos, gerência de memória e escalonamento são disponibilizados como processos do S.O, a nível de usuário