Escalonamento no Linux e no Windows NT/2000/XP

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

Download "Escalonamento no Linux e no Windows NT/2000/XP"

Transcrição

1 Escalonamento no Linux e no Windows NT/2000/XP 1

2 Escalonamento no Linux Os requisitos do escalonador do Linux eram: Apresentar boa performance em programas interativos, mesmo com carga elevada; Distribuir de maneira justa o tempo da CPU; Ser eficiente em máquinas SMP (Symmetric Multi Processor); Possuir suporte para tempo real. 2

3 Escalonamento no Linux Cada processo possui uma prioridade, que é recalculada dinamicamente. O escalonador entrega a CPU para o processo que possui a maior prioridade. O escalonador é preemptivo. 3

4 Escalonamento no Linux O Linux considera dois tipos de processos: processos interativos (time-sharing) processos tempo real Para processos interativos (dentro da mesma prioridade) o algoritmo é Round Robin. Para processos de tempo real (dentro da mesma prioridade) o algoritmo pode ser: FCFS (o processo executa até terminar ou se bloquear) ou Round Robin Processos de tempo real possuem prioridade sobre os demais processos. 4

5 Escalonamento no Linux Nas versões que antecederam a 2.6, o escalonador apresentava 2 problemas: 1) o tempo de execução do escalonador aumentava com o aumento do número de processos no sistema; 2) O escalonador usava uma ready list global em máquinas SMP 5

6 Escalonamento no Linux Primeiro problema (overhead): Cada processo possui uma prioridade, baseada em uma prioridade básica (Nice) e em seu comportamento em tempo de execução. Uma vez selecionado, o processo ganha a CPU por uma fatia de tempo. Quando o time-slice esgota, o processo é marcado como expirado. O escalonador seleciona o processo não expirado com a maior prioridade. Quando todos os processos estão expirados, o escalonador recalcula a prioridade de todos e então seleciona o próximo a rodar. O problema era este recálculo de prioridades: aumentando o número de processos no sistema, aumenta o tempo necessário para o escalonador recalcular as prioridades. (Para aplicações com um número muito grande de processos, este tempo penalizava enormemente o desempenho do sistema) 6

7 Escalonamento no Linux Segundo problema (uma única ready list global nas máquinas SMP). Neste caso, os problemas são de duas naturezas: 1) a necessidade de acesso mutuamente exclusivo à ready list por parte dos processadores. Se um processador está acessando a ready list, os demais necessitam esperar até que a mesma seja liberada. Para um número elevado de processadores este bloqueio dos processadores pode ocasionar uma queda considerável no desempenho do sistema. 2) considere um processo bloqueado esperando uma operação de E/S; quando termina a E/S, o processo é recolocado na ready list global e pode ser executado por um processador diferente daquele no qual estava rodando previamente. Isto acontecendo, dados do processo porventura existentes em caches não poderão mais ser usados, influenciando negativamente na performance. 7

8 Escalonamento no Kernel 2.6 As principais características do escalonador 2.6 são: Tempo constante de execução para selecionar um processo para rodar, independentemente do número de processos; Boa performance com programas interativos mesmo com o sistema sobrecarregado; Eficiente em máquinas SMP; Afinidade de processador, com uma fila de aptos para cada processador; Suporte a tempo real. 8

9 Escalonamento no Kernel 2.6 (Em máquinas SMP, existe uma fila de aptos para cada CPU) Fila de Aptos Ativos Prioridade 1... P2 P5... Pn Prioridade 140 P6 P2... Pk Expirados Prioridade 1 P2 Thread de migração Quando o array Ativos se torna vazio, o array Expirados passa a ser o ativo, com uma simples troca de apontadores. 9

10 Escalonamento no Kernel 2.6 O escalonador possui 140 níveis de prioridade (quanto menor o número, maior é a prioridade). Prioridades de 1 a 100 são para processos de tempo real; de 101 a 140 para os demais processos de usuário (interativos ou não interativos). Nos níveis de prioridade 101 a 140, os processos recebem fatias de tempo de 20 ms. Os processos de tempo real podem ser FIFO ou Round Robin, e possuem uma prioridade estática. Processos FIFO executam até voluntariamente liberarem a CPU (o nível de prioridade é mantido e não são preemptados). Processos Round Robin recebem fatias de tempo. Quando todos terminam suas fatias, é dada outra fatia e eles continuam rodando no mesmo nível de prioridade. A prioridade dos processos de usuário é a soma de sua prioridade básica (valor de seu nice) e seu bonus dinâmico, que varia de +5 a 5. 10

11 Cálculo da prioridade dos processos de usuário O escalonador classifica os processos em interativos e não interativos, pela observação de seu comportamento. Interativos são aqueles que ficam bloqueados por longos períodos, esperando por I/O, executam rapidamente e ficam novamente esperando por I/O. O escalonador calcula a média de tempo bloqueado de um processo e a utiliza para calcular o bônus do processo. A idéia é aumentar a prioridade de processos interativos (I/O bound) e diminuir a prioridade de processos não interativos (CPU bound). 11

