Sistemas Operacionais Processos e Threads. Thiago Leite

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

Download "Sistemas Operacionais Processos e Threads. Thiago Leite"

Transcrição

1 Sistemas Operacionais Processos e Threads Thiago Leite <thiago.leite@udf.edu.br>

2 Processo Programa em execução Todo processo é um programa? Mais: o programa é apenas parte do estado. Menos: programas podem gerar vários processos.

3 Abstração de processo permite execução de múltiplas tarefas (multiprogramação) prevenir que um processo interfira em outro

4 Cada processo possui um espaço de endereçamento recursos de auxílio ao processo O processo e seu respectivo espaço de endereçamento chamam-se imagem do núcleo

5 Espaço de endereçamento Programa executável Dados do programa Registradores Arquivos abertos Alarmes pendentes Listas de processos relacionados

6 Segmentos de um processo Unix Pilha conjunto de instruções de uma sub-rotina Heap extensão da memória BSS (Block Memory Starting with Symbol) variáveis não inicializadas Data variáveis inicializadas Texto instruções do programa

7 Processo Unix Área de Endereçamento

8 Multiprogramação vários processos em memória vários fluxos de execução processos desconhecem o momento que serão executados apenas um contador de programa real

9 Multiprogramação Somente um processo ativo em um determinado instante

10 Sistema operacional lida com a Tabela de Processos estruturas de cada processo em execução

11 Árvore de Processos Pode criar um ou mais processos filhos Processos filhos também podem criar processos filhos

12 Árvore de Processos Relação entre processos

13 Hierarquias de processos Em Unix todos os processos compõe uma árvore com a raíz o INIT Em Windows todos os processos são iguais

14 Chamadas de sistema de gestão de processos criação e término de processos requisitar mais memória ou esperar o término de outro processo

15 Momentos em que os processos geralmente são criados Início do sistema Execução de uma chamada de sistema de criação Requisição do usuário Início de tarefa em lote (batch)

16 Processos podem ser criados em Foreground Background

17 Processos em Foreground processos sujeitos a interação do usuário usualmente processos do terminal de comandos ou GUI

18 Processos em Background daemons em Unix Disk And Execution MONitor serviços em Windows

19 Fluxo de dados para processos em Unix entrada padrão saída de saída normal entrada Processo saída com erro saída

20 Término de processo Saída normal (voluntário) Saída por erro (voluntário) Erro fatal (involuntário) Cancelamento por outro processo (involuntário)

21 Comunicação entre processos processo envia saída para entrada de outro processo dois processos solicitando o mesmo recurso um processo depende de outro para realizar uma tarefa

22 Pipe Unix Saída de um processo e entrada de outro

23 Processos em Unix PID (Process IDentifier) identificação de um processo número utilizado para manipular os processos e enviar sinais (alarmes)

24 Processos em Unix Possui um UID (User IDentifier) associado Vários UIDs podem pertencer a um GID (Group IDentification) Sistemas baseados em Unix possuem um UID especial com super-poderes.

25 Outros elementos de processos em Unix Ambiente de execução (Ex: PATH) Diretório de trabalho Instruções do programa Registradores e Pilha de instruções Heap (alocação de memória dinâmica) Descritores de arquivos Ações de sinais Bibliotecas compartilhadas Sistema de comunicação entre processos (filas de mensagens, pipes ou memória compartilhada)

26 Informações sobre Processos comando ps

27 A Tabela de Processos em sistemas Unix-like usualmente é representada por /proc Em Linux procfs é um sistema de arquivos virtual com a Tabela de Processos

28 Tabela de Processos Sistema virtual de arquivos que representa a tabela de processos

29 Significado de alguns elementos de /proc cmdline - comando e opções associados ao processo cwd - diretório de trabalho do processo. environ - variáveis de ambiente criadas pelo processo exe - executável do processo fd - descritores de arquivos utilizados maps - regiões de memória ocupadas pelo processo

30 Ciclo de vida de um processo da concepção do processo ao término

31 Estados principais de um processo Em execução (realmente usando a CPU) Pronto (executável; esperando seu momento) Bloqueado (esperando recursos)

32 Ciclo de vida de um processo Mudança possíveis de estados de um processo

33 O momento das interrupções depende do tipo de sistema a adotar Preemptivo (processos podem ser interrompidos sem consentimento) Não-preemptivo (processos que decidem o momento de parar)

34 Sistema preemptivo Escalonador (invisível ao processo) Interrupções Inicialização Bloqueio

35 Escalonador Utiliza a Tabela de Processos Manipulador de processos (process handler) Salvar registradores Alterar ponteiro da pilha Rotinas em linguagem Assembly

36 Escalonamento 1. Hardware guarda contador de programa atual 2. Hardware carrega o novo contador de programa 3. Rotinas Assembly salvam os registradores 4. Rotinas Assembly carregam novos registradores 5. Serviço de interrupção em C carrega os buffers 6. Escalonador decide quem será o próximo a executar 7. Procedimentos em C retornam comando às rotinas Assembly 8. Rotina Assembly inicia o processo atual

