Sistemas Operacionais. Sincronização: Semáforos Problema dos Leitores/Escritores

Tamanho: px
Começar a partir da página:

Download "Sistemas Operacionais. Sincronização: Semáforos Problema dos Leitores/Escritores"

Transcrição

1 Sistemas Operacionais Sincronização: Semáforos Problema dos Leitores/Escritores

2 Autoria Autores Eduardo André Mallmann 0905/96-9 João Paulo Reginatto 1530/96-0 Local Instituto de Informática UFRGS disciplina: Sistemas Operacionais II Versão: V13-1, ago C. Geyer

3 Baseado em que?? Essas transparências são baseadas na apostila do Prof. Simão Sirineo Toscani - Introdução aos Sistemas Operacionais

4 Especificação do Problema O problema de sincronização do tipo leitores/escritores surge quando vários processos acessam para: leitura ou (modo exclusivo) escrita uma mesma estrutura de dados.

5 Características do Problema Problema básico de exclusão mútua Acesso concorrente a um recurso como um arquivo Não possui os casos de sinalização do problema do produtor/consumidor Buffer cheio Buffer vazio Mas o problema de excluão mútua é mais complexo que no produtor/cosumidor

6 Processo Leitor Leitor é aquele processo que acessa mas não altera a informação. Dessa forma notamos que, podemos ter vários processos leitores utilizando ao mesmo tempo a informação compartilhada uma vez que nenhum desses processos realizará alterações na mesma.

7 Processo Escritor Por sua vez o processo escritor é aquele que acessa a informação e faz alterações na mesma. Este acesso deverá ser exclusivo a este processo já que o dado será alterado. Usualmente um leitor não poderá ler durante a escrita

8 Ausência de sinalização Leitores Se considera que sempre há algo a ler Se a leitura for sequencial, o final de arquivo é um caso normal O leitor recebe um aviso de final de arquivo Não fica bloqueado

9 Ausência de sinalização Escritores Se considera que sempre há espaço (disco,...) para acréscimo de dados Em caso mais realista O escritor recebe um aviso de overflow E não fica bloqueado

10 O exemplo No exemplo que será mostrado a seguir usaremos como informação a ser compartilhada um arquivo global, acessado por vários processos.

11 Sincronização Então a sincronização a ser implementada no acesso ao arquivo global deverá permitir que qualquer número de leitores tenha acesso a ele simultaneamente. Entretanto, qualquer processo escritor alterando o arquivo deverá ter acesso exclusivo ao mesmo.

12 Soluções Serão mostradas duas soluções para o problema A diferença entre elas é que a primeira dá prioridade aos leitores enquanto a segunda dá prioridade de acesso ao arquivo para os escritores.

13 Soluções Serão mostradas duas soluções para o problema dar prioridade significa que em certas situações especiais de concorrência, somente os processos com prioridade (grupo de) conseguirão acessar o arquivo até todo o grupo acessar o arquivo (grupo de) processos sem prioridade Esperam pelo final do 1º grupo

14 Prioridade aos leitores A primeira solução garante a prioridade de acesso aos leitores. Escritores esperam pelo final de grupo parcial de leitores Espera poderia ser infinita

15 Prioridade aos leitores Primeiro subproblema: como manter acesso exclusivo ao arquivo entre os leitores e qualquer escritor? entre os escritores?

16 Prioridade aos leitores Primeiro subproblema: como manter acesso exclusivo ao arquivo entre Solução: os leitores e qualquer escritor? entre os escritores? Um semáforo do tipo mutex

17 Prioridade aos leitores Segundo subproblema: Como, tendo um mutex entre leitores e escritores, garantir que vários leitores possam acessar o arquivo concorrente? Ao menos nas situações usuais

18 Prioridade aos leitores Segundo subproblema: Como, tendo um mutex entre leitores e escritores, garantir que vários leitores possam acessar o arquivo concorrente? Solução (idéia): Somente um leitor bloqueia os escritores (e eventualmente bloqueia os outros leitores) Novo subproblema Qual leitor?

19 Prioridade aos leitores Novo subproblema Qual leitor? Solução O primeiro Como implementar o controle do primeiro leitor?

20 Prioridade aos leitores Como implementar o controle do primeiro leitor? Solução: Através de um contador de leitores O primeiro leitor executa a primitiva P(mutex) Concorre com os escritores Os outros não executam P(mutex) Não concorrem com os escritores se o 1º ganhou Como e quando liberar o acesso aos escritores?

21 Prioridade aos leitores Como e quando liberar o acesso aos escritores? Solução: O último leitor libera o acesso aos escritores Executando a primitiva V(mutex) Se não houver último leitor (sempre há um novo leitor concorrente)?

22 Prioridade aos leitores Se não houver último leitor (sempre há um novo leitor concorrente)? Ou os grupos de leitores não são intercalados por períodos sem leitor Solução Os escritores podem morrer de fome As operações sobre o contador de leitores necessitam de sincronização?

23 Prioridade aos leitores As operações sobre o contador de leitores necessitam de sincronização? Resposta: sim; mais um semáforo do tipo mutex seção crítica somente entre leitores Quando um escritor estiver escrevendo, o que deve ocorrer com novos leitores que pedem leitura?

24 Prioridade aos leitores Quando um escritor estiver escrevendo, o que deve ocorrer com novos leitores que pedem leitura? Resposta: devem ficar bloqueados Onde? Mutex entre leitores e escritores? Ou mutex do contador de leitores? Ou um novo mutex?

25 Prioridade aos leitores Onde? Mutex entre leitores e escritores? Ou mutex do contador de leitores? Ou um novo mutex? Resposta: mutex do contador de leitores Observação: O primeiro leitor está em...?

26 Prioridade aos leitores Implementação Serão utilizadas as seguintes variáveis: duas variáveis semáforas: mutex e ambas inicializadas em 1. exclusão mútua uma variável inteira nl inicializada em 0 que contará o número de processos leitores acessando o arquivo.