12 Thread de migração Em cada processador roda uma thread de migração, cuja função é movimentar processos de um processador para outro. Como existe uma ready list por processador, a idéia é evitar que processadores fiquem ociosos enquanto outros estão sobrecarregados. A thread de migração é chamada periodicamente, a cada tick do relógio, e também explicitamente quando o sistema fica desbalanceado. 12

13 Escalonamento de E/S no Linux No Linux, as operações READ são síncronas e bloqueantes (pois existe a suposição de que o processo que executou a operação necessita dos dados para continuar), enquanto as operações WRITE são assíncronas e nãobloqueantes. Por este motivo, as operações de leitura possuem prioridade em relação às operações de escrita. As requisições de E/S são ordenadas, de acordo com o cilindro a ser acessado, de forma a minimizar o deslocamento do braço do disco. Para evitar postergação indefinida, para cada requisição é atribuído um deadline de atendimento. O escalonador 2.6 implementa duas políticas: política de deadlines e política antecipatória. 13

14 Política de deadlines O escalonador implementa duas filas: fila READ com deadline de 500 ms e fila WRITE com deadline de 5 seg (portanto, o tempo limite de atendimento de um processo depende da fila em que ele se encontra) As requisições são inseridas nas filas apropriadas (READ ou WRITE), na posição correspondente a sua requisição (cilindro a ser acessado). O escalonador atende as requisições, seguindo a ordem das filas. Se um deadline expira, o escalonador dispara a requisição seguindo a ordem da fila, garantindo a execução das requisições cujo deadline expirou. Esta política assegura que as operações de posicionamento dos cabeçotes (seek) são minimizadas (pela classificação das requisições) e o deadline garante que não haverá postergação indefinida de requisições. Outro aspecto importante é o aumento da interatividade, que resulta da atribuição de deadline menor e da priorização das operações READ. 14

15 Política antecipatória O escalonamento antecipatório tenta antecipar futuras operações de leitura. Para isso, mantém algumas estatísticas sobre os processos. Quando um READ se completa, o escalonador não executa a próxima requisição da fila, mas espera 6 ms por uma nova requisição do mesmo processo. Se ocorrer, a mesma será atendida. Para muitas aplicações, esta espera (6 ms) evita inúmeras operações de posicionamento dos cabeçotes (seek). Se o processo não executa outra operação READ, este tempo é perdido. 15

16 Escalonamento no sistema operacional Windows NT/2000/XP Um processo pode ser formado por um conjunto de threads. A thread é a unidade de execução para o sistema operacional. Cada processo possui pelo menos uma thread, a thread primária, a qual é criada quando o processo é carregado para execução. Alguns processos criam outras threads, de maneira a explorar o paralelismo da execução. Cada thread possui sua própria pilha de execução, seu contexto de execução (representado pelos registradores da CPU) e sua prioridade. A memória alocada para um processo é proporcional ao número de threads que o processo possui. 16

17 Escalonamento de threads No Windows 2000/XP o escalonador utiliza múltiplas filas e os processos interativos (I/O bound) possuem prioridade sobre os CPU bound. O escalonamento é baseado em prioridades. Cada thread possui uma prioridade, que varia de 0 a 31 (0 é a menor e 31 a maior). A prioridade 0 é atribuída a uma thread especial, chamada zero thread, que é responsável por zerar as páginas livres no sistema. Somente esta thread pode receber a prioridade 0. As prioridades definem duas classes de threads: Real time: prioridades de 16 a 31; Normal: prioridades de 0 a 15. Existe ainda uma classe especial chamada idle, a de mais baixa prioridade. Threads nesta classe somente executam quando não existem outras threads aptas (portanto, threads dessa classe não interferem na performance não causam overhead). 17

18 Fila de aptos no Windows 2000/XP Prioridades T4 Tempo Real 29 T7 T T9 14 T5 T1 Normal 1 0 idle 18

19 Escalonamento de threads O escalonador escolhe sempre a thread de maior prioridade. As threads da classe real time executam até terminar ou se bloquear. As threads com prioridade normal (0 a 15) recebem fatias de tempo. no sistema Windows 2000 professional, a fatia de tempo é de 20 ms (para favorecer a interatividade). no Windows 2000 Server, a fatia é de 120 ms (para gerar menos trocas de contexto). Cada thread recebe uma prioridade base ao ser criada. Para os processos de tempo real (prioridade entre 16 e 31) esta prioridade não se altera. Processos com prioridade entre 0 e 15 têm a prioridade ajustada em tempo de execução: Processos que retornam de operações de I/0 recebem um bônus de aumento, que depende do periférico (ex. 1 para disco e 6 para teclado). Após operações de sincronização, os processos também recebem um aumento de prioridade, dependendo da natureza do processo. 19