37 Principais métodos de escalonamento FIFO (First-In-First-Out) ou FCFS (First-Come-First-Served) primeiro a chegar em pronto é o primeiro a ser executado SJF (Shortest Jog First), SPN (Shortest Process Next) e SRT (Shortest Remaning Time) menor tarefa será executada primeiro Por prioridade processos são associados a prioridades. Processos com prioridades iguais obedecem ao FIFO. Round-Robin ou circular revezamento com preempção

38 9.2 / SCHEDULING ALGORITHMS First-come-first served (FCFS) A B C D E Round-robin (RR), q 1 Round-robin (RR), q 4 Shortest process next (SPN) Shortest remaining time (SRT) Highest response ratio next (HRRN) A B C D E A B C D E A B C D E 8 2 E FIFO ou FCFS A B C D E Exemplo de escalonamento A B C Processo Tempo de chegada Tempo de Processament o A 0 3 B 2 6 C 4 4 D 6 5

39 Algoritmo de tarefa mais curta (SJF) Processos de menor carga têm prioridade

40 D E The normalized turnaround time for process Y is way out of line compared to the Shortest process next (SPN) Shortest remaining time (SRT) A B C D E A B C D E Highest response ratio next (HRRN) Feedback q 1 Feedback q 2 i Figure 9.5 A B C D E A B C D E A B C D E Processo Tempo de chegada Exemplo de Escalonamento por SJF, SPN e SRT Exemplo de escalonamento A Comparison of Scheduling Policies Tempo de Processament o A 0 3 B 2 6 C 4 4 D 6 5 E 8 2

41 Algoritmo por Prioridade Processos de maior prioridade possuem preferencia

42 Processo B possui maior prioridade de execução P = Pronto E = Execução W = Espera Exemplo de Escalonamento por Prioridade Processos de menor prioridade apenas serão escalonados se não houver outros processos de maior prioridade

43 Algoritmo Round-Robin ou Circular Algoritmo democrático

44 C D E Round-robin (RR), q 1 Round-robin (RR), q 4 Shortest process next (SPN) Shortest remaining time (SRT) A B C D E A B C D E A B C D E A B C D E Processo Tempo de chegada Tempo de Processament o A 0 3 B 2 6 C 4 4 D 6 5 E 8 2 Highest response ratio next (HRRN) Feedback q 1 A B C D E Escalonamento Round-Robin com diferentes tempos de preempção A B C D E

45 Métodos compostos de escalonamento Fila Múltipla (Multilevel Queue) divide a fila de prontos em várias filas separadas, com base em alguma propriedade do processo. Cada fila possui seu próprio algoritmo de escalonamento Fila Múltipla com Realimentação (Multilevel Feedback Queue) identifica dinamicamente o comportamento de cada processo, ajustando assim suas prioridades de execução e mecanismos de escalonamento.

46 Algoritmo Fila Múltipla diferentes filas para diferentes tipos de processos

47 Escalonador com Fila Múltipla diferentes filas para diferentes tipos de processos podendo os processos mudarem de fila em tempo de execução

48 Tipos de processos CPU Bound Uso intensivo da CPU Poucas operações de Entrada/Saída Pode monopolizar a CPU dependendo do tipo de algoritmo de escalonamento utilizado I/O Bound Orientado a Entrada/Saída Devolve deliberadamente o uso da CPU

49 Cenários de uso da CPU grau de multiprogramação diante diferentes tipos de processos

50 Threads Miniprocessos Múltiplas atividades simultâneas Compartilhamento do espaço de endereçamento Criar threads é cem vezes mais rápido

51 Vida e Morte Processos e Threads

52 Exemplo do uso de Threads Editor WYSIWYG (What You See Is What You Get) Edição e resultado simultâneo O Microsoft Word e BrOffice.org são exemplos de editores WYSIWYG

53 Editor de texto com três Threads cada thread de forma concorrente realizando diferentes instruções dentro do mesmo processo

54 Servidor Web Multithread thread dispatcher delegando funções para threads escravas

55 Condições de corrida processos que compartilham dados ex: spool de impressão dois processos acessam a mesma região e ocasionalmente entrem em conflito ex: dois processos acham o mesmo espaço livre e gravam no local

56 Condição de corrida Dois processos incluindo arquivos a serem impressos no spool ao mesmo tempo

57 Exclusão mútua apenas um processo poderá acessar determinado recurso por vez o código de um processo que faz uso de recurso compartilhado chama-se região crítica

58 Condições para acesso a dados compartilhados dois processos nunca podem estar simultaneamente em suas regiões críticas nenhum processo fora de sua região crítica poderá bloquear outro processo nenhum processo deverá esperar eternamente por sua região crítica

59 Condição de corrida Exclusão mútua usando regiões críticas

60 Espera ociosa espera para que um processo deixe sua região crítica e possa realizar o mesmo expectativa de espera por um tempo razoável

61 Semáforos proposto por Edsger Dijkstra em 1965 utilizada em sistemas multiprogramados variável protegida para controle de recursos compartilhados

62 Operações sobre semáforos são atômicas inicialização operação wait operação signal

63 Inicialização de semáforo recebe valor inteiro indicando quantos processos poderão ter acesso simultâneo a um recursos compartilhado