27 Implementação Abaixo mostramos o (pseudo) código que cada processo (leitor ou escritor) deve executar. Semáforo mutex, e initial (1, 1) Integer nl initial 0 P(mutex) nl:= nl+1 if nl = 1 then P(e) V(mutex) Lê P(mutex) nl := nl-1 if nl = 0 then V(e) V(mutex) Leitor P(e) Escreve V(e) Escritor

28 Comentários sobre o código Agora o código apresentado será comentado: Procedimento do Leitor: P(mutex) variável nl esta chamada faz com que apenas um leitor altere a nl := nl+1 incrementa nl, número de leitores ativos if nl = 1 then P(e) se for o primeiro leitor a ter acesso, bloqueia o acesso por escritores V(mutex) libera o acesso de leitores à variável nl Depois de executar estas instruções o leitor tem acesso ao arquivo global. Observação: P(mutex) bloqueia novos leitores quando...

29 Comentários sobre o código Após ler o arquivo o leitor executa estas instruções: P(mutex) variável nl novamente faz com que apenas um leitor altere a nl := nl-1 decrementa nl, número de leitores ativos if nl = 0 then V(e) se for o último leitor a deixaro o arquivo, libera o acesso por escritores V(mutex) libera o acesso de leitores à variável nl

30 Comentários sobre o código No processo escritor são executadas as seguintes instruções P(e) faz com que o escritor tenha acesso exclusivo ao arquivo Escreve no arquivo V(e) libera o acesso ao arquivo

31 Resumo da solução Prioridade aos leitores Escritores podem morrer de fome Quando há sempre ao menos 1 leitor lendo Grupo infinito 1 semáforo tipo lock entre escritores Também bloqueia 1º leitor 1 contador de leitores -> 1º leitor 1 semáforo tipo lock entre leitores Acesso ao contador

32 Exercícios Questão A) na situação de 1 ou mais leitores lendo, onde escritores ficam bloqueados? Questão B) na situação de 1 escritor escrevendo, onde os leitores ficam bloqueados (considere 2 ou mais leitores)? Questão C) quando 1 escritor termina sua escrita e leitores e escritores estão esperando, quem prossegue?

33 Solução 2: prioridade aos escs. Essa segunda solução garante a prioridade de acesso aos escritores. Requisitos Anteriores Múltiplos leitores concorrentes 1 único escritor escrevendo Novo Enquanto houver escritores em um lote de escritores concorrentes : leitores ficam bloqueados

34 Solução 2: prioridade aos escs. Serão utilizadas as seguintes variáveis: uma variável inteira ne, inicializada em zero, para contar o número de processos que esperam para escrever no arquivo ne = 1 um está escrevendo e nenhum está esperando ne = 2: um escrevendo e um esperando duas variáveis semáforas mx e l, inicializadas em 1 mx: acesso exclusivo a ne l: fila de leitores caso haja escritores escrevendo Similar ao controle de 1º leitor, agora para 1º escritor

35 Solução 2: prioridade aos escs. Serão utilizadas as seguintes variáveis: Além das varíaveis da solução anterior mutex e nl para controle da quantidade de leitores e para exclusão mútua na escrita

36 Implementação da sol. 2 P(l) P(mutex) nl := nl+1 if nl = 1 then P(e) V(mutex) V(l) Lê P(mutex) nl := nl-1 if nl = 0 then V(e) V(mutex) Semáforo mutex, e initial (1, 1) Integer nl initial 0 Integer ne initial 0 Semáforo mx, l initial (1,1) Escritor Leitor P(mx) ne := ne+1 if ne = 1 then P(l) V(mx) P(e) Escreve V(e) P(mx) ne := ne-1 if ne = 0 then V(l) V(mx)

37 Comentários sobre o código Leitor (1): P(l) tenta obter permissão de leitor (sobre escritores) P(mutex) restringe acesso à variável nl nl := nl+1 incrementa número de leitores ativos if nl = 1 then P(e) se for primeiro leitor ativo bloqueia escritores V(mutex) libera acesso a nl V(l) libera semáforo leitor; notar que escritores bloqueados Depois de executar estas instruções o processo lê o arquivo A parte interna ao mutex é idêntica à da solução anterior

38 Comentários sobre o código Leitor (2): Depois da leitura do arquivo são estas instruções que o processo executa: P(mutex) faz com que apenas um leitor altere a variável nl nl := nl-1 decrementa nl, número de leitores ativos if nl = 0 then V(e) se for o último leitor a terminar a leitura, libera o acesso por escritores V(mutex) libera o acesso de leitores a variável nl Como vemos esta parte do código é idêntica ao outro algoritmo.

39 Comentários sobre o código Escritor : P(mx) V(mx) P(e) faz com que apenas um escritor altere a variável ne ne := ne+1incrementa número de escritores na fila de espera if ne = 1 then P(l) se for o primeiro escritor, fecha semáforo de leitores Altera arquivo V(e) P(mx) V(mx) libera semáforo da variável ne fecha semáforo de escritor abre semáforo de escrita fecha semáforo para alteração de ne ne := ne-1 decrementa número de escritores na fila if ne = 0 then V(l) se processo estava escrevendo, libera leitura libera acesso a ne

40 Comentários Como podemos ver o raciocínio utilizado nesta solução é similar ao usado na solução anterior para leitores, agora tratando de bloquear os processos leitores no 1º escritor

41 Comentários Como evitar que leitores continuamente concorrentes bloqueiem todos os escritores? Solução: Um novo semáforo l, inicializado em 1 (aberto) Fechado (P(l)) pelo primeiro escritor de um lote de escritores concorrentes Aberto (V(l)) pelo último escritor do lote Esse semáforo, quando fechado, bloqueia todos os leitores

42 Comentários Observação uso semáforos de bloqueio Semáforo e (escritores) em escritores Tipo seção crítica na escrita Semáforo l em leitores Somente controle de blocos de leitores separados pelo 1º escritor de bloco de escritores Se não há escritores, cada leitor abre e fecha Sem efeito