20 Escalonamento em máquinas SMP Durante a instalação do kernel, se é detectada a presença de mais de um processador, é carregado o suporte ao multiprocessamento. Independentemente de haver um único processador ou vários, vai existir somente uma fila de processos aptos (e a estrutura é aquela já vista). Porém, a existência de múltiplos processadores vai permitir o paralelismo físico na execução das threads. Se existem N processadores, o escalonador garante que as N threads de mais alta prioridade estejam em execução nesses processadores. O Windows 2000 implementa o conceito de afinidade, que define o processador onde a thread deve executar. A afinidade pode ser: Hard indica a existência de uma dependência que obriga a thread a rodar sempre no processador específicado Soft o sistema tenta executar a thread no processador que ela havia ocupado previamente, para aproveitamento de dados da execução anterior que podem se encontrar em cache (o que implica em ganho de performance). 20

Gerência do Processador

Gerência do Processador Andrique Amorim www.andrix.com.br professor@andrix.com.br Gerência do Processador Desenvolvimento web II IMPORTANTE SABER Desenvolvimento web II DEADLOCK (interbloqueio, blocagem, impasse) Situação em

Leia mais

4. GERÊNCIA DE PROCESSADOR (Escalonamento de processos)

4. GERÊNCIA DE PROCESSADOR (Escalonamento de processos) 4. GERÊNCIA DE PROCESSADOR (Escalonamento de processos) Para implementar o compartilhamento da CPU entre diversos processos, um sistema operacional multiprogramável deve possuir um critério para determinar,

Leia mais

Sistemas Operacionais. Escalonamento de Processo. Prof. Dr. Márcio Andrey Teixeira

Sistemas Operacionais. Escalonamento de Processo. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Escalonamento de Processo Prof. Dr. Márcio Andrey Teixeira Quando um computador é multiprogramado, ele muitas vezes tem variados processos que competem pela CPU ao mesmo tempo; Essa

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Introdução Multiprogramação Permite a execução de diversos processos concorrentemente Maior

Leia mais

Gerência do Processador

Gerência do Processador Andrique Amorim www.andrix.com.br professor@andrix.com.br Gerência do Processador Gerência do Processador No gerenciamento dos processos serão definidas as propriedades dos processos em execução, e a maneira

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais GERÊNCIA DO PROCESSADOR MACHADO/MAIA: CAPÍTULO 08 Prof. Pedro Luís Antonelli Anhanguera Educacional Gerenciamento do Processador A gerência do processador pode ser considerada a atividade

Leia mais

Gerência de processos Requisitos fundamentais

Gerência de processos Requisitos fundamentais Requisitos fundamentais Implementar um modelo de processo. Implementar facilidades para criação e destruição de processos por usuários Alocar recursos a processos Intercalar a execução de um número de

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sumário 2 a edição Revisão: Fev/2003 Sistemas Operacionais Gerência do processador Capítulo 4 Implementação do conceito de processos e threads Escalonamento Escalonadores não -preemptivos Escalonamento

Leia mais

Gerência de processos Estudos de caso - BSD Unix

Gerência de processos Estudos de caso - BSD Unix Gerência de processos Estudos de caso - BSD Unix Escalonamento preemptivo com prioridades dinâmicas Prioridades entre 0 e 127 0 a 49 kernel 50 a 127 usuário 32 filas de pronto Processos executando em modo

Leia mais

Capítulo 4 Gerência do Processador. O que sabemos é uma gota, o que ignoramos é um oceano. Isaac Newton

Capítulo 4 Gerência do Processador. O que sabemos é uma gota, o que ignoramos é um oceano. Isaac Newton Universidade Federal de Itajubá UNIFEI Instituto de Engenharia de Sistemas e Tecnologias da Informação IESTI CCO 004 Sistemas Operacionais Prof. Edmilson Marmo Moreira 4.1 Introdução Capítulo 4 Gerência

Leia mais

Gerência de Processador

Gerência de Processador Gerência de Processador Prof. Edwar Saliba Júnior Junho de 2009 Unidade 03-003 Gerência de Processador 1 Introdução Com o surgimento dos sistemas multiprogramáveis, onde múltiplos processos poderiam permanecer

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência do processador 2 a edição Capítulo 4 Revisão: Fev/2003 Sumário Implementação do conceito de processos e threads Escalonamento Escalonadores não -preemptivos Escalonamento

Leia mais

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Gerência do Processador

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Gerência do Processador Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Gerência do Processador A partir do momento em que diversos processos podem

Leia mais

Processos e Threads (partes I e II)

Processos e Threads (partes I e II) Processos e Threads (partes I e II) 1) O que é um processo? É qualquer aplicação executada no processador. Exe: Bloco de notas, ler um dado de um disco, mostrar um texto na tela. Um processo é um programa

Leia mais

Programação Concorrente Processos e Threads

Programação Concorrente Processos e Threads Programação Concorrente Processos e Threads Prof. Eduardo Alchieri Processos O conceito mais central em qualquer sistema operacional é o processo Uma abstração de um programa em execução Um programa por