64 Operação wait em semáforos decrementa o valor do semáforo se esse possuir valor 0, esse é colocado em estado de espera ociosa

65 Operação signal em semáforos se houver um processo em espera ociosa, esse é acordado se não houver processo em espera ociosa, o valor do semáforo é incrementado

66 Os processos fazem uso de uma estrutura FIFO para uso do Semáforo

67 Mutex tipo mais simples de semáforo semáforo binário, onde o recurso está disponível ou não

68 Condição de corrida Chave de Acesso ao Recurso Compartilhado com Mutex

69 Revisão Processo Concorrência Multiprogramação Espaço de endereçamento Tabela de processos Imagem do núcleo Árvore de processos Subprocessos Chamadas de sistema (system calls) Criação de processos Foreground Background PID Processos em Unix UID GID ps kill Término de processo Shell Unix Hierarquias de processos Comunicação entre processos Estados de um processo Diagrama de estados de processo Estados de um processo em Unix Escalonador Manipulador de processos Algoritmos de Escalonamento Otimização do uso da CPU Threads Condições de corrida Região crítica Semáforos Exclusão mútua Mutex

70 Laboratório Comandos Bash Shell ls - listar o conteúdo de um diretório ou informações sobre um arquivo $ ls cd - navegar entre diretórios $ cd diretorio

71 Laboratório Comandos Bash Shell cat - exibe e concatena arquivos $ cat arquivo1 arquivo2 grep - filtra uma entrada por uma string $ grep filtro arquivo

72 Laboratório Comandos Bash Shell echo - imprime uma mensagem $ echo Ola Mundo rm - remove arquivos do sistema $ rm arquivo

73 Laboratório Comandos Bash Shell sudo - solicitar execução em modo Super Usuário $ sudo comando su - autenticar-se como Super Usuário $ su

74 Laboratório Uso do pipe ( ) em Bash Shell $ cat arquivo1 arquivo2 grep filtro

75 Laboratório Comandos Bash Shell ; - finalização de um comando comando1 ; comando2 \ - continuação de um mesmo comando em várias linhas comando \ continuaçãocomando;

76 Laboratório Redirecionamento de entradas e saídas em Bash Shell < - entrada padrão comando < arquivo_com_argumentos > ou >> - saída padrão comando > arquivo_saida 2> ou 2>> - saída de erro comando 2>> arquivo_erro_apendice 2>&1 - saída padrão e de erros comando 2>&1 arquivo_saidas

77 Laboratório Comandos em Bash Shell & - execução de um comando em segundo plano (background) comando & jobs - apresenta comandos em background [1]+ Running comando & fg - traz processo novamente para o foreground fg 1 bg - leva um processo para background bg 1

78 Laboratório Comandos em Bash Shell ps - obtém informações sobre os processos do sistema ps aux kill - envia um sinal para um determinado PID kill

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads Com o conceito de múltiplos threads (multithread) é possível

Leia mais

Processos. Escalonamento de Processos

Processos. Escalonamento de Processos Processos Escalonamento de Processos Objetivos do Escalonamento Maximizar a taxa de utilização da UCP. Maximizar a vazão ( throughput ) do sistema. Minimizar o tempo de execução ( turnaround ). Turnaround:

Leia mais

Processos. Escalonamento de Processos

Processos. Escalonamento de Processos Processos Escalonamento de Processos Objetivos do Escalonamento Maximizar a taxa de utilização da UCP. Maximizar a vazão ( throughput ) do sistema. Minimizar o tempo de execução ( turnaround ). Turnaround:

Leia mais

Processos. Objetivos do Escalonamento. Políticas de Escalonamento. Algoritmos de Escalonamento. Maximizar a taxa de utilização da UCP.

Processos. Objetivos do Escalonamento. Políticas de Escalonamento. Algoritmos de Escalonamento. Maximizar a taxa de utilização da UCP. Objetivos do Escalonamento Maximizar a taxa de utilização da UCP. Processos Maximizar a vazão ( throughput ) do sistema. Minimizar o tempo de execução ( turnaround ). Turnaround: tempo total para executar

Leia mais

Processos. Aula Passada. Aula Passada (2) Ciclos de CPU e de I/O (1)