43 Comentários Note ainda que esta solução não garante prioridade absoluta para os escritores. Consideremos a situação de ne =1: lote de um (1) único escritor com 5 leitores na fila do semáforo l. Após a escrita o último escritor do lote muda ne para 0 e libera o 1º leitor em l e mais tarde surge um novo escritor (novo lote)

44 Comentários Neste caso, o novo escritor deverá esperar os leitores acabarem a leitura para poder acessar o arquivo. Importante: somente os leitores que já estavam em espera em l antes da chegada do novo escritor No nosso exemplo, 5 leitores Somente se semáforo com fila FIFO

45 Exercício Exercício A: No caso do exemplo com 5 leitores obtendo o direito de leitura após o fim do lote atual (finito) de escritores e considerando que durante a leitura, surja um novo escritor Explique como fica a fila (prioridade) entre (mais) leitores e escritores? Obs: considere semáforos com fila FIFO

46 Prioridade total aos escritores? Então, para os escritores obterem prioridade total para os escritores poderíamos criar um semáforo mz inicializado em 1 e colocar operações P(mz) e V(mz), respectivamente antes de P(r) e depois de V(r), no código dos leitores. Desta maneira a fila do semáforo r passará a ter no máximo um processo leitor.

47 Conclusão Aqui acaba este mini-curso. Nele foi apresentado o problema dos leitores/escritores assim como duas soluções para este problema utilizando o conceito de semáforos. Esperamos que esses conceitos lhe tenham sido úteis.

48 Exercícios Exercício A) Escreva o código da 3a solução sugerida nos últimos slides (mais o semáforo mz) Analise seu comportamento; por exemplo, é possível haver vários leitores concorrentes? Justifique. Exercício B) Porque é necessário manter o semáforo e sobre os escritores com contador associado (nl) na solução prioridade aos escritores?

49 Revisão Problema dos leitores/escritores Caracterize os leitores Caracterize os escritores Qual a diferença na questão de acesso a recurso comum com relação ao problema dos produtores/consumidores? Quais as diferenças nas questões de exceção com relação ao problema dos produtores/consumidores?

50 Revisão Como resolver o problema de acesso concorrente entre escritores? Como garantir acesso concorrente entre leitores mas evitar entre os leitores e os escritores? Algum outro semáforo é necessário? Tipo? Motivo? Explique a prioridade aos leitores

51

Problema dos Leitores/Escritores

Problema dos Leitores/Escritores Sincronização: Semáforos Problema dos Leitores/Escritores Autores Eduardo André Mallmann 0905/96-9 João Paulo Reginatto 1530/96-0 Local Instituto de Informática UFRGS disciplina: Sistemas Operacionais

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto

Sistemas Operacionais. Prof. André Y. Kusumoto Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Fundamentos Paradigma do produtor-consumidor Sincronização de Processos Produtor while (count == BUFFER_SIZE) ; //no-op //adiciona

Leia mais

Problema do Produtor -Consumidor. Solução por semáforos

Problema do Produtor -Consumidor. Solução por semáforos Problema do Produtor -Consumidor Solução por semáforos Autoria Autores alunos da disciplina SO II Local Instituto de Informática UFRGS Versão v7 agosto de 2008 por C. Geyer Visão geral do assunto...2 Conceito...3

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto

Sistemas Operacionais. Prof. André Y. Kusumoto Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Semáforos Sincronização de Processos Um semáforo é uma estrutura de dados que consiste em um número inteiro e em uma fila Seu

Leia mais

Sistemas Distribuídos Aula 5

Sistemas Distribuídos Aula 5 Sistemas Distribuídos Aula 5 Aula passada Sincronização Race condition Região crítica Locks Algoritmo de Peterson Aula de hoje Atomicidade test-and-set Locks revisitado Semáforos Dois problemas Atomicidade

Leia mais

Sistemas Operacionais: Sincronização entre processos

Sistemas Operacionais: Sincronização entre processos Sistemas Operacionais: Sincronização entre processos Sincronização Programa concorrente Executado por diversos processos Acesso concorrente a dados Paralelismo real x Paralelismo aparente Multiprocessadores:

Leia mais

LabSO Gerência de Processos. Retrospectiva da aula passada... Na aula passada... Na aula passada...

LabSO Gerência de Processos. Retrospectiva da aula passada... Na aula passada... Na aula passada... LabSO Gerência de Processos Retrospectiva da aula passada... AULA 4 Flávia Maristela (flavia@flaviamaristela.com) Romildo Martins (romildo@romildo.net) Na aula passada... Processos Estados do processo

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais I Índice 2 Processos... 1 2.2.5 Semáforos... 1 2.2.6 Monitores... 2 2.2.7 Passagem de Mensagens... 5 2 Processos 2.2.5 Semáforos Para resolver este problema, Dijkstra propôs em 1965

Leia mais

Semáforos. Gerenciamento de Recursos I

Semáforos. Gerenciamento de Recursos I Semáforos O problema dos leitores/escritores, apresentado a seguir, consiste em sincronizar processos que consultam/atualizam dados em uma base comum. Pode haver mais de um leitor lendo ao mesmo tempo;

Leia mais

Threads e Sincronização no Linux

Threads e Sincronização no Linux Threads e Sincronização no Linux MCTA026-13 - Sistemas Operacionais Emilio Francesquini e Fernando Teubl Ferreira e.francesquini@ufabc.edu.br / fernando.teubl@ufabc.edu.br 2019.Q1 Centro de Matemática,

Leia mais

Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação

Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação SISTEMAS OPERACIONAIS Aula 7 Regiane Kawasaki kawasaki@ufpa.br Slides adaptados da Profa. Sarita Mazzini Bruschi

Leia mais

Prof. Silvana Rossetto 9 de julho de DCC/IM/UFRJ