Leia mais

Capítulo 4 Gerência de Processador

Capítulo 4 Gerência de Processador DCA-108 Sistemas Operacionais Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Capítulo 4 Gerência de Processador Luiz Affonso Guedes 1 Luiz Affonso Guedes 2 Conteúdo Caracterização de

Leia mais

Escalonamento de processos

Escalonamento de processos Escalonamento de processos Adriano J. Holanda http://holanda.xyz 24/8/2015 Conceitos básicos Políticas Processos limitados por E/S x processador E/S processos limitados por E/S gastam a maior parte do

Leia mais

Escalonamento de CPU 2 Quadrimestre

Escalonamento de CPU 2 Quadrimestre BC1518-Sistemas Operacionais Escalonamento de CPU 2 Quadrimestre de 2010 (aula 05) Prof. Marcelo Z. do Nascimento marcelo.nascimento@ufabc.edu.br Roteiro Conceito Despachante Critérios de escalonamento

Leia mais

Gerência de Processador

Gerência de Processador Gerência de Processador mbientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Multiprogramação Torna mais eficiente o aproveitamento dos recursos computacionais

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura

Leia mais

Sistemas Operacionais Processos e Threads

Sistemas Operacionais Processos e Threads Sistemas Operacionais Processos e Threads Prof. Marcos Monteiro, MBA http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br 1 Estrutura de um Sistema Operacional 2 GERÊNCIA DE PROCESSOS Um processo

Leia mais

Sistemas Operacionais. Roteiro. Tipos de Tarefas (temporal) Marcos Laureano

Sistemas Operacionais. Roteiro. Tipos de Tarefas (temporal) Marcos Laureano Sistemas Operacionais Marcos Laureano 1/28 Roteiro Tipos de Tarefas Preempção Escalonamento de processos Tipos de escalonamentos 2/28 Tipos de Tarefas (temporal) Tarefas de tempo real Previsibilidade em

Leia mais

GERENCIAMENTO DO PROCESSADOR. Prof. Maicon A. Sartin

GERENCIAMENTO DO PROCESSADOR. Prof. Maicon A. Sartin GERENCIAMENTO DO PROCESSADOR Prof. Maicon A. Sartin Introdução Em sistema multiprogramáveis a UCP é compartilhada entre diversos processos Existem critérios para determinar a ordem de escolha para a execução

Leia mais

Prof. Antonio Torres antonioctorres@gmail.com @_antonioctorres. Fundamentos de Sistemas Operacionais UNIP/2015

Prof. Antonio Torres antonioctorres@gmail.com @_antonioctorres. Fundamentos de Sistemas Operacionais UNIP/2015 Prof. Antonio Torres antonioctorres@gmail.com @_antonioctorres Fundamentos de Sistemas Operacionais UNIP/2015 Disciplinas FUNDAMENTOS DE SISTEMAS OPERACIONAIS Horários Quarta-feira Fundamentos de Sistemas

Leia mais

Máquinas virtuais. Máquina virtual de um processo. Máquinas virtuais (3) Máquina virtual de sistema. Máquinas virtuais (1) VMware para Windows e Linux

Máquinas virtuais. Máquina virtual de um processo. Máquinas virtuais (3) Máquina virtual de sistema. Máquinas virtuais (1) VMware para Windows e Linux System API Máquinas virtuais System ISA (Instruction Set Architecture) Aplicações Chamadas ao sistema Sistema de Operação Hardware User ISA (Instruction Set Architecture) Uma máquina virtual executa software

Leia mais

03 GERÊNCIA DO PROCESSADOR

03 GERÊNCIA DO PROCESSADOR 03 GERÊNCIA DO PROCESSADOR 3.1 Introdução Em sistemas multiprogramáveis múltiplos processos podem permanecer na memória principal compartilhando o uso da CPU. Como diversos processos podem estarem estado

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Questões Em uma rede de sobreposição (overlay), mensagens são roteadas de acordo com a topologia da sobreposição. Qual uma importante desvantagem

Leia mais

Algoritmos de Escalonamento

Algoritmos de Escalonamento Na aula anterior lgoritmos de Escalonamento Marcelo Johann Threads Sincronização Semáforos ula : Slide ula : Slide Plano da aula de Hoje. FIFO. SJF. Prioridade. Round-Robin 5. Múltiplas Filas 6. Garantido

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Processos e Threads Andreza Leite andreza.leite@univasf.edu.br Plano de Aula 2 Gerenciamento de Processos Threads Aplicações com múltiplas Threads Concorrência e Compartilhamento

Leia mais

Capítulo 2. Processos e Threads. Processos e threads

Capítulo 2. Processos e Threads. Processos e threads Capítulo 2 Processos e Threads 1 Processos e threads 1. Processos 2. Threads 3. Comunicação inter processos (IPC) 4. Problemas clássicos de IPC 5. Escalonamento (Scheduling) 2 1 Processos: O modelo de

Leia mais