Processos. Aula Passada. Aula Passada (2) Ciclos de CPU e de I/O (1) Aula Passada Processos (Aula 6) Escalonamento de Processos O SO gerencia os recursos do sistema de computação em benefício dos processos Para isso, mantem estruturas de controles Tabelas (memória, I/O,

Leia mais

Processos. Escalonamento de Processos

Processos. Escalonamento de Processos Processos Escalonamento de Processos Objetivos do Escalonamento Maximizar a taxa de utilização da UCP. Maximizar a vazão ( throughput ) do sistema. Minimizar o tempo de execução ( turnaround ). Turnaround:

Leia mais

Escalonamento de Processos Uniprocessador

Escalonamento de Processos Uniprocessador Sistemas Operacionais Escalonamento de Processos Uniprocessador Capítulo 9 IC - UFF 1 Objetivos do Escalonamento É a chave de multiprogramação eficiente deve ser transparente ao usuário Esolher processos

Leia mais

Sistemas de Computação. Processos e escalonamento

Sistemas de Computação. Processos e escalonamento Processos e escalonamento Sistema operacional Programa que age como intermediário entre o usuário de um computador e o hardware Objetivos: Executar programas do usuário e facilitar a resolução de problemas

Leia mais

Infra-Estrutura de Software. Escalonamento

Infra-Estrutura de Software. Escalonamento Infra-Estrutura de Software Escalonamento Processos Concorrentes O Modelo de Multiprogramação Multiprogramação de quatro programas Modelo conceitual de 4 processos sequenciais, independentes Somente um

Leia mais

}Escalonamento. Parte III - Sistemas Operacionais. Cap. 2 Processos. Escalonamento de Processos. Quando escalonar? Comportamento de Processos

}Escalonamento. Parte III - Sistemas Operacionais. Cap. 2 Processos. Escalonamento de Processos. Quando escalonar? Comportamento de Processos Parte III - Sistemas Operacionais Cap. 2 Processos Prof. Marcelo Moreno moreno@ice.ufjf.br Escalonamento de Processos! Multiprogramação Diversos processos competem pela CPU Cabe ao sistema operacional

Leia mais

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período Redes de Computadores Fundamentos de Sistemas Operacionais - 2º Período PARTE III: GERÊNCIA DE RECURSOS SUMÁRIO 8. GERÊNCIA DO PROCESSADOR: 8.1 Introdução; 8.2 Funções Básicas; 8.3 Critérios de Escalonamento;

Leia mais

Sistemas Operacionais

Sistemas Operacionais ANHANGUERA Sistemas Operacionais Prof. Esp. Rafael Gross Processos Sumário Introdução Conceito de processo Estrutura do processo Estados do processo Mudanças de estado do processo Criação e eliminação

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

Definição. ? Algoritmo de Escalonamento de CPU. ? Algoritmo do S.O. que determina qual o próximo processo a ocupar a CPU