Prof. Silvana Rossetto 9 de julho de DCC/IM/UFRJ Computação Concorrente (MAB117) Gabarito Segunda Prova Prof. Silvana Rossetto 9 de julho de 2015 1 DCC/IM/UFRJ Questão 1 (2,5 pts) O código Java abaixo implementa uma solução para o problema do barbeiro

Leia mais

Semáforos. Gerenciamento de Recursos I

Semáforos. Gerenciamento de Recursos I Semáforos O problema dos leitores/escritores, apresentado a seguir, consiste em sincronizar processos que consultam/atualizam dados em uma base comum. Pode haver mais de um leitor lendo ao mesmo tempo;

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 6: Monitores, Troca de Mensagens e Deadlock Diego Passos Última Aulas Mecanismos de Exclusão Mútua Operações atômicas. Protocolos de controle de acesso. Spin-locks.

Leia mais

INE5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA - Prova 1 12/05/2014 Aluno: Bosco

INE5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA - Prova 1 12/05/2014 Aluno: Bosco INE5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA - Prova 1 12/05/2014 Aluno: Bosco 1. Um servidor acessa as variáveis i e j. O servidor oferece duas operações para seus clientes: read(i) retorna o valor de i

Leia mais

Programação Orientada a Objetos. Concorrência

Programação Orientada a Objetos. Concorrência Programação Orientada a Objetos Concorrência Cristiano Lehrer, M.Sc. Níveis de concorrência: Introdução Nível de instrução de máquina: Executando duas ou mais instruções de máquina simultaneamente. Nível

Leia mais

Sincronização de Processos (2)