Introdução a Computação 07 Sistemas operacionais. Márcio Daniel Puntel marcio.puntel@ulbra.edu.br

Introdução a Computação 07 Sistemas operacionais. Márcio Daniel Puntel marcio.puntel@ulbra.edu.br Introdução a Computação 07 Sistemas operacionais Márcio Daniel Puntel marcio.puntel@ulbra.edu.br O que é? Pra que serve? Onde se usa? Como funciona? O que é? Uma coleção de programas Inicia e usa do HW

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Módulo 1 - GERÊNCIA DE PROCESSOS Antes de abordarmos os temas específicos relacionados a Sistemas Operacionais Abertos é necessário revisarmos a teoria da disciplina Sistemas Operacionais, onde o Universitário

Leia mais

Sistemas Operativos I

Sistemas Operativos I Sistemas Operativos I Escalonamento Fevereiro de 2006 Sumário Conceitos básicos Critérios de escalonamento Algoritmos de escalonamento Escalonamento multi-processador Escalonamento em tempo real 2 1 Conceitos

Leia mais

Máquina de estados UNIX O

Máquina de estados UNIX O Estruturas Processos de Controle (Aula 5) Aula Interrupções Profa. Patricia Gerência fluxo, execução D. O Abstração passada Criação podendo de gerar hw e transição sw (mudança de CostaLPRM/DI/UFES que

Leia mais

Máquina de estados UNIX O. Sistemas Operacionais 2008/1Profa. Patricia S.O. computação: recursos D. S.O S.O. controla eventos no sistema de

Máquina de estados UNIX O. Sistemas Operacionais 2008/1Profa. Patricia S.O. computação: recursos D. S.O S.O. controla eventos no sistema de Estruturas Processos de Controle (Aula 5) Aula Interrupções Profa. Patricia Gerência fluxo, execução D. O Abstração passada Criação podendo de gerar hw e transição sw (mudança de CostaLPRM/DI/UFES que

Leia mais

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola SO - Conceitos Básicos Introdução ao Computador 2010/01 Renan Manola Definição de SO É uma camada de software que opera entre o hardware e os programas aplicativos voltados ao usuário final. É uma estrutura

Leia mais

Sistema Operacional Correção - Exercício de Revisão

Sistema Operacional Correção - Exercício de Revisão Prof. Kleber Rovai 1º TSI 22/03/2012 Sistema Operacional Correção - Exercício de Revisão 1. Como seria utilizar um computador sem um sistema operacional? Quais são suas duas principais funções? Não funcionaria.

Leia mais

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron alexandre.a.giron@gmail.com Sistemas Operacionais 2014 Introdução Alexandre Augusto Giron alexandre.a.giron@gmail.com Roteiro Sistemas Operacionais Histórico Estrutura de SO Principais Funções do SO Interrupções Chamadas de Sistema

Leia mais

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 06: Threads Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Objetivos Introduzir o conceito de thread Discutir as APIs das bibliotecas de threads Pthreads, Win32

Leia mais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Gerenciamento de processos Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO 1 Conceitos Básicos Máxima utilização da CPU obtida com

Leia mais

Servidores de Aperiódicas

Servidores de Aperiódicas Referências J.-M. Farines, J. da S. Fraga, R. S. de Oliveira. Sistemas de Tempo Real. Escola de Computação 2000, IME-USP, São Paulo-SP, julho/2000. Capítulo 2 Sistemas de Tempo Real: Servidores de Aperiódicas

Leia mais

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura 4-1 - Exemplo

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura 4-1 - Exemplo 4 PROCESSOS Os primeiros sistemas operacionais permitiam que apenas um processo fosse executado por vez. Dessa maneira, este processo tinha todo o sistema computacional a sua disposição. Os atuais sistemas

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br

Leia mais

Projeto de Sistemas de Tempo Real

Projeto de Sistemas de Tempo Real Projeto de Sistemas de Tempo Real Centro de Informática - Universidade Federal de Pernambuco Engenharia da Computação Kiev Gama kiev@cin.ufpe.br Slides elaborados pelo professor Marcio Cornélio O autor

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Prof. Jó Ueyama Apresentação baseada nos slides da Profa. Kalinka Castelo Branco, do Prof. Dr. Antônio Carlos Sementille e da Profa. Dra. Luciana A. F. Martimiano e nas transparências

Leia mais

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Memória Secundária. Prof. Valeria M. Bastos 18/06/2012 Prof. Antonio Carlos Gay Thomé

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Memória Secundária. Prof. Valeria M. Bastos 18/06/2012 Prof. Antonio Carlos Gay Thomé UFRJ IM - DCC Sistemas Operacionais I Unidade IV Gerência de Memória Secundária Prof. Valeria M. Bastos 18/06/2012 Prof. Antonio Carlos Gay Thomé 1 ORGANIZAÇÃO DA UNIDADE Gerência de Entrada e Saída Gerência

Leia mais

3) Considerando a tabela abaixo, usando a política de atribuição de prioridades Deadline Monotonic:

3) Considerando a tabela abaixo, usando a política de atribuição de prioridades Deadline Monotonic: ANÁLISE DO TEMPO DE RESPOSTA 1) Considere as equações utilizadas para calcular o tempo de resposta no pior caso de uma tarefa em sistemas de prioridades fixas. Podem essas equações serem aplicadas sem

