INTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 08. Conceitos sobre processos. Modelos de processos, BCP, contextos, estados de processos.
|
|
- Bernadete de Vieira Bergler
- 6 Há anos
- Visualizações:
Transcrição
1 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 processo, é uma atividade que ocorre em um meio computacional com objetivo definido, duração finita e fazendo uso de uma quantidade limitada de recursos computacionais. Programa é o código fonte escrito em alguma linguagem de programação [por exemplo, C, Pascal, Fortran], e executável é esse código traduzido para a linguagem de máquina específica da máquina onde ele será executado. O programa é uma entidade passiva. Processo pode ser definido como um fluxo de controle sequencial e seu espaço de endereçamento, ou seja, é a execução de um programa junto com os dados usados por ele. Processo, de forma resumida, é então um programa em execução. Como exemplo, o mesmo programa pode ser executado ao mesmo tempo por dois usuários, gerando dois processos distintos. Além disso, na sua execução, um programa pode originar vários processos. O processo é uma entidade ativa. Um processo computacional é representado por uma estrutura de dados conhecida como Bloco de Controle do Processo [BCP, Process Control Block - BCP], também chamado de descritor do processo. 2 - Conceitos sobre processos Uma das principais tarefa do kernel é permitir a execução de aplicativos. Para isso, ele deve auxiliar a aplicação com recursos como abstrações de hardware e gerenciamento do processo. Para rodar uma aplicação, o kernel inicialmente cria um espaço de endereçamento para essa aplicação, carrega na memória o arquivo contendo as instruções do programa, cria uma pilha para essa aplicação e inicia a sua execução. Um kernel multitarefa é capaz de dar ao usuário a ilusão de que o número de processos que estão rodando simultaneamente é maior do que o número de processos que aquele sistema é fisicamente capaz de rodar. Mas na realidade, usualmente o número de processos que um sistema Introdução aos Sistemas Operacionais - 1/8
2 pode rodar simultaneamente é igual o número de processadores (ou de núcleos). A multitarefa pode ser preemptiva [multitarefa real] ou cooperativa. Na multitarefa preemptiva o kernel trabalha com uma fila de processos cedendo a cada um uma parcela de tempo [time slice] de processamento. Desse modo, o processador alterna de processo em processo rapidamente para dar ao usuário a impressão de que todos os processos estão sendo executados simultaneamente. A implementação da multitarefa preemptiva envolve o uso de algoritmos de escalonamento, para que o kernel determine qual processo deve ser executado em que momento e quanto tempo de processamento deve ser concedido. O algoritmo escolhido deve poder permitir que alguns processos tenham uma prioridade de processamento mais alta que os demais. O kernel geralmente também deve prover uma maneira de comunicação entre processos [IPC, Inter Process Communication]. Alguns exemplos de IPC são: memória compartilhada; troca de mensagens; chamadas de procedimento remoto [RPC, Remote Procedure Call]. Praticamente todos os sistemas operacionais modernos implementam multitarefa preemptiva ou real. No passado havia a multitarefa cooperativa, onde cada processo tinha permissão de executar ininterruptamente até fazer uma requisição especial para avisar ao kernel para alternar para o próximo processo da fila. Embora a multitarefa cooperativa seja bem mais simples de implementar que a preemptiva, tem a contrapartida de travar o sistema inteiro com muita frequência, pois qualquer problema que ocorra com o processo que está executando impede a devolução do processador para o sistema operacional. Os antigos Windows 3.0, 3.1 e 3.11 usualmente rodavam sobre o sistema operacional MS- DOS, que não implementava multitarefa alguma. Então o Windows, que à época era aplicação que fornecia ambiente gráfico, implementava multitarefa cooperativa para as aplicações para Windows. As versões antigas do Mac [Apple], embora não tivessem nada a ver com o MS-DOS, padeciam do mesmo mal. Para o caso de haver mais de um processador, o kernel deve suportar multiprocessamento simétrico [SMP 1 ] ou acesso não uniforme à memória [NUMA 2 ] para permitir que diferentes processos rodem simultaneamente em diferentes processadores. Para isso, o kernel deve suportar reentrância 3 para poder rodar duas ou mais partes do código da aplicação simultaneamente. Isso exige mecanismos de sincronização para assegurar que dois processadores não tentarão modificar os mesmos dados ao mesmo tempo. 1 SMP: Symmetric Multi Processing. 2 NUMA: Non-Uniform Memory Access. 3 Reentrância: em programação, é a qualidade de uma subrotina ser executada concorrentemente de forma segura, isto é, de poder ser invocada enquanto estiver em execução. Introdução aos Sistemas Operacionais - 2/8
3 3 - Modelos de processos e estados de processos O modelo de processo serve para descrever o processo ao longo dos seus estados. Por exemplo, um modelo de três estados envolve apresentar o processo nos seguintes estados: rodando pronto [ready]; rodando [running]; bloqueado [blocked]. A figura 1 mostra um modelo de processo com três estados, onde cada mudança de estado é uma transição que é representada por um número: 1 - O processo não pode continuar a execução pois espera por algum evento [I/O ou semáforo] para continuar; 2 - Escalonamento: o processo retorna ao processador; 3 - Escalonamento: acabou o tempo [slice] de processamento; 4 - Ocorre o evento esperado que mantinha o processo bloqueado. O processo, quando em execução na CPU, está no estado rodando [running]. Ao terminar sua quota de tempo para execução (slice de tempo), o escalonador o interrompe e o coloca no estado pronto. Ao chegar novamente a sua vez de executar, o escalonador invoca [acorda] esse processo para voltar a rodar, permitindo a sua continuação. Um processo pode ser bloqueado se os dados de entrada ainda não estiverem disponíveis e ele não poder continuar sua execução, e isto pode ocorrer pelo sinal enviado por outro processo ou pela própria decisão do escalonador. Um processo pode ser definido como o ambiente onde a aplicação é executada. Este ambiente possui informações sobre essa execução e também o quanto de recursos do sistema cada processo pode utilizar, como o espaço de endereçamento, tempo de processador e área em sistema de arquivo. Um modelo de processo mais realista é apresentado na figura 2, com 5 estados. A 1 bloqueado pronto Fig 1 Modelo de processo com 3 estados O processo é desbloqueado por um evento externo [chegada dos dados, sinalização de outro processo], e então passa ao estado pronto. expede [dispatch] novo admite ocorre evento pronto bloqueado timeout espera por evento Fig 2 Modelo de processo com 5 estados rodando libera exit [finaliza] Introdução aos Sistemas Operacionais - 3/8
4 diferença entre este e o de 3 estados é incorporar tanto a criação de novos processos quanto finalização de processos. A partir da inicialização do sistema, processos podem ser criados e finalizados a qualquer momento. Os processos podem ser criados pelos usuários, para realizarem as suas tarefas, e também o sistema operacional cria processos em acordo com as suas necessidades. Também podem haver processos de serviço, como é o caso de um serviço de . Por exemplo, no caso do Unix o init é o primeiro processo do sistema [PID 4 =1], que ocorre logo após o boot. Todos os demais processos são filhos desse processo. A finalização de um processo tem um término normal [voluntário] quando a execução é finalizada através da chamada exit [Unix] ou ExitProcess [Windows]. Mas também poderia ser forçado o término por causa de algum erro fatal [bug no programa, divisão por zero, execução de instrução ilegal ou referência à memória inexistente], pois nessa situação o processo não tem como ser finalizado voluntariamente. O final também poderia ser causado por outro processo, como chamada kill [Unix] ou TerminateProcess [Windows], que é involuntário. Um processo é formado por três partes: contexto de hardware, contexto de software e espaço de endereçamento. 4 - BCP [PCB, Process Control Block] Um Bloco de Controle do Processo [BCP ou PCB], também chamado de Bloco de Controle de Tarefa, Estrutura da Tarefa ou Descritor de Processo, é uma estrutura de dados na memória primária que contém informação necessária para gerenciar um processo em particular. O BCP permite que o sistema operacional encontre informações chave a respeito do processo, por isso define um processo para o sistema operacional. Cada processo tem o seu BCP. Quando um usuário requisita a execução de alguma aplicação, o sistema operacional constroi o BCP para essa aplicação. A implementação do BCP difere de sistema para sistema. Em geral um BCP inclui, direta ou indiretamente, as seguintes informações: a identificador do processo (PID); valores de registradores para o processo, incluindo o contador de pograma e valores de stack; o espaço de endereçamento para o processo; prioridade do processo, que é uma parte da informação de escalonamento [por exemplo, no Unix nice ou renice]; 4 PID: Process IDentifier, identificador do processo, é um número inteiro. Introdução aos Sistemas Operacionais - 4/8
5 informação de contabilização do processo [process accounting information], por exemplo quando o processo processou pela última vez, quanto tempo de CPU o processo acumulou, etc; ponteiro para o próximo BCP, isto é, ponteiro para o BCB do próximo processo a rodar; informações de I/O, isto é, dispositivos alocados para o processo, lista de arquivos abertos, etc; ponteiro para o processo pai e, caso exista, ponteiro para o processo filho; o status do processo, se está rodando, pronto, bloqueado, etc; em caso de máquina multiprocessada, informação sobre qual processador o processo está rodando. Já que o BCP contém informação crítica sobre o processo, ele precisa ser mantido numa área de memória protegida do acesso de usuários normais. O BCP possui todas as informações do processo, que são contexto de hardware, contexto de software e espaço de endereçamento de cada processo [endereço de memória]. O sistema operacional implementa o conceito de processo através do BCP. 5 - Contextos Contexto de um processo são as informações necessárias para que o processo possa ser restaurado a partir do ponto em que foi interrompida a sua execução. Essa interrupção do processamento normalmente é feita pelo escalonador, e leva o processo para o estado pronto. Contexto é um conjunto de dados necessários para manter a execução do processo ao longo do tempo. A troca de um processo por outro no processador é chamada de troca de contexto [context switch]. Durante a troca de contexto, o processo que está rodando é parado e é passada a execução para outro processo. O kernel precisa parar a execução do processo que está rodando, copiar os valores dos registradores para o BCP do processo que estava rodando e atualizar os registradores com os valores do BCP do processo que vai iniciar a execução. O tempo que é gasto na troca de contexto é desperdiçado, pois nesse momento nenhum processo está rodando. Isso é chamado de overhead. A troca de contexto é dependente de suporte de hardware. Para efetuar o compartilhamento da CPU entre processos, o sistema operacional possui duas filas de controle: a de processos prontos [Ready-List] e a de processos bloqueados [Blocked-List]. A manipulação dessas filas depende da política de escalonamento adotada pelo sistema, que é um critério para determinar, entre os diversos processos no estado pronto, qual o próximo processo a executar. Introdução aos Sistemas Operacionais - 5/8
6 O escalonador de processos, com o auxílio de hardware, é o responsável pela escolha do processo que será executado pelo processador. O escalonador deve se preocupar com a eficiência do processador, pois o chaveamento de processos [switch] é complexo e custoso e afeta o desempenho do sistema. O escalonador de processo é um processo que deve ser executado quando da mudança de contexto, que é a troca de processo a ser processado. processo P sistema operacional 0 rodando pronto rodando interrupção salva status BCP 0 restaura status BCP 1 interrupção salva status BCP 1 restaura status BCP 0 Fig 3 Troca de contexto entre processos P 0 e P 1 processo P 1 rodando pronto pronto overhead overhead A figura 3 mostra um exemplo de troca de contexto entre os processos P 0 e P 1. As ações necessárias para a troca de contexto são: salvar o contexto do processador, incluindo o PC [Contador de Programa] e outros registradores; alterar o BCP do processo que está em execução [running]; mover o processo para a fila apropriada; selecionar outro processo para execução; alterar o BCP do processo selecionado para iniciar a execução; alterar as tabelas de gerência de memória; restaurar o contexto do processo selecionado para iniciar a execução. As condições para a troca de contexto de um processo são: interrupção do relógio [clock]: fatia [slice] de tempo de posse do processador expirou; interrupção de I/O: resposta de um dispositivo de I/O; falta de memória: endereço de memória está na memória virtual [swap, disco]; trap [armadilha]: ocorrência de erro, que pode fazer com que o processo seja finalizado; supervisor call (SVC): é uma chamada de sistema que muda o sistema para o modo supervisor, para o sistema operacional poder requisitar serviços como, por exemplo, alocação de memória. O contador de programa [PC, Program Counter] é o registrador que indica o endereço [localização na memória] da próxima instrução a ser executada. Durante a execução de uma Introdução aos Sistemas Operacionais - 6/8
7 instrução, esse contador é incrementado com o valor do tamanho da instrução, de modo que ele passe a conter o endereço da instrução seguinte. O tamanho do PC é igual ao número de bits de endereço que o processador pode manipular. Assim, se a máquina trabalha com endereços de 16 bits, o PC terá 16 bits. O contador de programa também é conhecido por IC [Instruction Counter] ou IP [Instruction Pointer]. O contador de programas é o responsável pelo pseudoparalelismo, e garante que a qualquer instante exista somente um programa ativo no processador. Pseudoparalelismo é a sensação de que vários processos são executados simultaneamante num único processador. Um processo é representado por: espaço de endereçamento, que é uma área de memória pertencente ao processo, onde as instruções e dados da aplicação são armazenados para execução. contexto de software contexto de hardware contexto de hardware e de software, que são valores em memória do conteúdo dos registradores e características e limites dos recursos que podem ser alocados pelo processo. A figura 4 ilustra o contexto de hardware, contexto de software e espaço de endereçamento de um processo. A troca de contexto se resume em substituir o contexto de hardware de um processo pelo de outro. processo espaço de endereçamento Fig 4 contexto e espaço de endereçamento do processo Quando um processo está em execução, o seu contexto de hardware está armazenado nos registradores do processador. No momento em que o processo perde a utilização do processador, o sistema salva essas informações no contexto de software do processo. Na troca de contexto de hardware, é necessário armazenar o conteúdo dos registradores gerais do processador e de uso específico, como o contador de programa [PC], o stack pointer 5 [SP] e o registrador de status 6 [PSW, Processor Status Word]. Na troca de contexto de software, é necessário especificar as características e limites dos recursos que podem ser alocados pelo processo, como prioridade para execução, privilégios, tamanho do buffer para operações de I/O etc. O contexto de software é formado por três grupos de informações: identificação, quotas e privilégios. 5 Registrador Stack Pointer [SP]: registrador ponteiro da pilha não existia na máquina de Von Newmann, mas hoje em dia faz parte da CPU de quase todos os computadores. É necessário porque todo programa em execução precisa usar uma pilha para realizar chamadas e retornos de procedimentos. Assim, cada programa possui uma pilha própria e o registrador SP indica o topo da pilha do programa correntemente em execução. Quando a execução passa de um programa para outro, o valor do SP é alterado para que ele passe a apontar para a pilha do novo programa em execução. 6 Registrador Processor Status Word [PSW]: registrador palavra de estado do processador ou registrador de estado não fazia parte da máquina de Von Newmann [nem existia nos computadores mais antigos], mas é essencial para o funcionamento de um sistema operacional moderno. Atualmente, faz parte de qualquer CPU. O uso desse registrador passou a ser necessário quando os computadores começaram a utilizar sistemas de interrupção. Introdução aos Sistemas Operacionais - 7/8
8 identificação: PID, nome, UID [Identificação do usuário dono do processo, User IDentifier]; quotas: são os limites de cada recurso do sistema que um processo pode alocar, como número máximo de arquivos abertos simultaneamente, tamanho máximo de memória primária e secundária, número máximo de operações I/O pendentes; privilégios: definem as ações que um processo pode fazer em relação a ele mesmo, aos demais processos e ao sistema operacional. Privilégios que afetam o próprio processo permitem que suas características possam ser modificadas. Por exemplo: prioridade de execução, limites alocados na memória primária e secundária. O usuário que possui todos os privilégios são o root [Unix] e o Administrador [Windows]. O espaço de endereçamento é a área do processo onde as instruções e os dados do programa são armazenados para execução, onde cada processo possui o seu próprio espaço que não pode ser ocupado por outro processo. É a partir do BCP que o sistema operacional mantém as informações sobre o contexto de hardware, contexto de software e o espaço de endereçamento de cada processo. A tabela de processos é uma estrutura de dados que contém informações fundamentais para que o processo interrompido pelo escalonador possa voltar a executar exatamente a partir do ponto de parada, sem perda de dados ou inconsistências. Cada processo possui uma entrada na tabela de processos com um ponteiro para o bloco de controle de processo [BCP]. tabela de processos... BCP processo 1 BCP processo 2 BCP processo 3... BCP processo n Fig 5 tabela de processos e BCP Introdução aos Sistemas Operacionais - 8/8
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 maisSistemas Operacionais
Sistemas Operacionais Prof. Fabio Augusto Oliveira Processos O processador é projetado apenas para executar instruções, não sendo capaz de distinguir qual programa se encontra em execução. A gerência de
Leia maisSistemas 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 maisSistemas 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 maisSistemas 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 maisSistemas 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 maisSistemas Operacionais. Processos e Threads
Sistemas Operacionais Processos e Threads Sumário 1. Introdução 2. Estrutura do Processo 1. Contexto de Hardware 2. Contexto de Software 3. Espaço de Endereçamento 3. Estados 1. Mudanças de Estado 2. Criação
Leia maisSistemas 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 maisSistemas Operacionais. Processos IC - UFF
Sistemas Operacionais Processos O conceito de processos No capítulo 1, fizemos as seguintes afirmativas quanto aos processos: Mais geral que programa Consiste em um código executável e seus dados associados,
Leia mais14/05/2017. Conceitos de Processos. Conceitos de Processos. Conceito de processo
Conceito de processo Os computadores executam várias operações ao mesmo tempo. - Compilar um programa; - Enviar um arquivo para a impressora; - Exibir uma página web; - Reproduzir músicas; - Receber mensagens
Leia maisProcesso. 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 maisProcessos. 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 maisDavidson 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 maisSistemas 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 maisProcessos. Pedro Cruz. EEL770 Sistemas Operacionais
Processos Pedro Cruz EEL770 Sistemas Operacionais Aviso O que vamos falar vale para sistemas de processador/ núcleo único Vale também para cada processador/núcleo de um sistema com múltiplos processadores/núcleos
Leia maisINTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 09. Escalonadores. Conceito, escalonamento, filas de escalonamento e tipos de escalonadores.
INTRODUÇÃO AOS SISTEMAS OPERACIONAIS setembro/2013 SEMANA 09 Escalonadores. Conceito, escalonamento, filas de escalonamento e tipos de escalonadores. 1 - Introdução A entidade responsável pelo escalonamento
Leia maisCapí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 maisProcessos 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 maisSistemas 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 maisSistemas Operacionais. Universidade Federal de Minas Gerais. Aula 2. Gerência de Processos
Aula 2 Gerência de Processos Gerência de Processos O que são Processos e Threads? Porque são necessários? Como são implementados? Como são controlados? Escalonamento Referências: Capítulo 4: 4.1 a 4.5
Leia maisSISTEMAS OPERACIONAIS
SISTEMAS OPERACIONAIS Introdução a Processos Andreza Leite andreza.leite@univasf.edu.br Plano da Aula 2 Introdução a Processos Threads vs Processos Características dos Processos Estados dos Processos 3
Leia maisSOP - 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 maisProf. Kleber R. Rovai
Msn: klrovai@hotmail.com E-mail: Skype: klrovai 2 1 Programa: sequência de instruções com diferentes fluxos de execução comandos condicionais e interativos (entidade passiva); Processo: um programa em
Leia maisProcessos. 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 maisINTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 13
INTRODUÇÃO AOS SISTEMAS OPERACIONAIS outubro/2013 SEMANA 13 Conceitos sobre s. Visão geral, s de usuário e de, modelos de multiing, ciclo de vida. Exemplos nos sistemas operacionais. 1 - Introdução Thread
Leia maisSistemas Operacionais. Conceito de Processos
Sistemas Operacionais Conceito de Processos Processos Conceito de processo Estado de um processo Troca de contexto e PCB Fila de Processo Escalonador Comunicação entre processos Processo Um sistema operacional
Leia maisSistemas 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 maisProcessos. Processo (1) Processo (2) Processo (3) Conceitos Básicos
Processos Conceitos Básicos Processo (1) Abstração usada pelo S.O. para designar a execução de um programa. É caracterizado por uma thread de execução, um estado corrente e um conjunto associado de recursos
Leia maisProcessos. Conceitos Básicos
Processos Conceitos Básicos Processo (1) Abstração usada pelo S.O. para designar a execução de um programa. É caracterizado por uma thread de execução, um estado corrente e um conjunto associado de recursos
Leia maisSISTEMAS OPERACIONAIS
SISTEMAS OPERACIONAIS Conteúdo Introdução ao S.O Gerenciamento de processos. Gerenciamento de memória. Dispositivos de Entrada/Saída. Sistemas de arquivos. Gerenciamento de processos Processos Um processo
Leia maisSistemas Operacionais
Brainstormig Sistemas Operacionais Processos e multiprogramação Aula 2 Quais são os componentes de um programa? Como podemos representar um programa em execução? Onde ele inicia a executar? Como se mapeia
Leia maisNotas da Aula 7 - Fundamentos de Sistemas Operacionais
Notas da Aula 7 - Fundamentos de Sistemas Operacionais 1. Organização de um Processo em Memória Quando um processo é criado, o SO aloca uma porção da memória física da máquina para a criação do espaço
Leia maisProcessos. Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa. Fernando Ramos, Nuno Neves, Sistemas Operativos,
Processos Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Objetivos da aula Introduzir a noção de processo um programa em execução que é a base de toda a computação Descrever as várias
Leia maisArquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia (Material Adaptado)
Arquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia (Material Adaptado) Capítulo 3 Concorrência Agenda Introdução Interrupções e exceções Operações de Entrada/Saída Buffering
Leia maisTécnicas Avançadas de Programação
Sumário Técnicas Avançadas de Programação Prof. João Marcos M. da Silva Departamento de Engenharia de Telecomunicações Escola de Engenharia Universidade Federal Fluminense Agosto de 2011 Prof. João Marcos
Leia maisDisciplina: Sistemas Operacionais
Curso: Análise e Desenvolvimento de Sistemas Disciplina: Sistemas Operacionais Parte 2: Sistemas Multiprocessos, Características dos Multiprocessadores,Sistemas de Clusters, Operações básica do Sistema
Leia maisSistema Operacional. Escola de Ciências e Tecnologia ECT1103 INFORMÁTICA FUNDAMENTAL UFRN
Escola de Ciências e Tecnologia UFRN Sistema Operacional Prof. Aquiles Burlamaqui Nélio Cacho Luiz Eduardo Eduardo Aranha ECT1103 INFORMÁTICA FUNDAMENTAL Manter o telefone celular sempre desligado/silencioso
Leia maisSISTEMAS 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 maisSistemas 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 maisSistemas Operacionais - UCSAL Professor : Marco Antônio C. Câmara Primeira Lista de Exercícios
1ª Questão : Com base na figura ao lado, extraída do livro SISTEMAS OPERACIONAIS MODERNOS, de Andrew S. Tanenbaum, assinale cada uma das afirmações abaixo como (C)erta ou (E)rrada. No caso da afirmativa
Leia maisEstruturas 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 maisUnix: Processos e o Kernel. Sistemas Operacionais
Unix: Processos e o Kernel O Kernel É um programa especial, uma parte privilegiada do sistema operacional, que roda diretamente sobre o hardware. Ele implementa o modelo de processos do sistema. O kernel
Leia maisSistemas 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 maisSistemas Operacionais. Interrupção e Exceção
Sistemas Operacionais Interrupção e Exceção Interrupção e Exceção Durante a execução de um programa podem ocorrer alguns eventos inesperados, ocasionando um desvio forçado no seu fluxo de execução. Estes
Leia maisTAREFAS IMPLEMENTAÇÃO DE TAREFAS AULA 06 Sistemas Operacionais Gil Eduardo de Andrade
TAREFAS IMPLEMENTAÇÃO DE TAREFAS AULA 06 Sistemas Operacionais Gil Eduardo de Andrade O conteúdo deste documento é baseado no livro do Prof. Dr. Carlos Alberto Maziero, disponível no link: http://dainf.ct.utfpr.edu.br/~maziero
Leia maisINTRODUÇÃO AOS SISTEMAS OPERACIONAIS SEMANA 10. Operações nos processos. Processos cooperativos, comunicação entre processos.
INTRODUÇÃO AOS SISTEMAS OPERACIONAIS outubro/2013 SEMANA 10 Operações nos processos. Processos cooperativos, comunicação entre processos. 1 - Introdução Um processo, ao longo da sua vida, passa por diferentes
Leia maisArquitetura de Sistemas Operativos
Arquitetura de Sistemas Operativos Sistemas Operativos 2011/2012 1 Threads Conceito Um processo é um programa em execução. A execução de um processo é sequencial: pode-se caracterizar um processo pelo
Leia maisAlgoritmos e Lógica de Programação Sistemas Operacionais
Algoritmos e Lógica de Programação Sistemas Operacionais Agostinho Brito Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte 25 de agosto de 2005 Introdução
Leia maisProgramação de Sistemas em Tempo Real
BCC722 Programação de Sistemas em Tempo Real Processos Prof. Charles Garrocho O conceito de processo Um S.O. executa uma variedade de programas Sistemas de tempo compartilhado: programas Processo: um programa
Leia maisNotas da Aula 2 - Fundamentos de Sistemas Operacionais
Notas da Aula 2 - Fundamentos de Sistemas Operacionais 1. Ciclo de Vida de um Processo Todo processo passa por 3 fases durante sua vida: criação, execução e término. Um processo pode ser criado por outro
Leia maisConceito de Processo. Estados de Processos. Diagrama de Estados de Processos
Conceito de Processo Módulo 4: Processos Um Sistema Operacional executa uma variedade de programas: Sistemas de processamento em lotes (batch) processa jobs Sistemas de tempo partilhado (time shared) roda
Leia maisEstrutura dos Sistemas Operacionais. Sérgio Portari Júnior
Estrutura dos Sistemas Operacionais Sérgio Portari Júnior - 2016 1 Sistema Operacional - Formas de acessar o KERNEL do SISTEMA OPERACIONAL (SO) - A linguagem de comandos faz parte do SO O Sistema Operacional
Leia maisAula 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 maisQuestões de Múltipla escolha
ATPS Sistemas Operacionais Professor Matheus de Lara Calache Valor total do trabalho: 10 Cada resposta vale 0,34. Questões de Múltipla escolha 1) Processos podem ser organizados em filas como Fila de Prontos
Leia maisINE 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 maisSistemas Operacionais. Prof. Fabio Augusto Oliveira
Sistemas Operacionais Prof. Fabio Augusto Oliveira Threads Um processo representa uma sequência de instruções única, executada paralelamente a outra seqüências de instruções. Um thread é uma maneira de
Leia maisThread. Thread. Sistemas Operacionais. Leonard B. Moreira. UNIVERSIDADE ESTÁCIO DE SÁ fevereiro, / 41
Thread Sistemas Operacionais Leonard B. Moreira UNIVERSIDADE ESTÁCIO DE SÁ e-mail: leonardbarreto@gmail.com.br fevereiro, 2013 1 / 41 Sumário 1 Introdução 2 Ambientes Monothread 3 Ambientes Multithread
Leia maisENADE 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 maisUFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Recursos Entrada e Saída. 02/12/2014 Prof. Valeria M. Bastos
UFRJ IM - DCC Sistemas Operacionais I Unidade IV Gerência de Recursos Entrada e Saída 02/12/2014 Prof. Valeria M. Bastos 1 ORGANIZAÇÃO DA UNIDADE Gerência de Entrada e Saída Fundamentos Evolução Estrutura
Leia maisConcorrência em Processos
Concorrência em Processos Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Baseado nas aulas do professor Alberto Costa Neto da UFS 1 O que fazer com essa apresentação
Leia maisConceitos básicos e serviços dos Sistemas Operacionais
Conceitos básicos e serviços dos Sistemas Operacionais Prof. Marcos Ribeiro Quinet de Andrade Instituto de Ciência e Tecnologia - ICT Universidade Federal Fluminense - UFF Tipos de serviços do S.O. Um
Leia maisARQUITETURA DE COMPUTADORES
01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100
Leia maisFigura 01 Programa e Processo
02 PROCESSOS 2.1 Introdução Para poder controlar a execução dos diversos programas e o uso concorrente do processador e dos demais recursos um programa deve sempre estar sempre associado a um processo.
Leia maisDefiniçã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 maisFundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo
Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo Múltipla escolha 1. Em que consiste um sistema operacional: a. Um conjunto de
Leia maisQuestõ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 maisSistemas 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 maisCaracterísticas Linux - CentOS
FACULDADE DE TECNOLOGIA SENAC GOIÁS Sistemas Operacionais Leandro Soares, Rodrigo Mascarenhas, Pedro Henrique, Jonatas Edward Características Linux - CentOS Lucília Ribeiro GOIÂNIA, 2015 Leandro Soares,
Leia maisNoções de Processos. Plano da aula. Serviços oferecidos. Definição & Objetivos. Definição & Objetivos. Sistemas Operacionais : introdução
Plano da aula Noções de Processos Marcelo Johann Introdução Histórico Multiprogramação Noção de processo Definição Ciclo de vida do processo Suporte de Hardware para multi-programação Mecanismo de interrupção
Leia maisCapítulo 6 Nível do Sistema Operacional
Capítulo 6 Nível do Sistema Operacional - Sistema Operacional: Programa que, do ponto de vista do programador, adiciona uma grande quantidade de instruções e funcionalidades bem além das disponibilizadas
Leia maisArquitetura de Sistemas Operativos
Arquitetura de Sistemas Operativos Sistemas Operativos 2011/2012 1 Introdução Gestão de Programas Introdução Os sistemas operativos gerem um conjunto de funções básicas que têm evoluído ao longo dos tempos.
Leia maisSistemas Operacionais. Rodrigo Rubira Branco
Sistemas Operacionais Rodrigo Rubira Branco rodrigo@kernelhacking.com rodrigo@fgp.com.br Hierarquia de Processos Em sistemas operacionais Unix like, existe uma clara hierarquia de processos, onde todos
Leia maisSistemas Operacionais II
Sistemas Operacionais II Windows Conceitos Básicos Geraldo Braz Junior Departamento de Informática - UFMA 2 Introdução Job Coleção de um ou mais processos gerenciados como uma unidade; Define cotas e limites
Leia maisUnidade 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 maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 5 Gerenciamento de Processos Prof. Belarmino Execução de Processos Já vimos que o processador executa os processos entregando uma fatia de tempo (time slice) para
Leia maisProcessos e Threads. Ciclo 2 AT3. Prof. Hermes Senger
Processos e Threads Ciclo 2 AT3 Prof. Hermes Senger Nota O presente material foi elaborado com base no material didático do livro Sistemas Operacionais, 3ª edição, de H.M.Deitel, P.J. Deitel, D.R. Choffnes,
Leia maisIntrodução aos Sistemas Operacionais
1 Introdução aos Sistemas Operacionais 1.1 O que é um sistema operacional 1.2 História dos sistemas operacionais 1.3 O zoológico de sistemas operacionais 1.4 Conceitos sobre sistemas operacionais 1.5 Chamadas
Leia maisLabSO 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 maisResumo: 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 maisSOP - 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 mais1 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 maisWilliam Stallings Arquitetura e Organização de Computadores 8 a Edição
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 8 Suporte do sistema operacional slide 1 Objetivos e funções Conveniência: Tornar o computador mais fácil de usar. Eficiência:
Leia maisSOP Sistemas Operacionais Módulo 04: Processo
SOP Módulo 04: Processo Prof. Charles Christian Miers e-mail: charles.miers@udesc.br Multiprogramação Tornar mais eficiente o aproveitamento dos recursos do computador Execução simultânea de vários programas
Leia maisSSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
Leia maisSistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos
Sistema Distribuído Conjunto de máquinas (CPU + memória) interligadas em rede. Sistema Distribuído Sistema operacional distribuído trata este conjunto como um único sistema computacional. Estação 1 Estação
Leia maisEstados dos processos. Infra Estruturas Computacionais. A troca de contexto. Escalonamento de Processos. Escalonamento de Processos
Infra Estruturas Computacionais Professor: André Ferreira andre.ferreira@ifba.edu.br Material baseado: Prof.ª Renata Vilas e outros Estados dos processos novo admissão condição satisfeita pronto carga
Leia maisAGT0001 Algoritmos Aula 01 O Computador
AGT0001 Algoritmos Aula 01 O Computador Karina Girardi Roggia karina.roggia@udesc.br Departamento de Ciência da Computação Centro de Ciências Tecnológicas Universidade do Estado de Santa Catarina 2016
Leia maisNotas 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 maisMá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 maisMá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 maisIntrodução. Introdução aos Sistemas Operacionais Volnys Bernal. Sumário. Introdução aos Sistemas Operacionais. Sobre esta apresentação
Volnys Bernal 1998-2016 1 Volnys Bernal 1998-2016 2 Sumário aos Sistemas Operacionais Volnys Borges Bernal volnys@lsi.usp.br Laboratório de Sistemas Integráveis http://www.lsi.usp.br/ Objetivos de um Sistema
Leia maisSistemas 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 maisGerência de Recursos. Gerência do Processador
Gerência de Recursos Gerência do Processador Escalonamento Não-Preemptivos e Preemptivos Preempção - possibilidade de o SO interromper um processo em execução e substituí-lo por um outro. O Escalonamento
Leia maisFerramentas para Programação em Processadores Multi-Core
Ferramentas para Programação em Processadores Multi-Core Prof. Dr. Departamento de Informática Universidade Federal de Pelotas Sumário Introdução Arquiteturas multi-core Ferramentas de programação Prática
Leia maisINTRODUÇÃ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 maisSistemas Operacionais
Sistemas Operacionais Entrada e Saída Norton Trevisan Roman Marcelo Morandini Jó Ueyama Apostila baseada nos trabalhos de Kalinka Castelo Branco, Antônio Carlos Sementille, Luciana A. F. Martimiano e nas
Leia mais