Sincronização de Processos (2) Sincronização de Processos (2) Tipos de Soluções (cont.) Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software com busy wait Variável de bloqueio Alternância

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Processos - Parte 2 Prof. Dr. Fábio Rodrigues de la Rocha (Processos - Parte 2) 1 / 33 (Processos - Parte 2) 2 / 33 (Processos - Parte 2) 3 / 33 (Processos - Parte 2) 4 / 33 (Processos

Leia mais

Comunicação entre processos

Comunicação entre processos Universidade Federal do Acre Centro de Ciências Exatas e Tecnológicas Bacharelado em Sistemas de Informação Comunicação entre processos Macilon Araújo Costa Neto macilon@ufac.br Capítulo 2 do livro do

Leia mais

Aula 6: Comunicação entre processos. Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela

Aula 6: Comunicação entre processos. Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela Aula 6: Comunicação entre processos Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela (-- motivação --) Processos em execução no sistema operacional podem ser: Independentes:

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Processos Semáforos Semáforos Mecanismo de sincronização que não requer espera ocupada Dijkstra propôs usar uma variável inteira para contar o n o de WAKEUPs para uso futuro Menos

Leia mais

Arquitetura de Computadores Sistemas Operacionais II

Arquitetura de Computadores Sistemas Operacionais II Definição de Processo Arquitetura de Computadores Sistemas Operacionais II Processo é o mesmo de Programa? Programa Estrutura estática Instruções + Dados Processo Entidade Ativa Instância de um Programa

Leia mais

Sincronização de Processos (2)

Sincronização de Processos (2) Sincronização de Processos (2) Tipos de Soluções (cont.) Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software com busy wait Variável de bloqueio Alternância

Leia mais

Sincronização e Comunicação entre Processos. Adão de Melo Neto

Sincronização e Comunicação entre Processos. Adão de Melo Neto Sincronização e Comunicação entre Processos Adão de Melo Neto 1 INTRODUÇÃO Em um sistema multitarefa os processos alternam sua execução segundo critérios de escalonamento estabelecidos pelo sistema operacional.

Leia mais

Unidade 3. Controle de Concorrência. Primitivas de Programação Concorrente Clássica

Unidade 3. Controle de Concorrência. Primitivas de Programação Concorrente Clássica Unidade 3 Controle de Concorrência Primitivas de Programação Concorrente Clássica Programação Concorrente A abstração de programação concorrente é o estudo de sequênciasde execução intercaladas, de instruções

Leia mais

O PROBLEMA DOS LEITORES E ESCRITORES LABORATORIO 1

O PROBLEMA DOS LEITORES E ESCRITORES LABORATORIO 1 O PROBLEMA DOS LEITORES E ESCRITORES LABORATORIO 1 O PROBLEMA DOS LEITORES E ESCRITORES O problema dos leitores e escritores é o próximo problema abstrato em programação concorrente que resolveremos. É

Leia mais

Sincronização e Comunicação entre Processos

Sincronização e Comunicação entre Processos Sincronização e Comunicação entre Processos Monitores/Semáforos Semáforos Mecanismos de sincronização nãoestruturados; Exige do desenvolvedor bastante cuidado, pois qualquer engano pode levar a problemas.

Leia mais

Sincronização e Comunicação entre Processos. Adão de Melo Neto

Sincronização e Comunicação entre Processos. Adão de Melo Neto Sincronização e Comunicação entre Processos Adão de Melo Neto 1 MOTIVAÇÃO 2 INTRODUÇÃO Em um sistema multiprogramado (concorrente) os processos alternam sua execução (ou seja, são executados alternadamente

Leia mais

Tipos de Soluções (cont.)

Tipos de Soluções (cont.) Sincronização de Processos (2) Tipos de Soluções (cont.) Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software com busy wait Variável de bloqueio Alternância

Leia mais

OO Engenharia Eletrônica

OO Engenharia Eletrônica OO Engenharia Eletrônica - Programação em C/C++ Slides 18: Introdução à programação multi-thread. Thread: linha de execução de um processo. Multi-thread: execução de múltiplas threads em um processo. Prof.

Leia mais

Algoritmos de escalonamento

Algoritmos de escalonamento Algoritmos de escalonamento Escalonamento de Processos Sistemas Interativos Algoritmos para Sistemas Interativos: First-Come-First-Served (FIFO) Round-Robin; Prioridade; Múltiplas Filas; Utilizam escalonamento

Leia mais

Aula 10: Escalonamento da CPU

Aula 10: Escalonamento da CPU Aula 10: Escalonamento da CPU O escalonamento da CPU é a base dos sistemas operacionais multiprogramados. A partir da redistribuição da CPU entre processos, o sistema operacional pode tornar o computador

Leia mais

Escalonamento de Processos

Escalonamento de Processos Porque é necessário escalonar? Escalonamento de s s precisam ser executados s concorrem a PU Escalonador: omponente (implementação) do sistema operacional etermina a ordem de dos baseado num algoritmo

Leia mais

SISTEMA DE ARQUIVOS DO SISTEMA OPERACIONAL

SISTEMA DE ARQUIVOS DO SISTEMA OPERACIONAL . SISTEMA DE ARQUIVOS DO SISTEMA OPERACIONAL 1. A organização de um arquivo define como os dados estão internamente organizados. Explique a organização de arquivos indexada. NA ORGANIZAÇÃO INDEXADO O ARQUIVO

Leia mais

Contato. professorluisleite.wordpress.com

Contato. professorluisleite.wordpress.com BD II Controle de Concorrência Professor: Luis Felipe Leite Contato luisleite@recife.ifpe.edu.br professorluisleite.wordpress.com Ciclo de três aulas Processamento de transações. Controle de Concorrência.

Leia mais

Programação Concorrente Locks

Programação Concorrente Locks Programação Concorrente Prof. Eduardo Alchieri Variáveis do tipo trava (lock) Lock: É um mecanismo de sincronização de processos/threads, em que processos/threads devem ser programados de modo que seus

Leia mais

Sincronização e Comunicação de/entre Processos. Na Aula Anterior... Nesta Aula. Comunicação entre Processos. Pipes 07/09/2016

Sincronização e Comunicação de/entre Processos. Na Aula Anterior... Nesta Aula. Comunicação entre Processos. Pipes 07/09/2016 GSI018 Sistemas Operacionais 07/09/2016 Sincronização e Comunicação de/entre Processos Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior...

Leia mais

Leandro Soares de Sousa (DSc.) Página: Aula 04 - desenvolvimento multithread

Leandro Soares de Sousa (DSc.)   Página:   Aula 04 - desenvolvimento multithread Tópicos Especiais Leandro Soares de Sousa (DSc.) e-mail: lsousa@id.uff.br Página: http://www.ic.uff.br/~lsousa Aula 04 - desenvolvimento multithread Mais e mais ferramentas! 2 Processos e Threads: desenvolvimento

Leia mais

LabSO Gerência de Processos. Processos. Porque eu preciso entender este assunto?

LabSO Gerência de Processos. Processos. Porque eu preciso entender este assunto? LabSO Gerência de AULA 3 Flávia Maristela (flavia@flaviamaristela.com) Romildo Martins (romildo@romildo.net) Porque eu preciso entender este assunto? Para entender como um computador consegue executar

Leia mais

Variância dos Tempos de Resposta

Variância dos Tempos de Resposta Variância dos Tempos de Resposta Rômulo Silva de Oliveira ebook Kindle, 2018 www.romulosilvadeoliveira.eng.br/livrotemporeal Outubro/2018 1 Introdução Fontes da Variância do Tempo de Resposta Variância

Leia mais

INE5645 Programação Paralela e Distribuída - Prova 1 22/10/2012 Aluno: Parte 1 Controle de Concorrência Conceitos Básicos (2,5)

INE5645 Programação Paralela e Distribuída - Prova 1 22/10/2012 Aluno: Parte 1 Controle de Concorrência Conceitos Básicos (2,5) INE5645 Programação Paralela e Distribuída - Prova 1 22/10/2012 Aluno: Parte 1 Controle de Concorrência Conceitos Básicos (2,5) 1.1 (Verdade/Falso) Itens próprios de processos são: Espaço de endereçamento,

Leia mais

Sistemas Distribuídos Aula 7

Sistemas Distribuídos Aula 7 Sistemas Distribuídos Aula 7 Aula passada Atomicidade Test-and-set Locks revisitado Semáforos Dois problemas Aula de hoje Limitação dos semáforos Monitores Variáveis de condição Semântica do signal Sincronização

Leia mais

Sincronização. Objectivos da aula de hoje

Sincronização. Objectivos da aula de hoje Sincronização Parte II Programação Concorrente Objectivos da aula de hoje Como resolver problemas mais complexos de sincronização Produtores-consumidores, leitores-escritores, jantar dos filósofos Como

Leia mais

Exclusão Mútua (mutex)

Exclusão Mútua (mutex) 2004-2017 Volnys Bernal 1 Exclusão Mútua (mutex) Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP 2004-2017 Volnys Bernal 2 Tópicos Exclusão Mútua (Mutex)

Leia mais

SOP - TADS Threads. Revisão Ultima aula. Programa em execução Cada processo têm sua própria CPU

SOP - TADS Threads. Revisão Ultima aula. Programa em execução Cada processo têm sua própria CPU SOP - TADS Threads Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Revisão Ultima aula Processos [1/3] Conceito:

Leia mais

Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação

Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação SISTEMAS OPERACIONAIS Aulas 6 Regiane Kawasaki kawasaki@ufpa.br Slides adaptados da Profa. Sarita Mazzini Bruschi

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 5: Exclusão Mútua Diego Passos Última Aula Programação Concorrente Programas compostos por mais de um processo ou thread. Pode trazer benefícios: Simplificar o

Leia mais

Programação concorrente (processos e threads)

Programação concorrente (processos e threads) Programação concorrente (processos e threads) Programação concorrente Por que precisamos dela? Para utilizar o processador completamente Paralelismo entre CPU e dispositivos de I/O Para modelar o paralelismo

Leia mais

Arquitetura de Sistemas Operativos

Arquitetura de Sistemas Operativos Arquitetura de Sistemas Operativos Sistemas Operativos 2011/2012 1 Requisitos de uma Secção Crítica Requisitos de uma Secção Crítica Antes de analisarmos as várias soluções para assegurar que um bloco

Leia mais

Alocação de Recursos. Introdução. Sistemas de Tempo Real: Introdução. Modelo de Recursos. Modelo de Recursos. Modelo de Recursos

Alocação de Recursos. Introdução. Sistemas de Tempo Real: Introdução. Modelo de Recursos. Modelo de Recursos. Modelo de Recursos Introdução Sistemas de Tempo Real: Alocação de Recursos Rômulo Silva de Oliveira Departamento de Automação e Sistemas DAS UFSC Processador é o recurso mais imtante Mais essencial Outros recursos também

Leia mais

Notas da Aula 5 - Fundamentos de Sistemas Operacionais

Notas da Aula 5 - Fundamentos de Sistemas Operacionais Notas da Aula 5 - Fundamentos de Sistemas Operacionais 1. Operações Atômicas Uma operação é dita atômica quando ela é indivisível no tempo. Em outras palavras, uma vez que a operação tenha sido iniciada,

Leia mais

6. Mostre os principais modelos de organização interna de um sistema operacional.

6. Mostre os principais modelos de organização interna de um sistema operacional. Trabalho 1 Sistemas Operacionais Embarcados Engenharia Elétrica Prof. Carlos Marcelo Pedroso 1 Problemas 1. O IBM 360 modelo 75 é cerca de 50 vezes mais rápida do que o IBM 360 modelo 30. Todavia, o tempo

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Transação e Controle de Concorrência Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características

Leia mais

Notas da Aula 10 - Fundamentos de Sistemas Operacionais

Notas da Aula 10 - Fundamentos de Sistemas Operacionais Notas da Aula 10 - Fundamentos de Sistemas Operacionais 1. Escalonadores preemptivos Escalonadores preemptivos são aqueles que têm a capacidade de interromper a execução de um processo para realizar alterações

Leia mais

Alocação de Recursos. Introdução. Sistemas de Tempo Real: Introdução. Modelo de Recursos. Modelo de Recursos. Modelo de Recursos

Alocação de Recursos. Introdução. Sistemas de Tempo Real: Introdução. Modelo de Recursos. Modelo de Recursos. Modelo de Recursos Introdução Sistemas de Tempo Real: Alocação de Recursos Rômulo Silva de Oliveira Departamento de Automação e Sistemas DAS UFSC Processador é o recurso mais imtante Mais essencial Outros recursos também

Leia mais

Estrutura deste arquivo.. Comunicação Interprocesso Parte 1 de 2 - Cap. 2. Introdução 1 CONDIÇÕES DE CORRIDA

Estrutura deste arquivo.. Comunicação Interprocesso Parte 1 de 2 - Cap. 2. Introdução 1 CONDIÇÕES DE CORRIDA Estrutura deste arquivo.. Comunicação Interprocesso Parte 1 de 2 - Cap. 2 Prof. Alexandre Beletti Ferreira 1. Condições de Corrida 2. Seções Críticas 3. Exclusão Mútua com Espera Ativa 1. Desativando Interrupções

Leia mais

Capítulo 2. Multiprogramação. Conteúdo. Objetivo. Recordando. Recordando. DCA-108 Sistemas Operacionais

Capítulo 2. Multiprogramação. Conteúdo. Objetivo. Recordando. Recordando. DCA-108 Sistemas Operacionais DCA-108 Sistemas Operacionais Capítulo 2 Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Multiprogramação Luiz Affonso Guedes 1 Luiz Affonso Guedes 2 Conteúdo Caracterização de um SO Moderno

Leia mais

Tipos de Soluções (cont.)

Tipos de Soluções (cont.) Tipos de Soluções (cont.) Sincronização de Processos: Semáforos Aula 12 Profa. Patrícia Dockhorn Costa Soluções de Hardware Inibição de interrupções Instrução TSL (apresenta busy wait) Soluções de software

Leia mais

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta? 23 Algoritmos com Repetição Nos exemplos e exercícios vistos até agora, sempre foi possível resolver os problemas com uma sequência de instruções que eram executadas apenas uma vez. Existem três estruturas

Leia mais

Aula 04. Capítulo 3 Gerência de Processos. 3.1 Conceito de Processo. 3.2 Escalonamento de Processos. 3.3 Opera ões sobre Processos

Aula 04. Capítulo 3 Gerência de Processos. 3.1 Conceito de Processo. 3.2 Escalonamento de Processos. 3.3 Opera ões sobre Processos Aula 04 Capítulo 3 Gerência de Processos 3.1 Conceito de Processo 3.2 Escalonamento de Processos 3.3 Opera ões sobre Processos 3.4 Comunica ão entre Processos 3.1 Conceito de Processo Um sistema operacional

Leia mais

SSC0640 Sistemas Operacionais I

SSC0640 Sistemas Operacionais I SSC0640 Sistemas Operacionais I 11ª Aula Threads Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A. F. Martimiano baseados no livro

Leia mais

Comunicação entre processos

Comunicação entre processos Comunicação entre processos Freqüentemente, processos precisam se comunicar com outros processos Por exemplo, em um pipeline do interpretador de comandos, a saída do primeiro processo deve ser passado

Leia mais

SISTEMAS OPERACIONAIS. TÁSSIO JOSÉ GONÇALVES GOMES

SISTEMAS OPERACIONAIS. TÁSSIO JOSÉ GONÇALVES GOMES SISTEMAS OPERACIONAIS TÁSSIO JOSÉ GONÇALVES GOMES www.tassiogoncalves.com.br tassiogoncalvesg@gmail.com CONTEÚDO PROCESSOS Fundamentos O Núcleo do Sistema Operacional Escalonamento de Processos Comunicação

Leia mais

Sistemas Operacionais. Escalonamento de processos

Sistemas Operacionais. Escalonamento de processos Sistemas Operacionais Escalonamento de processos 1 Escalonamento de Processos Sistemas Interativos Algoritmos para Sistemas Interativos: First-Come-First-Served (FIFO) Round-Robin; Prioridade; Múltiplas

Leia mais

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO Baseado nos slides de autoria de Rosely Sanches Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples Estrutura

Leia mais

Cooperação entre Processos

Cooperação entre Processos Sincronização Parte II Programação Concorrente Sistemas Operativos 2010 / 2011 Cooperação entre Processos Vários processos executam em conjunto uma ou mais tarefas, nas quais Competem por recursos Indicam

Leia mais

Só podem ser executados por uma Thread que detenha o lock do objecto

Só podem ser executados por uma Thread que detenha o lock do objecto Transferência de controle entre Threads Os métodos wait(), notify() notifyall(), da classe Object, Permitem a transferência de controlo de uma Thread para outra. Só podem ser executados por uma Thread

Leia mais

Processamento de Transações. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Processamento de Transações. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Processamento de Transações Laboratório de Bases de Dados Introdução Ambiente multiusuário vários usuários utilizam o mesmo sistema ao mesmo tempo múltiplos programas (transações) compartilham a mesma

Leia mais

Questões de Provas de Períodos Anteriores

Questões de Provas de Períodos Anteriores Sistemas Operacionais 2010/1 Questões de Provas de Períodos Anteriores 1) Dois importantes conceitos encontrados no sistema operacional Unix são: (i) modo de execução ( execution mode ); e (ii) contexto

Leia mais

Computação Avançada PARTE I

Computação Avançada PARTE I Computação Avançada Módulo (Aula Teórico-Prática) Modelação e Análise de Sistemas Computacionais Nuno Pereira npereira@dei.isep.ipp.pt Eduardo Tovar emt@dei.isep.ipp.pt TP - Módulo ; Com Resoluções PARTE

Leia mais

Retrospectiva da aula passada... Escalonamento. Na aula passada... Comunicação entre processos (-- O jantar dos filósofos --)

Retrospectiva da aula passada... Escalonamento. Na aula passada... Comunicação entre processos (-- O jantar dos filósofos --) Escalonamento Retrospectiva da aula passada... UL Flávia Maristela (flavia@flaviamaristela.com) Romildo Martins (romildo@romildo.net) Race condition Região rítica Exclusão Mútua Na aula passada... Problemas

Leia mais

Processos O conceito de processos é fundamental para a implementação de um sistema multiprogramável. De uma maneira geral, um processo pode ser entend

Processos O conceito de processos é fundamental para a implementação de um sistema multiprogramável. De uma maneira geral, um processo pode ser entend Concorrência Nos sistemas Monoprogramáveis somente um programa pode estar em execução por vez, permanecendo o processador dedicado a esta única tarefa. Os recursos como memória, processador e dispositivos

Leia mais

Unidade III Gerência de Processos

Unidade III Gerência de Processos Sistemas Operacionais Unidade III Gerência de Processos http://www.lncc.br/~lrodrigo Professor: Luis Rodrigo lrodrigo@lncc.br Página: 1 de 34 Unidade III: Gerência de Processos Conceito de Processo Materialização

Leia mais

Sincronização e comunicação entre entidades de processamento. Mutex Volnys Bernal 1. Tópicos. Exclusão Mútua (mutex) Exclusão Mútua (Mutex)

Sincronização e comunicação entre entidades de processamento. Mutex Volnys Bernal 1. Tópicos. Exclusão Mútua (mutex) Exclusão Mútua (Mutex) 2004-2013 Volnys Bernal 1 2004-2013 Volnys Bernal 2 Tópicos Exclusão Mútua (mutex) Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Exclusão Mútua () Objetivo, utilidade, requisitos

Leia mais

LEIC/LERC 2008/09 Primeiro Teste de Sistemas Operativos

LEIC/LERC 2008/09 Primeiro Teste de Sistemas Operativos Nome: Número: LEIC/LERC 008/09 Primeiro Teste de Sistemas Operativos de Novembro de 008 Duração: h0m Identifique o cabeçalho de todas as folhas da prova. O teste é resolvido no espaço dedicado ao efeito

Leia mais

Como contar o estoque. -Contagem do Estoque -Contagem Sequencial

Como contar o estoque. -Contagem do Estoque -Contagem Sequencial Como contar o estoque -Contagem do Estoque -Contagem Sequencial Zere o estoque Abra o módulo Retaguarda, clique no menu Estoque > Movimentação e abra a tela Contagem do Estoque Zere o estoque Informe a

Leia mais

Processos. Prof. Gustavo Leitão

Processos. Prof. Gustavo Leitão Processos Prof. Gustavo Leitão Campus Natal Central Disciplina Programação para Ambiente de Redes Baseada na Aula do Prof. Ricardo Valentim 5/3/2010 Objetivo da Aula 5/3/2010 PLANO DE AULA Processos Processos:

Leia mais

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO Baseado nos slides de autoria de Rosely Sanches Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples Estrutura

Leia mais

3.1. A Estratégia Utilizada

3.1. A Estratégia Utilizada 3 O BioProvider O BioProvider foi implementado com o objetivo, primeiramente, de prover dados ao BLAST realizando um gerenciamento de buffer eficiente para este e controlando também o escalonamento dos

Leia mais

Deadlocks. Sistemas Operacionais - Professor Machado

Deadlocks. Sistemas Operacionais - Professor Machado Deadlocks Sistemas Operacionais - Professor Machado 1 Deadlock - Definição Um conjunto de processos está em situação de deadlock se todo processo pertencente ao conjunto estiver esperando por um evento

Leia mais

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Estruturas de Controle - Repetição. Prof. César Melo

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Estruturas de Controle - Repetição. Prof. César Melo Algoritmos e Estruturas de Dados I IEC012 Linguagem C - Estruturas de Controle - Repetição Prof. César Melo Estruturas de Controle: Repetição Estruturas: Por condição no início Por condição no fim Por

Leia mais

Amanda Gondim de Oliveira

Amanda Gondim de Oliveira ESTRUTURAS DE REPETIÇÃO Amanda Gondim de Oliveira ESTRUTURAS DE REPETIÇÃO É comum a repetição de procedimentos para se realizar tarefas. Esse procedimentos não são repetidos eternamente, mas se encerram

Leia mais

Armazenamento em disco com uso de índices

Armazenamento em disco com uso de índices Armazenamento em disco com uso de índices Vimos até o momento árvores onde a chave aparenta ser o único objeto de interesse. Contudo, como sugere a representação de um nó, constante no slide 82, a chave

Leia mais

SOP - TADS Escalonamento de Processos

SOP - TADS Escalonamento de Processos SOP - TADS Escalonamento de Processos Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Cronograma Conceito de Escalonamento

Leia mais

Mecanismos de Sincronização com Variáveis Compartilhadas

Mecanismos de Sincronização com Variáveis Compartilhadas Mecanismos de Sincronização com Variáveis Compartilhadas Rômulo Silva de Oliveira Edição do Autor, 2018 www.romulosilvadeoliveira.eng.br/livrotemporeal Outubro/2018 1 Introdução Problema da seção crítica

Leia mais

Leandro Soares de Sousa (DSc.) Página: Parte II

Leandro Soares de Sousa (DSc.)   Página:   Parte II Tópicos Especiais em Sistemas Computacionais Leandro Soares de Sousa (DSc.) e-mail: leandro.uff.puro@gmail.com Página: http://www.ic.uff.br/~lsousa Parte II Mais e mais ferramentas! 2 Processos e Threads:

Leia mais

Professor Léo Matos TI para Concursos

Professor Léo Matos TI para Concursos Professor Léo Matos TI para Concursos Um sistema computacional é formado basicamente por hardware (física) e software (lógica). O hardware é composto por circuitos eletrônicos (processador, memória, portas

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Problemas Clássicos de Comunicação entre Processos Norton Trevisan Roman Marcelo Morandini Jó Ueyama Apostila baseada nos trabalhos de Kalinka Castelo Branco, Antônio Carlos Sementille,

Leia mais

Introdução Aplicações Concorrentes Especificação de Concorrência em Programas Problemas de Compartilhamento de Recursos Exclusão Mútua Sincronização

Introdução Aplicações Concorrentes Especificação de Concorrência em Programas Problemas de Compartilhamento de Recursos Exclusão Mútua Sincronização Sincronização e Comunicação entre Processos Introdução Aplicações Concorrentes Especificação de Concorrência em Programas Problemas de Compartilhamento de Recursos Exclusão Mútua Sincronização Condicional

Leia mais

Grupo I [7 Val] 1. Considere os seguintes 3 algoritmos de escalonamento num sistema operativo de tempo virtual:

Grupo I [7 Val] 1. Considere os seguintes 3 algoritmos de escalonamento num sistema operativo de tempo virtual: Número: Nome: LEIC/LERC 2012/13-1º Teste de Sistemas Operativos 24 de Novembro de 2011 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Justifique todas as respostas. Duração:

Leia mais

Comunicação baseada em canais de I/O e Pipelines no sistema Unix. José C. Cunha, DI-FCT/UNL

Comunicação baseada em canais de I/O e Pipelines no sistema Unix. José C. Cunha, DI-FCT/UNL Comunicação baseada em canais de I/O e Pipelines no sistema Unix José C. Cunha, DI-FCT/UNL Mecanismos de comunicação Ficheiros em disco (geridos pelo SO) Pipes (buffers geridos pelo SO) Mensagens (filas

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Slides adaptados de Prof. Dr. Marcos José Santana, Prof. Dra. Regina Helena Carlucci Santana e Sarita Mazzini Bruschi baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução Sistemas Operacionais Sincronização de processos Aula 07 Em sistemas multiprogramados há interação entre processos para comunicação, que pode ser feita via compartilhamento de memória/arquivos

Leia mais

SSC0640 Sistemas Operacionais I

SSC0640 Sistemas Operacionais I SSC0640 Sistemas Operacionais I 8ª Aula Comunicação e Sincronismo de Processos Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana

Leia mais

Sistemas de Informação. Sistemas Operacionais

Sistemas de Informação. Sistemas Operacionais Sistemas de Informação Sistemas Operacionais PROCESSOS E THREADS PARTE III SUMÁRIO 4. GERÊNCIA DO PROCESSADOR: 4.1 Introdução; 4.2 Funções Básicas; 4.3 Critérios de Escalonamento; 4.4 Escalonamentos Não-Preemptivos

Leia mais

SISTEMAS OPERACIONAIS. 2ª. Lista de Exercícios

SISTEMAS OPERACIONAIS. 2ª. Lista de Exercícios SISTEMAS OPERACIONAIS INF09344 - Sistemas Operacionais / INF02780 - Sistemas Operacionais / INF02828 - Sistemas de Programação II Prof a. Roberta Lima Gomes (soufes@gmail.com) 2ª. Lista de Exercícios Data

Leia mais

Segundo trabalho prático de implementação Sistema de reserva de assentos

Segundo trabalho prático de implementação Sistema de reserva de assentos Segundo trabalho prático de implementação Sistema de reserva de assentos 1. Descrição do problema Computação Concorrente (MAB-117) 2016/2 Prof. Silvana Rossetto 1 DCC/IM/UFRJ 17 de novembro de 2016 Um

Leia mais

Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais. QI ESCOLAS E FACULDADES Curso Técnico em Informática Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais Curso Técnico em Informática SUMÁRIO SHELL SCRIPT COM IF... 3 OPERADORES RELACIONAIS... 3 COMPARAÇÕES EM SCRIPTS... 3 MAIS OPERADORES...

Leia mais