Leia mais

Sistemas Operacionais. Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias

Sistemas Operacionais. Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias Sistemas Operacionais Microsoft Windows R Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias Histórico Início da década de 80 MS-DOS (vai evoluindo, mas sem nunca deixar de ser um SO orientado à linha

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais O que se espera de um sistema de computação? Execução de programas de usuários Permitir a solução de problemas Sistema Operacional (SO) é um programa colocado entre o hardware do

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Organização e Arquitetura de Computadores MemóriaVirtual Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Gerência de memória convencional Divide um programa em unidades menores Partes

Leia mais

O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados.

O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados. O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados. A multiprogramação tem como objetivo permitir que, a todo instante, haja algum processo

Leia mais

O texto desta seção foi publicado em http://msdn.microsoft.com/ptbr/library/ms177433.aspx. o http://msdn.microsoft.com/pt-br/library/ms178104.

O texto desta seção foi publicado em http://msdn.microsoft.com/ptbr/library/ms177433.aspx. o http://msdn.microsoft.com/pt-br/library/ms178104. AULA 12 - Deadlocks Em alguns casos pode ocorrer a seguinte situação: um processo solicita um determinado recurso e este não está disponível no momento. Quando isso ocontece o processo entra para o estado

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução 2 a edição Revisão: Fev/2003 Sistemas Operacionais Windows 2000 Capítulo 10 Objetivo de desenvolver um sistema operacional multitarefa para ser usado tanto em ambientes monousário como multiusuário

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I UFRJ IM - DCC Sistemas Operacionais I Unidade II - Threads 24/04/2014 Prof. Valeria M. Bastos 1 ORGANIZAÇÃO DA UNIDADE Threads Processos Threads Conceituação Descrição e Imagem de uma Thread Tipos de thread

Leia mais

Tempo Real 7/4/2010. Aula 10. Engenharia de Sistemas Embarcados

Tempo Real 7/4/2010. Aula 10. Engenharia de Sistemas Embarcados Agenda Aula 10 Engenharia de Sistemas Embarcados Prof. Abel Guilhermino Tópico: Sistemas de Tempo Real Conceitos Gerais Processos de Tempo Real Periódico, Aperiódicos e Esporádicos Escalonamento de Tempo

Leia mais

ARQUITETURA DE COMPUTADORES E SISTEMAS OPERACIONAIS P/ CONCURSOS PÚBLICOS FOCO: ESAF/CESGRANRIO/FCC. Prof. Almeida Jr

ARQUITETURA DE COMPUTADORES E SISTEMAS OPERACIONAIS P/ CONCURSOS PÚBLICOS FOCO: ESAF/CESGRANRIO/FCC. Prof. Almeida Jr ARQUITETURA DE COMPUTADORES E SISTEMAS OPERACIONAIS P/ CONCURSOS PÚBLICOS FOCO: ESAF/CESGRANRIO/FCC Prof. Almeida Jr Processos Conceitos Básicos Nomes Tipos Batch: jobs CPU-bound T.Sharing: Tarefas/Processos

Leia mais

Aula 2 Modelos computacionais

Aula 2 Modelos computacionais Sistemas de Tempo-Real Aula 2 Modelos computacionais Modelos de tarefas com restrições temporais explícitas Controlo lógico e temporal (por eventos -ET e por tempo -TT) Adaptado dos slides desenvolvidos

Leia mais

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO LABORATÓRIO DE SISTEMAS OPERACIONAIS PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO Sistemas Operacionais Conteúdo retirado de: SOsim: SIMULADOR PARA O ENSINO DE SISTEMAS OPERACIONAIS Luiz Paulo Maia

Leia mais

Mecanismo de Interrupção

Mecanismo de Interrupção Mecanismo de Interrupção Paralelismo de Operação Num sistema multiprogramado a CPU está sempre apta a compartilhar o seu tempo entre os vários programas e os diferentes dispositivos periféricos que necessitam

Leia mais

SISTEMAS OPERACIONAIS. Apostila 01 Assunto: Tipos de Sistemas Operacionais UNIBAN

SISTEMAS OPERACIONAIS. Apostila 01 Assunto: Tipos de Sistemas Operacionais UNIBAN SISTEMAS OPERACIONAIS Apostila 01 Assunto: Tipos de Sistemas Operacionais UNIBAN 2.0 - INTRODUÇÃO Os tipos de sistemas operacionais e sua evolução estão intimamente relacionados com a evolução do hardware

Leia mais

Introdução aos Sistemas

Introdução aos Sistemas Introdução Introdução aos Sistemas Operacionais 1 2 3... n Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Compilador Editor de texto Browser Programas

Leia mais

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos

Leia mais

Sistemas Operacionais

Sistemas Operacionais Andrique Amorim www.andrix.com.br professor@andrix.com.br Classificação dos Sistemas Operacionais Classificação Os sistemas operacionais podem ser classificados segundo diversos parâmetros e perspectivas.

Leia mais

Sistemas Operacionais Gerência de Dispositivos

Sistemas Operacionais Gerência de Dispositivos Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Gerência de Dispositivos Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução A gerência

Leia mais

SISTEMAS OPERACIONAIS. Prof. André Dutton

SISTEMAS OPERACIONAIS. Prof. André Dutton 1 SISTEMAS OPERACIONAIS Prof. André Dutton O OS esta ligado diretamente com o Hardware do Computador no qual ele é executado. CPU MEMORIA CONTROLAD OR DE VIDEO CONTROLAD OR DE TECLADO CONTROLAD OR DE DISCO

Leia mais

E/S PROGRAMADA E/S PROGRAMADA E/S USANDO INTERRUPÇÃO

E/S PROGRAMADA E/S PROGRAMADA E/S USANDO INTERRUPÇÃO E/S PROGRAMADA QUANDO A CPU FAZ TODO O TRABALHO RELACIONADO A UMA OPERAÇÃO DE E/S, NO CASO DO PROCESSO QUERER IMPRIMIR (NA IMPRESSORA) ABCDEFGH : ESTES CARACTERES SÃO COLOCADOS EM UMA ÁREA DE MEMÓRIA DO

Leia mais

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5 THREADS Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5.1 VISÃO GERAL Uma definição mais abrangente para threads é considerá-lo

Leia mais

Maestro. Arthur Kazuo Tojo Costa 317497. Universidade Federal de São Carlos Campus Sorocaba Bacharelado em Ciência da Computação

Maestro. Arthur Kazuo Tojo Costa 317497. Universidade Federal de São Carlos Campus Sorocaba Bacharelado em Ciência da Computação Maestro Arthur Kazuo Tojo Costa 317497 Universidade Federal de São Carlos Campus Sorocaba Bacharelado em Ciência da Computação Introdução Sistema Operacional de Redes Detalhes do hardware Multiplexação

Leia mais

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR Sistemas Operacionais INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR 1 Introdução O que se espera de um sistema de computação? Execução de programas de usuários Permitir a solução de problemas

Leia mais

Sistema Operacional. Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

Sistema Operacional. Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Sistema Operacional Processo e Threads Introdução a Processos Todos os computadores modernos são capazes de fazer várias coisas ao mesmo tempo. Enquanto executa um programa do usuário, um computador pode

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos

Leia mais

TI Básico. Sistemas Operacionais. Professor: Ricardo Quintão e-mail: rgquintao@gmail.com Site: www.rgquintao.com.br

TI Básico. Sistemas Operacionais. Professor: Ricardo Quintão e-mail: rgquintao@gmail.com Site: www.rgquintao.com.br TI Básico Sistemas Operacionais Professor: Ricardo Quintão e-mail: rgquintao@gmail.com Site: www.rgquintao.com.br Objetivos dos Sistemas Operacionais Esconder a Complexidade do Hardware. Devido a grande

Leia mais

Gerenciador de Entrada/Saída

Gerenciador de Entrada/Saída Universidade Federal do ABC BC 1518 - Sistemas Operacionais (SO) Gerenciador de Entrada/Saída (aula 11) Prof. Marcelo Zanchetta do Nascimento Roteiro Princípios básicos de hardware de E/S; Operações dos

Leia mais

Slide. ! Multiprocessamento! Modelo de processo. Dep. Ciência da Computação. Slide. ! Alternância de processos. ! Relação Programa x Processo

Slide. ! Multiprocessamento! Modelo de processo. Dep. Ciência da Computação. Slide. ! Alternância de processos. ! Relação Programa x Processo Parte II - Sistemas Operacionais Cap. 2 - Processos (1) Prof. Marcelo Moreno moreno@ice.ufjf.br Processos - Motivação! Necessidade de gerenciamento dos programas instanciados para execução! Multiprogramação

Leia mais

Arquitetura de Computadores. Sistemas Operacionais IV

Arquitetura de Computadores. Sistemas Operacionais IV Arquitetura de Computadores Sistemas Operacionais IV Introdução Multiprogramação implica em manter-se vários processos na memória. Memória necessita ser alocada de forma eficiente para permitir o máximo

Leia mais

Sistemas Operacionais. Alexandre Meslin meslin@inf.puc-rio.br

Sistemas Operacionais. Alexandre Meslin meslin@inf.puc-rio.br Sistemas Operacionais Alexandre Meslin meslin@inf.puc-rio.br Ementa Apresentação do curso Cap1 - Visão Geral Cap2 - Conceitos de Hardware e Software Cap3 - Concorrência Cap4 - Estrutura do Sistema Operacional

Leia mais

Capítulo 2 Processos e Threads Prof. Fernando Freitas

Capítulo 2 Processos e Threads Prof. Fernando Freitas slide 1 Capítulo 2 Processos e Threads Prof. Fernando Freitas Material adaptado de: TANENBAUM, Andrew S. Sistemas Operacionais Modernos. 3ª edição. Disponível em: http://www.prenhall.com/tanenbaum_br slide

Leia mais

Capítulo 5 Gerência de Dispositivos

Capítulo 5 Gerência de Dispositivos DCA-108 Sistemas Operacionais Luiz Affonso Guedes www.dca.ufrn.br/~affonso affonso@dca.ufrn.br Capítulo 5 Gerência de Dispositivos Luiz Affonso Guedes 1 Luiz Affonso Guedes 2 Conteúdo Caracterização dos

Leia mais

Integrating Multimedia Applications in Hard Real-Time Systems. Introdução - CM são sensíveis a delay e variação no delay (Jitter)

Integrating Multimedia Applications in Hard Real-Time Systems. Introdução - CM são sensíveis a delay e variação no delay (Jitter) Integrating Multimedia Applications in Hard Real-Time Systems Introdução - CM são sensíveis a delay e variação no delay (Jitter) - WCET para CM não é uma abordagem interessante. WCET >> Tempo médio de

Leia mais

Usuários. Aplicativos e programas dos usuários. Kernel gerenciamento de processos, memória, sistema de arquivos, I/O, etc.

Usuários. Aplicativos e programas dos usuários. Kernel gerenciamento de processos, memória, sistema de arquivos, I/O, etc. 1 1.0 Kernel O kernel (núcleo) representa o coração do Sistema Operacional. Atribuições do kernel: - gerenciamento dos arquivos em disco; - inicializar programas e executá-los; - alocar e gerenciar memória

Leia mais

Estudo de Caso 2: Windows Vista

Estudo de Caso 2: Windows Vista Faculdades Integradas de Mineiros Curso de Sistemas de Informação Sistemas Operacionais II Estudo de Caso 2: Windows Vista Grupo 4 Helder / Wagner / Frantyeis Junho/2010 O Windows usa uma estratégia Just-In-Time

Leia mais

Capítulo 8 Arquitetura de Computadores Paralelos

Capítulo 8 Arquitetura de Computadores Paralelos Capítulo 8 Arquitetura de Computadores Paralelos Necessidade de máquinas com alta capacidade de computação Aumento do clock => alta dissipação de calor Velocidade limitada dos circuitos => velocidade da

Leia mais

Prof.: Roberto Franciscatto. Capítulo 1.2 Aspectos Gerais

Prof.: Roberto Franciscatto. Capítulo 1.2 Aspectos Gerais Sistemas Operacionais Prof.: Roberto Franciscatto Capítulo 1.2 Aspectos Gerais Estrutura do Sistema Operacional Principais Funções do Sistema Operacional Tratamento de interrupções e exceções Criação e

Leia mais

Everson Scherrer Borges João Paulo de Brito Gonçalves

Everson Scherrer Borges João Paulo de Brito Gonçalves Everson Scherrer Borges João Paulo de Brito Gonçalves 1 Tipos de Sistemas Operacionais Os tipos de sistemas operacionais e sua evolução estão relacionados diretamente com a evolução do hardware e das

Leia mais

Imagem retirada de documentações de treinamentos oficiais INTEL

Imagem retirada de documentações de treinamentos oficiais INTEL O que é Hyper-Threading (HT)? Hyper-Threading (HT) é uma tecnologia existe nos processadores que visa explorar com mais eficiência o uso da CPU, o grande foco desta tecnologia é evitar ociosidade de processamento

Leia mais

7 Processamento Paralelo

7 Processamento Paralelo 7 Processamento Paralelo Yes, of course, who has time? Who has time? But then if we do not ever take time, how can we ever have time? (The Matrix) 7.1 Introdução Classificação de Sistemas Paralelos Diversas

Leia mais

Apresentação da disciplina. Sistemas Operacionais I N. A disciplina. O Professor. Áreas de atuação na pesquisa. Referências bibliográficas básicas

Apresentação da disciplina. Sistemas Operacionais I N. A disciplina. O Professor. Áreas de atuação na pesquisa. Referências bibliográficas básicas 1 Apresentação da disciplina Sistemas Operacionais I N Prof. Marcelo Johann 2009/2 O professor A disciplina Bibliografia Cronograma Avaliação Trabalhos Regras do jogo Introdução: Sistemas Operacionais

Leia mais

Estruturas do Sistema de Computação

Estruturas do Sistema de Computação Estruturas do Sistema de Computação Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Estruturas do Sistema de

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Introdução à gestão de memória Programação de Sistemas Gestão de memória : 1/16 Introdução (1) A memória central de um computador é escassa. [1981] IBM PC lançado com 64KB na motherboard,

Leia mais