Sistemas Operacionais

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Sistemas Operacionais
Sistemas Distribuídos
Sistemas Operacionais Aula II
Sistemas Operacionais
INTRODUÇÃO À COMPUTAÇÃO Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Parte 1: Organização de Computadores
Sistemas Operacionais
Sistemas Operacionais
Parte 1: Organização de Computadores
Sistemas Operacionais
IC - UFF Sistemas Operacionais Threads. IC - UFF Processos e threads Vimos o conceito de processo englobando duas características básicas: propriedade.
Capitulo 6: Entrada e Saída
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais - 5
Threads (Linha de execução )
Profa. Priscila Facciolli
Processos no Unix e Linux
Arquitetura de Sistemas Operacionais
Chapter 4: Threads.
Sistemas Operacionais
Sistemas Operacionais
SSC SISTEMAS OPERACIONAIS I Aulas 5 – Escalonamento de Processos
SSC SISTEMAS OPERACIONAIS I
Threads Estagiário: Bruno Guazzelli Batista Slides de autoria do Prof Drº Marcos José Santana baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum.
SSC SISTEMAS OPERACIONAIS I
SSC SISTEMAS OPERACIONAIS I Aula 4 – Conceitos Básicos
Processos Conceitos Básicos.
Estruturas de Controle
SVCs para Controle de Processos no Unix
SVCs para Controle de Processos no Unix
UNIX.
Threads.
Sistemas Operacionais I
Unidade 1-1 Processos e Threads
SISTEMAS OPERACIONAIS
Sistemas Operacionais
Sistemas Operacionais
Programação concorrente:
Sistema Operacional Processos
Processo Entidade dinâmica e efêmera
Sistemas Operacionais Profª Adriana Vettorazzo
Unidade 2 - Parte 1 Programação Concorrente
Conteúdo Processos e threads Partes do processo
IC - UFF Sistemas Operacionais 4. Threads Texto base: capítulo 4 Operating Systems: Internals and Design Principles W. Stallings.
Conceito de processos Faculdade PITÁGORAS – Agosto de 2011
Sistemas Operacionais
Processos.
Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação SISTEMAS OPERACIONAIS Aula 9 Regiane Kawasaki
Computação L1: Infra-Estrutura Básica
Prof. Alexandre Monteiro Recife
Sistemas Operacionais
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 10: Interface de Sistemas de Arquivos.
Conceitos de thread Faculdade PITÁGORAS – Outubro de 2012
Sistemas Operacionais
Prof. Werley T. Reinaldo 26/05/  Sistemas Operacionais:  Visão geral  As diferentes imagens do SO:  Visão Usuários;  Visão Projeto.  Multiprogramação;
S ISTEMAS OPERACIONAIS PROCESSOS Horácio Ribeiro.
Capítulo 4: Processos.
Sistemas Operacionais
Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads
Administração de Sistemas Operacionais 1 -Windows
Bruna Cavallero Martins Universidade Católica de Pelotas.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais Prof.: Gustavo Wagner FATEC-PB.
Transcrição da apresentação:

Sistemas Operacionais 2. Processos Texto base: capítulos 3 e 4 Operating Systems: Internals and Design Principles W. Stallings IC - UFF

O conceito de processos No capítulo 1, fizemos as seguintes afirmativas quanto aos processos: Mais geral que programa Consiste em um código executável e seus dados associados, além de um contexto de execução IC - UFF

Enfim, ... Um processo é uma abstração de um programa em execução Exemplo: fazer um bolo ... ... primeiros socorros! IC - UFF

O que esperar do SO? Alternar a execução de processos de forma a maximizar a utilização da UCP e fornecer tempo de resposta razoável Alocar recursos a processos Suportar criação de processos pelo usuário Suportar comunicação entre processos IC - UFF

Modelo simples de processo executando não- despacho pausa entra sai (a) diagrama de transição de estado UCP sai entra despacho pausa fila (b) possível implementação IC - UFF

Criando de processos O que faz o SO para criar processos? Quando cria? constrói estruturas de dados aloca espaço de endereçamento Quando cria? quando usuário abre sessão; quando gerado por outro processo (e.g., servidor de FTP); ... IC - UFF

Terminando processos Quando terminar? Algumas razões para o término: execução da instrução Halt; condições de erro; ... Algumas razões para o término: tempo excedido; falta de memória; uso de instrução privilegiada; término do processo pai; ... IC - UFF

Problema com o modelo simples Um processo que não está executando estará sempre pronto a executar? Não:  pode estar bloqueado esperando E/S!  despachante não pode simplesmente ppegar um processo que esteja na fila IC - UFF

Um modelo mais elaborado executando pronto despacho pausa admissão liberação saída novo bloqueado espera evento ocorre IC - UFF

Implementando o modelo (1) fila dos prontos despacho liberação admissão UCP pausa fila dos bloqueados espera evento evento ocorre IC - UFF

Implementando o modelo (2) UCP liberação admissão despacho pausa fila dos prontos evento 1 ocorre espera evento 1 fila evento 1 espera evento 2 fila evento 2 evento 2 ocorre IC - UFF

Implementando o modelo (3) UCP liberação admissão despacho pausa prioridade 1 espera evento 1 fila evento 1 espera evento 2 fila evento 2 prioridade 2 evento 1 ocorre evento 2 ocorre IC - UFF