Definição. ? Algoritmo de Escalonamento de CPU. ? Algoritmo do S.O. que determina qual o próximo processo a ocupar a CPU Definição? Algoritmo de Escalonamento de CPU 6 Terminado? Algoritmo do S.O. que determina qual o próximo processo a ocupar a CPU? Executado quando ocorre estouro de Quantum ou interrupção do processo (I/O,

Leia mais

Escalonamento de Processos

Escalonamento de Processos Escalonamento de Processos Escalonamento de processos Multiprogramação visa maximizar uso da CPU Sempre que processos estão prontos disputam CPU Algoritmo de escalonamento: maneira de escolher o processo

Leia mais

Escalonamento de Processos. Estratégia de atribuição do Processador aos Processos

Escalonamento de Processos. Estratégia de atribuição do Processador aos Processos Escalonamento de Processos Estratégia de atribuição do Processador aos Processos 1. Introdução 2. Políticas de Escalonamento 3. Critérios para um bom escalonador 4. Caracterização dos escalonadores 5.

Leia mais

Redes de Computadores. INF201 - Fundamentos de Sistemas Operacionais - 2º Período

Redes de Computadores. INF201 - Fundamentos de Sistemas Operacionais - 2º Período Redes de Computadores INF201 - Fundamentos de Sistemas Operacionais - 2º Período PARTE II: PROCESSOS E THREADS SUMÁRIO 5. PROCESSO: 5.1 Introdução; 5.2 Estrutura do Processo; 5.3 Estados do Processo; 5.4

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais ESCALONAMENTO DE PROCESSOS Processos e Recursos Conceito de Escalonamento O S.O. gerencia recursos computacionais em benefício dos diversos processos que executam no sistema. A questão

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 7,8 Processos Gerência de Processos Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: Prof. José Juan Espantoso Sumário Conceito de

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

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

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software Processo Um programa em execução Gerência de Processos Contexto de Processo Conjunto de Informações para gerenciamento de processo CPU: Registradores Memória: Posições em uso E/S: Estado das requisições

Leia mais

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software Processo Um programa em execução Gerência de Processos Contexto de Processo Conjunto de Informações para gerenciamento de processo CPU: Registradores Memória: Posições em uso E/S: Estado das requisições

Leia mais

Arquitetura de Computadores Sistemas Operacionais I

Arquitetura de Computadores Sistemas Operacionais I O que é um Sistema Operacional? Arquitetura de Computadores Sistemas Operacionais I Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4 componentes

Leia mais

Sistemas de Informação. Sistemas Operacionais

Sistemas de Informação. Sistemas Operacionais Sistemas de Informação Sistemas Operacionais PROCESSOS E THREADS PARTE I SUMÁRIO 2. PROCESSO: 2.1 Introdução; 2.2 Estrutura do Processo; 2.3 Estados do Processo; 2.4 Mudanças de Estado do Processo; 2.5

Leia mais

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional Sistemas Operacionais Prof. Pedro Luís Antonelli Anhanguera Educacional Processador INTRODUÇÃO Projetado apenas para executar instruções Não é capaz de distinguir qual programa está em execução Processo

Leia mais

Sistemas Operacionais. Capítulo 5 Processos

Sistemas Operacionais. Capítulo 5 Processos Sistemas Operacionais Capítulo 5 Processos Baseado no Livro e Material de Apoio de Arquitetura de Sistemas Operacionais 3ª edição - LTC - 2004 Francis Berenger Machado Luiz Paulo Maia Cap. 5 Processo 1

Leia mais

Sistemas Operacionais Gerenciamento de Processos

Sistemas Operacionais Gerenciamento de Processos Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Gerenciamento de Processos Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução Devido

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 10 Escalonamento Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: Prof. SO José - Prof. Juan Edilberto Espantoso Silva Sumário Introdução

Leia mais

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III. Escalonamento de Processos. 24/04/2014 Prof. Valeria M. Bastos

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III. Escalonamento de Processos. 24/04/2014 Prof. Valeria M. Bastos UFRJ IM - DCC Sistemas Operacionais I Unidade III Escalonamento de Processos 24/04/2014 Prof. Valeria M. Bastos 1 ORGANIZAÇÃO DA UNIDADE Processador Escalonamento de Processos Conceituação Critérios de

Leia mais

Processo. Prof. Paulo Cesar F. de Oliveira, BSc, PhD

Processo. Prof. Paulo Cesar F. de Oliveira, BSc, PhD Prof. Paulo Cesar F. de Oliveira, BSc, PhD 1 Seção 1.1 Introdução 2 Receita do Bolo Programa (Algoritmo) Ingredientes: dados de entrada Quem prepara (confeiteiro): CPU atividade de: Ler a receita Buscar

Leia mais

Lista de Exercícios Escalonamento de CPU. 1. Considere o seguinte conjunto de processos, com o tamanho do tempo de burst de CPU dado em milissegundos:

Lista de Exercícios Escalonamento de CPU. 1. Considere o seguinte conjunto de processos, com o tamanho do tempo de burst de CPU dado em milissegundos: Lista de Exercícios Escalonamento de CPU 1. Considere o seguinte conjunto de processos, com o tamanho do tempo de burst de CPU dado em milissegundos: Tempo de Serviço Prioridade 10 3 1 1 P3 2 3 P4 1 4

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. Aula 06.

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios. Aula 06. Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Aula 06 Processos 2 1 Processos A gerência de um ambiente multiprogramável é

Leia mais

Infra-estrutura de Software. Escalonamento. Decidindo qual processo vai executar

Infra-estrutura de Software. Escalonamento. Decidindo qual processo vai executar Escalonamento Decidindo qual processo vai executar Escalonamento de processos Quando um ou mais processos estão prontos para serem executados, o sistema operacional deve decidir qual deles vai ser executado

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 do CPU

Escalonamento do CPU Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho Função: escolher qual o processo pronto que corre em seguida Invocado possivelmente aquando: interrupções

Leia mais

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 3. Escalonamento

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 3. Escalonamento Aula 3 Escalonamento Escalonamento Porque? Quando? Como? Critérios? Políticas de escalonamento Como avaliar? Referências: Capítulo 5: 5.1 a 5.3, 5.6 Porque Escalonar? Escalonamento controla compartilhamento

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO PROCESSOS PROFESSOR CARLOS MUNIZ

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO PROCESSOS PROFESSOR CARLOS MUNIZ INTRODUÇÃO À TECNOLOGIA DA PROFESSOR CARLOS MUNIZ O QUE SÃO? Definição: Entidade dinâmica que consiste num programa em execução, os seus valores correntes, informação de estado e recursos utilizados pelo

Leia mais

SSC0640 Sistemas Operacionais I

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

Leia mais

INTRODUÇÃO AOS SISTEMAS OPERACIONAIS

INTRODUÇÃO AOS SISTEMAS OPERACIONAIS INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIADO RIO GRANDE DO NORTE IFRN Disciplina: Fundamentos de Sistemas Operacionais e Sistemas Operacionais de Rede Professor: Msc. Rodrigo Ronner T. da Silva

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

Sistemas Operacionais. Entrada e Saída. Edeyson Andrade Gomes. www.edeyson.com.br

Sistemas Operacionais. Entrada e Saída. Edeyson Andrade Gomes. www.edeyson.com.br Sistemas Operacionais Entrada e Saída Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Entrada e Saída Princípios Classificação Controladores DMA Software de E/S Drivers 2 Estrutura Típica de Barramento

Leia mais

Gerenciamento de processos

Gerenciamento de processos Introdução Processo é definido como porções de programas ou programa inteiro em funcionamento na memória do computador. É o processo que utiliza os recursos do computador processador, memória para a realização

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução Sistemas Operacionais Gerência do processador (Escalonamento) Aula 05 Objetivos de um sistema operacional são: Eficiência: relação entre o uso efetivo de um recurso e a quantidade desse recurso

Leia mais

PROCESSOS. Sistemas Operacionais. Vinícius Pádua

PROCESSOS. Sistemas Operacionais. Vinícius Pádua PROCESSOS Sistemas Operacionais Processo Conceito mais importante em SO SO também é um processo Multiprogramação Relembrando Execução simultânea de vários processos CPU salta de processo em processo Ilusão

Leia mais

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Sistema Operacional Implementação de Processo e Threads O mecanismo básico para a criação de processos no UNIX é a chamada de sistema Fork(). A Figura a seguir ilustra como que o processo e implementado.

Leia mais

Processos. Adão de Melo Neto

Processos. Adão de Melo Neto Processos Adão de Melo Neto 1 Processos Introdução Para se poder controlar o uso concorrente (ao mesmo tempo) do processador, da memória e dos dispositivos de E/S, um programa deve sempre estar sempre

Leia mais

Introdução à Ciência da Informação

Introdução à Ciência da Informação Introdução à Ciência da Informação Prof. Edberto Ferneda Software 1 Software Níveis de Software Hardware Software Aplicativos Software Tipos de Software Softwares Aplicativos de Sistema (Utilitários) Finalidades

Leia mais

Davidson Rodrigo Boccardo

Davidson Rodrigo Boccardo Gerenciamento de processos Davidson Rodrigo Boccardo flitzdavidson@gmail.com Revisão Critérios de alocação: Utilização da CPU Produtividade (Throughput) Número de processos finalizados por unidade de tempo

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

Leia mais

Introdução aos Sistemas Operacionais

Introdução aos Sistemas Operacionais Introdução aos Sistemas Operacionais Prof. M.e Helber Wagner da Silva helber.silva@ifrn.edu.br Maio de 2014 Roteiro Introdução Estrutura e Funções do Sistema Operacional Sistemas Operacionais existentes

Leia mais

Instalação e Configuração de Servidores Linux Server Gerenciamento de Processos. Prof. Alex Furtunato

Instalação e Configuração de Servidores Linux Server Gerenciamento de Processos. Prof. Alex Furtunato Instalação e Configuração de Servidores Linux Server Gerenciamento de Processos Prof. Alex Furtunato alex.furtunato@academico.ifrn.edu.br Roteiro Introdução Atributos de um processo Sequência de execução

Leia mais

Escalonamento. Decidindo qual processo vai executar. Infra-estrutura de Software

Escalonamento. Decidindo qual processo vai executar. Infra-estrutura de Software Escalonamento Decidindo qual processo vai executar Escalonamento de processos Quando um ou mais processos estão prontos para serem executados, o sistema operacional deve decidir qual deles vai ser executado

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

Sistemas Operacionais. Escalonamento de Processos

Sistemas Operacionais. Escalonamento de Processos Escalonamento de Processos arliones.hoeller@ifsc.edu.br de fevereiro de baseado no material do Prof. Fröhlich em http://www.lisha.ufsc.br/~guto Gerenciamento de processos Processo É uma instância de um

Leia mais

Sistemas Operacionais. Gerência de Processador

Sistemas Operacionais. Gerência de Processador Sistemas Operacionais Gerência de Processador Sumário 1. Introdução 2. Funções Básicas do Escalonamento 3. Critérios de Escalonamento 4. Escalonamento 1. Não-Preemptivo 2. Preemptivo 5. Políticas de Escalonamento

Leia mais

Sistemas Operacionais Processos. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais Processos. Carlos Ferraz Jorge Cavalcanti Fonsêca Sistemas Operacionais Processos Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Copyright Carlos Ferraz Processo Conceito: Um programa em execução 1. Ao digitar hello, os caracteres

Leia mais

Sistemas Operacionais Escalonamento. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais Escalonamento. Carlos Ferraz Jorge Cavalcanti Fonsêca Sistemas Operacionais Escalonamento Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Copyright Carlos Ferraz Cin/UFPE Escalonamento Processos Concorrentes O modelo de multiprogramação

Leia mais

Sistemas Operacionais Aula 07: Scheduling da CPU. Ezequiel R. Zorzal

Sistemas Operacionais Aula 07: Scheduling da CPU. Ezequiel R. Zorzal Sistemas Operacionais Aula 07: Scheduling da CPU Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Objetivos Introduzir o Scheduling da CPU, que é a base dos sistemas operacionais multiprogramados

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I UFRJ IM - DCC Sistemas Operacionais I Unidade II - 18/9/2009 Prof. Antonio Carlos Gay Thomé Prof. Aux. Simone Markenson Pech 1 Conceituação Estruturas de Controle Modos de execução do S.O. Estados de um

Leia mais

Sistemas de Informação. Sistemas Operacionais

Sistemas de Informação. Sistemas Operacionais Sistemas de Informação Sistemas Operacionais Apresentação Prof. Bruno de Souza Toledo bruno.toledo@ifmg.edu.br Sistemas Operacionais Carga horária: 80 horas/aula Habilidades e Competências A disciplina

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I UFRJ IM - DCC Sistemas Operacionais I Unidade II - Processos 24/04/2014 Prof. Valeria M. Bastos 1 Organização da Unidade Processos Conceituação Estruturas de Controle Modos de execução do S.O. Estados

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

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

Sistemas Operacionais Aula 7

Sistemas Operacionais Aula 7 Sistemas Operacionais Aula 7 Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE O que fazer

Leia mais

Escalonamento da CPU

Escalonamento da CPU Escalonamento da CPU Sistemas Operacionais Charles Tim Batista Garrocho Instituto Federal de Minas Gerais IFMG Campus Ouro Branco https://garrocho.github.io charles.garrocho@ifmg.edu.br Sistemas de Informação

Leia mais

SOP - TADS Processos. Revisão Ultima aula

SOP - TADS Processos. Revisão Ultima aula SOP - TADS Processos Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Revisão Ultima aula Revisão de hardware Processador

Leia mais

Escalonamento da CPU

Escalonamento da CPU Escalonamento da CPU Sistemas Operacionais Charles Tim Batista Garrocho Instituto Federal de São Paulo IFSP Campus Campos do Jordão garrocho.ifspcjo.edu.br/oso charles.garrocho@ifsp.edu.br Técnico em Informática

Leia mais

Sistemas Operativos. Um conjunto de rotinas de software que. virtualizando-o. diversos como o sistema de ficheiros e.

Sistemas Operativos. Um conjunto de rotinas de software que. virtualizando-o. diversos como o sistema de ficheiros e. Sistemas Operativos Paulo Menezes 1 Um conjunto de rotinas de software que virtualizando-o. diversos como o sistema de ficheiros e 2 Processamento por lotes (batch) 3 Tipos de sistemas operativos Batch

Leia mais

Davidson Rodrigo Boccardo

Davidson Rodrigo Boccardo Fundamentos em Sistemas de Computação Davidson Rodrigo Boccardo flitzdavidson@gmail.com Componentes de um SO Gerenciamento de Processos Sistema de Arquivos Gerenciamento de Entrada/Saída Gerenciamento

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

Oganização e Arquitetura de Computadores

Oganização e Arquitetura de Computadores Oganização e Arquitetura de Computadores Capítulo 14 e 15 Unidade de Controle Parte I Operação da Unidade de Controle 1 Micro-Operações Um computador executa um programa Ciclo: Busca/Executa Cada ciclo

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais 04 Processos Introdução Um sistema de computação quase sempre tem mais atividades a executar que o número de processadores disponíveis. Diferentes tarefas têm necessidades distintas

Leia mais

Capítulo 2 Processos e Threads

Capítulo 2 Processos e Threads Capítulo 2 Processos e Threads 2.1 Processos 2.2 Threads 2.3 Comunicação interprocesso 2.4 Problemas clássicos de IPC 2.5 Escalonamento 1 Processos O Modelo de Processo Multiprogramação de quatro programas

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 12: Revisão para a P1 Diego Passos Capítulo 1 Sistemas Operacionais São programas. Duas funções: Gerenciar os recursos do hardware. Dividir entre os vários processos.

Leia mais

Resumo: Sistemas Operacionais Abertos

Resumo: Sistemas Operacionais Abertos Resumo: Sistemas Operacionais Abertos Prof. Michael A. Pontes Processos Um processo é um programa em execução. Enquanto um processo é executado, ele muda de estado. O estado de um processo é definido pela

Leia mais

Unidade 2. Processos Threads Concorrência em Java

Unidade 2. Processos Threads Concorrência em Java Unidade 2 Programação Concorrente Processos Threads Concorrência em Java Processos Definição Um programa em execução em uma máquina. Identificado pelo seu PID (Process Identifier). A unidade de processamento

Leia mais

ENADE 2011 SISTEMAS OPERACIONAIS

ENADE 2011 SISTEMAS OPERACIONAIS ENADE 2011 SISTEMAS OPERACIONAIS SOs: conteúdos comuns Gerência de processos/processador Comunicação Concorrência e Sinc. de Processos Gerenciamento de Memória Alocação de Recursos e Deadlocks Sistemas

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Interconexão do Computador Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes -

Leia mais

Gerenciamento de Memória Minix 3.1.7

Gerenciamento de Memória Minix 3.1.7 Gerenciamento de Memória Minix 3.1.7 Prof. Alexandre Beletti Introdução Não utiliza paginação Não faz swapping (está disponível, mas inativo) PM = gerencia processos e memória Chamadas de sistemas: Memória

Leia mais

Temporização (Scheduling) de Processos

Temporização (Scheduling) de Processos Temporização (Scheduling) de Processos Tem por objetivo maximizar o uso da CPU, i.e. ter sempre um processo a executar. Ð ÔÖÓ Ó Ù Ñ ÙÐ Ò Fila de tarefas: processos submetidos para execução, à espera de

Leia mais

Sistemas Distribuídos Capítulo 4 - Aula 5

Sistemas Distribuídos Capítulo 4 - Aula 5 Sistemas Distribuídos Capítulo 4 - Aula 5 Aula Passada Clusters de Servidores Migração de Código Comunicação (Cap. 4) Aula de hoje Chamada de Procedimento Remoto - RPC Fundamentos 1 Chamada de Procedimento

Leia mais

Processos. Estruturas de Controle

Processos. Estruturas de Controle Processos Estruturas de Controle Processos e Recursos (1) LPRM/DI/UFES 2 Processos e Recursos (2) O S.O. gerencia recursos computacionais em benefício dos diversos processos que executam no sistema. A

Leia mais

3. COMPILAÇÃO E ESTRUTURA BÁSICA DE UM PROGRAMA EM C

3. COMPILAÇÃO E ESTRUTURA BÁSICA DE UM PROGRAMA EM C 3. COMPILAÇÃO E ESTRUTURA BÁSICA DE UM PROGRAMA EM C 3.1. Compilação de um Programa C O compilador C realiza a compilação do código-fonte de um programa em cinco etapas: edição, pré-processamento, compilação,

Leia mais

Sistemas Distribuídos Aula 3

Sistemas Distribuídos Aula 3 Sistemas Distribuídos Aula 3 Aula passada Processos IPC Características Ex. sinais, pipes, sockets Aula de hoje Threads Kernel level User level Escalonamento Motivação: Servidor Web Considere Servidor

Leia mais

Estruturas de Sistemas Operacionais

Estruturas de Sistemas Operacionais Estruturas de Sistemas Operacionais Sistemas Operacionais - Tópicos Componentes do Sistema Serviços de Sistemas Operacionais Chamadas ao Sistema Estrutura do Sistema Máquinas Virtuais Chamadas ao Sistema

Leia mais

Sistemas Operacionais. Capítulo 8 Gerência do Processador

Sistemas Operacionais. Capítulo 8 Gerência do Processador Sistemas Operacionais Capítulo 8 Gerência do Processador Baseado no Livro e Material de Apoio de Arquitetura de Sistemas Operacionais 3ª edição - LTC - 2004 Francis Berenger Machado Luiz Paulo Maia 1 Sumário

Leia mais

6 ESCALONAMENTO DE CPU

6 ESCALONAMENTO DE CPU 6 ESCALONAMENTO DE CPU O escalonamento de CPU é ponto chave da multiprogramação. Ela permite que haja mais de um processo em execução ao mesmo tempo. Em ambientes com um único processador, o escalonador

Leia mais

INTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 08. Conceitos sobre processos. Modelos de processos, BCP, contextos, estados de processos.

INTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 08. Conceitos sobre processos. Modelos de processos, BCP, contextos, estados de processos. INTRODUÇÃO AOS SISTEMAS OPERACIONAIS setembro/2013 SEMANA 08 Conceitos sobre processos. Modelos de processos, BCP, contextos, estados de processos. 1 - Introdução O processo computacional, ou simplesmente

Leia mais

Fundamentos de Arquitetura e Organização de Computadores

Fundamentos de Arquitetura e Organização de Computadores Fundamentos de Arquitetura e Organização de Computadores Dois conceitos fundamentais no estudo dos sistemas de computação são o de Arquitetura e Organização de computadores. O termo arquitetura refere-se

Leia mais

INE 5645 Programação Paralela e Distribuída

INE 5645 Programação Paralela e Distribuída INE 5645 Programação Paralela e Distribuída Prof. João Bosco M. Sobral INE - UFSC bosco@inf.ufsc.br Urian K. Bardemaker PPGCC - INE - UFSC uriank@gmail.com Unidade 2 Programação Concorrente Processos Threads

Leia mais

Processos. Processos e Recursos (1) Tabelas de Controle do S.O. Processos e Recursos (2)

Processos. Processos e Recursos (1) Tabelas de Controle do S.O. Processos e Recursos (2) Processos e Recursos (1) Processos Estruturas de Controle LPRM/DI/UFES 2 Processos e Recursos (2) Tabelas de Controle do S.O. O S.O. gerencia recursos computacionais em benefício dos diversos processos

Leia mais

Arquitetura de Computadores - Módulos de E/S. por Helcio Wagner da Silva

Arquitetura de Computadores - Módulos de E/S. por Helcio Wagner da Silva Arquitetura de Computadores - Módulos de E/S por Helcio Wagner da Silva Modelo Geral de um Módulo de E/S Barramento de Endereço Barramento de Dados Barramento de Controle Módulo de E/S Conexões com Dispositivos

Leia mais

1 Porque o estado de um processo deve ser salvo quando ele deixa a CPU?

1 Porque o estado de um processo deve ser salvo quando ele deixa a CPU? 1 Porque o estado de um processo deve ser salvo quando ele deixa a CPU? 2 O que é ambiente de execução? 3 Qual a finalidade da PCB? 4 Quais os componentes básicos da PCB? 5 Quais os 3 grupos de elemento

Leia mais

Aula 06 Comandos Linux Gerenciamento de Privilégios e Processos Gerenciamento de Processos

Aula 06 Comandos Linux Gerenciamento de Privilégios e Processos Gerenciamento de Processos Gerenciamento de Serviços para Internet Aula 06 Comandos Linux Gerenciamento de Privilégios e Processos Gerenciamento de Processos Prof. Diego Pereira Objetivos Entender o funcionamento

Leia mais

Welcome the programmation Linux with shell script!!! Seja bem vindo a programação Linux com shell script!!!

Welcome the programmation Linux with shell script!!! Seja bem vindo a programação Linux com shell script!!! Exemplos de shell scripts Esses exemplos são para você testar seu conhecimento geral em shell script. Após ver os exemplos, aconselho que você mesmo tentar escrever seus próprios scripts shell, assim que

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

Notas da Aula 11 - Fundamentos de Sistemas Operacionais

Notas da Aula 11 - Fundamentos de Sistemas Operacionais Notas da Aula 11 - Fundamentos de Sistemas Operacionais 1. Escalonamento de Tempo Real Em sistemas de tempo real, o objetivo principal do escalonador é garantir que todos os processos sejam executados

Leia mais