O estado Suspenso O processador é muito mais rápido que E/S: todos os processos podem estar bloqueados Swapping Necessidade de novo estado: representação de processo suspenso IC - UFF

Diagrama com estado Suspenso executando pronto despacho pausa admissão liberação saída novo bloqueado espera evento ocorre suspenso ativação suspensão IC - UFF

Pensando melhor ... suspende novo admissão admissão despacho liberação ativa pronto- suspenso pronto executando saída evento ocorre suspende pausa evento ocorre espera evento ativa suspenso- bloqueado bloqueado suspende IC - UFF

O que o SO deve fazer? Em um sistema multi-tarefas, o SO deverá: escalonar e despachar processos para execução alocar recursos aos processos responder a pedidos de recursos feitos pelos programas dos usuários Como fazer? IC - UFF

Tabelas! Tabelas de memória Tabelas de E/S Tabelas de arquivos e.g., alocação de MP aos processos Tabelas de E/S e.g., estado de dispositivo de E/S Tabelas de arquivos localização de arquivos em MS Tabelas de processos e.g., lista de processos existentes IC - UFF

Controlando processos Para gerenciar processos o SO precisa conhecer: onde o processo está localizado os atributos do processo Como é representado um processo? imagem do processo: programa + dados + pilha(s) + atributos IC - UFF

Atributos do processo O conjunto dos atributos de um processo é conhecido como bloco de controle do processo (PCB, em inglês) PCB pode ser dividido em três partes: identificação do processo informação de estado do processador informação de controle do processo IC - UFF

Identificação do processo Feita por identificadores numéricos que incluem: identificador do processo identificador do processo que o criou identificador do usuário IC - UFF

Informação do processador Contida nos registradores do processador: registradores visíveis ao usuário (aqueles referenciados por programa) registradores de controle e estado (e.g., PC, códigos de condição) apontadores de pilha IC - UFF

Informação de controle (1) Estado e escalonamento, que inclue: estado do processo (e.g., pronto) nível corrente de prioridade suporte ao escalonamento (e.g., há quanto tempo o processo está esperando) evento (e.g., identificação do evento que o processo está esperando) IC - UFF

Informação de controle (2) Estruturação de dados (e.g., relação pai-filho) Comunicação entre processos (e.g., sinais) Privilégios (e.g., tipos de instruções que podem ser executadas) Gerenciamento de memória (e.g., ponteiro para tabela de páginas) Propriedade e uso de recursos (e.g., arquivos abertos) IC - UFF

Funções típicas do núcleo do SO Preliminares: O que é modo dual de operação? O que é o núcleo do SO? Funções do núcleo: gerenciamento de processos gerenciamento de memória gerenciamento de E/S funções de suporte IC - UFF

Funções típicas do núcleo do SO Preliminares: O que é modo dual de operação? O que é o núcleo do SO? Funções do núcleo: gerenciamento de processos gerenciamento de memória gerenciamento de E/S funções de suporte IC - UFF

Gerenciamento de processos (1) Funções típicas: criação e término de processos escalonamento e despacho chaveamento sincronização e suporte a IPC gerenciamento de PCBs IC - UFF

Gerenciamento de processos (2) Criação de processos atribuição de identificador único e adicionar nova linha à tabela primária de processos alocação de espaço para a imagem iniciação do PCB adicionar apontador nas listas apropriadas (e.g., lista de prontos para escalonamento) outras estruturas: e.g., arquivo de contabilização IC - UFF

Gerenciamento de processos (3) Quando chavear? interrupções relógio ( mudança de estado, escalonamento) E/S falta de memória (página ou segmento) traps: condições anormais chamada ao sistema (e.g., operação de E/S) IC - UFF

Unix: Fork #include <stdio.h> int main (int argc, char *argv[ ]) { int pid; /* criação de outro processo por fork */ pid = fork(); if (pid < 0) { /* ocorreu erro */ fprintf(stderr, "Fork falhou"); exit(-1); } else if (pid == 0) { /* processo filho */ execlp ("/bin/ls", "ls", NULL); else { /* processo pai */ /* processo pai vai esperar o filho terminar */ wait(NULL); printf("Filho terminou\n"); exit(0); IC - UFF

Gerenciamento de memória Funções típicas: alocação de espaço de endereçamento aos processos swapping gerenciamento de páginas e segmentos IC - UFF

Gerenciamento de E/S Funções típicas: gerenciamento de buffers alocação de canais e dispositivos de E/S IC - UFF

Funções de suporte Funções típicas: tratamento de interrupção monitoramento contabilidade IC - UFF

Executando o SO O SO é um programa. Ele é um processo? núcleo não é processo: conceito de processo só para programas do usuário funções executadas como processo de usuário: só há chaveamento de modo SO como conjunto de processos de sistema: funções principais do núcleo como processos IC - UFF

Núcleo separado P1 P2    Pn Núcleo IC - UFF

Funções em modo usuário P1 Funções de chaveamento de processos Funções do SO P2 Pn    IC - UFF

Como processos de sistema U1 Funções de chaveamento de processos Un Funções do SO1 do SOm    IC - UFF

Leitura suplementar Operating Systems Concepts, A. Silberschatz e P.B. Galvin, Addison-Wesley Modern Operating Systems, A.S. Tanenbaum, Prentice Hall IC - UFF