Sistemas Operacionais Aula 4

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

Download "Sistemas Operacionais Aula 4"

Transcrição

1 Sistemas Operacionais Aula 4 Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE

2 O que fazer com essa apresentação

3 Créditos Professor: Anderson L. S. Moreira Disciplina: Sistemas Operacionais Home-page: Aula 4 mostra os conceitos iniciais de processos e comunicação entre processos. Iremos ver noções de pai e filho entre processos e criação nos ambientes Windows e Linux.

4 Agenda Introdução Estrutura do processo Estados do processo Mudanças de estado do processo Criação e eliminação de processos Processos independentes, subprocessos e threads Processos foreground e background Processos do sistema operacional Processos CPU-bound e I/O-bound Sinais

5 Introdução Multiprogramação (revisão) Execução, em paralelo, de múltiplos programas na mesma máquina; Cada instância de um programa em execução denomina-se um processo; Considerando um grau de tempo fino, o paralelismo não é real; Pseudoparalelismo ou pseudoconcorrência implementação de sistemas multiprogramados sobre um computador com um único processador

6 Pseudoconcorrência

7 Introdução Um programa é: Uma seqüência finita de instruções; Uma entidade passiva (que não se altera com o passar do tempo); Armazenado em disco. Um processo é: Uma abstração que representa um programa em execução; Uma entidade dinâmica: seu estado se altera conforme for executando; Armazenado na memória. Pode-se encontrar mais de um processo instanciando um programa único.

8 Processos vs. Programas Programa = Arquivo executável (sem atividade); Um processo é um objeto do sistema operacional que suporta a execução dos programas; Um processo pode, durante a sua vida, executar diversos programas; Um programa ou partes de um programa podem ser compartilhados por diversos processos (ex.: biblioteca compartilhadas, ou seja as DLL no Windows ou.lo do Linux).

9 Estrutura do Processo Estrutura do processo Contexto de Software Contexto de Hardware Programa Espaço de Endereçamento

10 Estrutura do Processo Espaço de endereçamento (virtual): Conjunto de posições de memória acessíveis; Código, dados, e pilha; Dimensão variável. Contexto de software: As instruções do processador executáveis em modo usuário; As funções do sistema operacional; Contexto de hardware (estado interno): Valor dos registradores do processador; Toda a informação necessária para retomar a execução do processo; Memorizado quando o processo é retirado de execução

11 Contexto de Hardware Mudança de Sistema Operacional contexto executando Processo A Processo B Salva registradores do Processo A Carrega registradores do Processo B executando Salva registradores do Processo B Carrega registradores do Processo A executando

12 Modelo: Objeto Processo Propriedades Identificador; Programa; Espaço de Endereçamento; Prioridade; Processo pai; Canais de Entrada / Saída, Arquivos; Quotas de utilização de recursos; Contexto de Segurança; Operações Funções do sistema que atuam sobre os processos Criar Eliminar Esperar pelo término de subprocessos

13 Exemplo: Linux

14 Exemplo: Windows

15 Exemplo: Windows

16 Processos para o SO Imagem de um programa: Segmento de código. Conjunto de recursos de HW alocados pelo SO: Registradores (PC, Stack Pointer ); Espaço de endereçamento (memória); Espaço no disco (arquivos de E/S). Unidade de escalonamento: Estado; Algoritmos de escalonamento para otimizar o uso do HW; Alocar a CPU a um processo implica em uma troca de contexto.

17 Hierarquia entre processos Usuário A Usuário B

18 Processos Independentes, Subprocessos e Threads Estrutura de processos e subprocessos Processo A Processo B Processo C Processo D Processo E

19 Processos Independentes, Subprocessos e Threads Processo multithread Contexto de hardware Contexto de hardware Contexto de hardware Contexto de software Thread 1 Thread 2 Espaço de endereçamento Thread 3

20 Espaço de Endereçamento Estrutura de um processo owner (UID) nome PID registradores gerais prioridade de execução registrador PC data/hora de criação Contexto de Software Contexto de Hardware tempo de processador registrador SP quotas privilégios Programa Espaço de Endereçamento registrador de status endereços de memória principal alocados

21 Bloco de Controle do Processo A estrutura de dados que representa o processo no SO é chamada Process Control Block (PCB) Contém as informações necessárias: Registradores, memória, disco (arquivos); Prioridade; Estado; Histórico (contabilidade); Ponteiro para um outro PCB (lista encadeada); O SO deve manter listas de processos Listas encadeadas; A estrutura PCB é usada para tal; Mantém-se um ponteiro sobre o primeiro e/ou o último PCB.

22 Bloco de Controle do Processo PCB ponteiros Estado do processo Nome do processo Prioridade do processo Registradores Limites de memória Lista de arquivos abertos.

23 Estados do Processo Lista de PCBs Lista de processos em estado de pronto. PCB# 5. PCB# 1 Lista de processos em estado de espera. PCB# 9.. PCB# 2 PCB# 4

24 Exemplo prático No site da disciplina no Material Aula baixe o simulador SOsim e execute; Procure identificar o PCB, e propriedades dos processos; Observe o mapa de memória, o que vocês notam de diferente?

25 Ciclo de vida dos processos Processos nascem: No momento de sua criação (via chamada de sistema Fork, spawn ). Processos vivem: Executam na CPU, liberam a CPU (E/S). Executam: Programas dos usuários; Programas do sistema (daemons); Processos morrem: Ou porque terminaram sua execução Ou porque um outro processo os matou: Erro, acesso não-autorizado, falha.

26 Estados do Processo Os processos podem ter os seguintes estados: Criado; Execução (running); Pronto (ready); Bloqueado (wait); Encerrado ou Término; Suspenso.*

27 Mudanças de Estado Mudanças de estado do processo Estado de Execução Processador b d a c Estado de Bloqueio Estado de Pronto

28 Estado de Suspenso Dois problemas principais para gerar os recursos: A CPU é muito mais rápida do que a memória; A memória é de tamanho finito. Precisa-se, então, poupar a memória. Por isso: Processos bloqueados que estão na memória podem ser transferidos para o disco (swap) até sua E/S ser acabada. Processos prontos podem também ser descarregados para o disco. Chega-se a mais dois estados: Bloqueado, suspenso. Pronto, suspenso.

29 Exercício Desenhar o novo diagrama de estados incluindo os estados pronto, suspenso e bloqueado, suspenso.

30 Mudanças de Estado Mudanças de estado do processo (2) Estado de Execução residente não residente Estado de Bloqueio Estado de Pronto Estado de Bloqueio Estado de Pronto

31 Criação e Eliminação Mudanças de estado do processo (3) Estado de Execução Estado de Término Estado de Bloqueio Estado de Pronto Estado de Criação

32 Criação de um processo IdProcesso = CriarProc (Código, Prioridade,... ) Quando a criação tem sucesso o sistema atribui um identificador interno (PID) ao processo que é retornado na função Na criação de um processo tem de ficar definido qual é o programa que o processo vai executar. Normalmente é especificado um arquivo contendo um programa executável. A função tem frequentemente diversos parâmetros: a prioridade, canais de entrada/saída,...

33 Eliminação de processos Eliminação do processo quando o seu programa termina, libertando todos os recursos e estruturas de dados retidas pelo processo Sair ([Estado]) Eliminação de outro processo EliminarProc ( IdProcesso )

34 Finalizar Processo Filho Em inúmeras situações o processo pai pode querer bloquearse esperando a finalização de um processo filho Estado = EsperarFinalizar (Idprocesso)

35 Processos Foreground e Background Processos foreground e background (a) Processo Foreground entrada saída terminal terminal (b) Processo Background entrada saída arquivo de entrada arquivo de saída

36 Processo Foreground e Background Pipe entrada do Processo A Processo A saída do Processo A entrada do Processo B Processo B saída do Processo B

37 Propriedades especiais dos Processos do Sistema Auditoria e segurança Serviços de rede Contabilização do uso de recursos Contabilização de erros Gerência de impressão Gerência de jobs batch Temporização Comunicação de eventos Interface de comandos (shell)

38 Modelo de Segurança Um processo em execução tem de estar associado a um Usuário (entidade que pode ser responsabilizada pelos seus atos); Os utilizadores são representados no sistema por um código que os identifica (User IDentifier UID); Para facilitar o compartilhamento o usuário pode pertencer a um grupo ou grupos de usuários (identificador por um GID).

39 Controle dos Direitos de Acesso Autorização - operação que valida os direitos do usuário sobre um recurso antes deste poder executar uma operação sobre ele; A autorização baseia-se conceitualmente numa Matriz de Direitos de Acesso; Usuários Objeto Para um dado objeto a coluna da matriz define a Lista de Direitos de Acesso (ACL); Para um dado usuário a linha respectiva define todos os seus direitos normalmente designados por Capacidade.

40 Processos CPU e IO Bound Processos CPU Bound x IO Bound E/ S E/ S UCP UCP (a) CPU-bound tempo (b) I/O-bound tempo

41 Múltiplos fluxos de execução no mesmo processo THREADS

42 Tarefas Mecanismo simples para criar fluxos de execução independentes, compartilhando um mesmo contexto (ou de software ou de hardware)

43 Tarefas vs. Processos Porque não usar processos? Processos obrigam ao isolamento (espaços de endereçamentos disjuntos) dificuldade em compartilhar dados (mas não impossível exemplos?) Eficiência na criação e comutação

44 Tarefas: Exemplos de Utilização Servidor (ex.:, web) Aplicação cliente de correio eletrônico Quais as tarefas em cada caso?

45 Modelos Multitarefa no Modelo Computacional Operações sobre as Tarefas IdTarefa = CriarTarefa(procedimento); EliminarTarefa (IdTarefa); EsperaTarefa (IdTarefa) Bloqueia a tarefa esperando ser finalizada de outra tarefa ou da tarefa referenciada no parâmetro Idtarefa

46 Interface POSIX err = pthread_create (&tid, attr, function, arg) Ponteiro para o identificador da tarefa Utilizado para definir atributos da tarefa como a prioridade Função para executar Parâmetros para a função pthread_exit(void *value_ptr) int pthread_join(pthread_t thread, void **value_ptr) suspende a tarefa chamada até pthread_t thread terminar; continua a execução caso pthread_t thread já tenha sido terminada

47 Exemplo (sequencial)

48 Exemplo (paralelo)

49 Exemplo (paralelo)

50 Programação num ambiente multitarefa As tarefas compartilham o mesmo espaço de endereçamento e portanto têm acesso às mesmas variáveis globais. A modificação e teste das variáveis globais tem de ser efetuada com cuidados especiais para evitar erros de sincronização.

51 Alternativas de Implementação Tarefas-kernel (real) Tarefas-usuário (pseudotarefas)

52 Pseudotarefas (Tarefas-usuário) As tarefas implementadas numa system call no espaço de endereçamento do usuário; Idéia proveniente das linguagens de programação; Núcleo apenas vê um processo; Processo guarda lista de tarefas, e seu respectivo contexto

53 Pseudotarefas (Tarefas-usuário) A comutação entre tarefas explícita função thread-yield Pode ser contornado usando interrupções ( preempção ) Problema: e se uma tarefa faz chamada de bloqueio? Solução? (vale um ponto extra mandar por !)

54 Tarefas-Kernel (ou Tarefas Reais) Implementadas no núcleo do SO Mais comuns Lista de tarefas e respectivo contexto são mantidos pelo núcleo

55 Comparação Tarefas Usuário e Kernel Quero que respondam indicando qual é a melhor opção. Capacidade de utilização em diferentes SOs? Velocidade de criação e comutação? (vs. processos?) Tirar partido de execução paralela em multiprocessadores? Aproveitamento da CPU quando uma tarefa bloqueia (ex: ler do disco)?

56 (Sob o ponto de vista do usuário) LINUX - PROCESSOS

57 Processos em Linux Identificação de um processo Um inteiro designado por PID; Alguns identificadores estão pré atribuídos: processo 0 é o swapper (gerenciador de memória) e o processo 1 init é o de inicialização do sistema; Os processos relacionam-se de forma hierárquica O processo herda todo o ambiente do processo pai; O processo sabe quem é o processo de que descende designado por processo pai; Quando o processo pai termina os subprocessos continuam a executar, são adotados pelo processo de inicialização (pid = 1). Os processos têm prioridades variáveis Veremos as regras de escalonamento mais adiante.

58 Processos em Linux Espaço de endereçamento em modo usuário Organiza-se em três zonas que no Unix original se denominavam por segmentos: texto - código do programa dados - espaço de dados do programa pilha (stack) Espaço de endereçamento em modo kernel No interior do núcleo existe uma zona de dados para cada processo que contem o seu contexto; Uma pilha para execução do processo em modo kernel.

59 Processos em Linux Cada processo também tem associado um contexto de software acessível em modo usuário e que contém diversas variáveis úteis para os programas utilitários ou para as aplicações. Exemplo: HOME=/usr/pjpf SHELL=/bin/csh USER=pjpf PATH=/usr/pjpf/bin/:/usr/local/bin:/bin Este contexto é herdado do processo pai e pode ser modificado livremente porque reside no espaço do usuário. Nos programas em C é acessível através do parâmetro do main ou de uma variável externa: main (arc, arv, envp) extern char **environ

60 Criação de um Processo no Linux id = fork() A função não tem parâmetros, em particular o arquivo que irá executar. A imagem do novo processo é uma cópia da do criador. O contexto de hardware pai é copiado para o filho A função retorna o PID do processo; Este parâmetro assume valores diferentes de acordo com o processo em que se efetua o retorno: ao processo pai é devolvido o pid do filho ao processo filho é devolvido 0-1 em caso de erro Retorno de uma função com valores diferentes não existente na programação sequencial;

61 Exemplo de fork

62 Finalização do Processo Termina o processo, liberta todos os recursos retidos pelo processo, ex.: os arquivos abertos; Assinala ao processo pai seu término. void exit (int status)

63 Finalização do Processo No Linux existe uma função para o processo pai sincronizar com o término de um processo filho; Bloqueia o processo pai até que um dos filhos termine int wait (int *status)

64 Exemplo de Sincronização entre o Processo Pai e o Processo Filho

65 Execução de um Programa A função fork apenas permite lançar processo com o mesmo código problemas? A função exec permite substituir a imagem do processo onde é invocada pela contida num arquivo executável; Não há retorno numa chamada com sucesso. Parâmetros: valores que são passados para os parâmetros de entrada na função main do código que irá executar. Os arquivos mantêm-se abertos.

66 Execução de um Programa int execl(char* arquivo, char* arg0, char* argl,, argn,0) int execv(char* arquivo, char* argv []) Caminho de acesso ao arquivo executável Argumentos para o novo programa. Podem ser passado como ponteiros individuais ou como um array de ponteiros. Estes parâmetros são passados para a função main do novo programa e acessíveis através do argv

67 Exemplo 1 #include <stdio.h> #include <unistd.h> int main() { execl("/bin/ls","ls","test_exec.c",null); printf ("Eu ainda nao estou morto\n"); exit(0); } O comando ls é executado, mas o printf não. Isto mostra que o processo não retorna após a execução do execl.

68 Exemplo 2 #include <stdio.h> #include <unistd.h> int main() { if ( fork()==0 ) execl( "/bin/ls","ls","test_exec.c",null); else { sleep(2) ; /* espera o fim de ls para executar o printf() */ printf ("Eu sou o pai e finalmente posso continuar\n ); } exit(0); } Neste caso, o filho morre após a execução do ls, e o pai continuará a viver, executando então o printf.

69 Shell O shell constitui um bom exemplo da utilização de fork e exec (esqueleto muito simplificado)

70 Autenticação Um processo tem associados dois identificadores que são atribuídos quando o usuário efetua o login (se autentica) perante o sistema: o número de usuário UID - user identification o número de grupo GID - group identification Os UID e GID são obtidos do arquivo /etc/passwd no momento do login O UID e o GID são herdados pelos processos filhos superuser é um UID especial zero. Normalmente está associado ao utilizador root (privilegiado).

71 Proteção no Acesso de Recursos A proteção dos recursos em Linux é uma versão simplificada do modelo de Listas de Controle de Acesso (ACL); Para um recurso (arquivo, socket, etc.) a proteção é definida em três categorias: Dono (owner): usuário que normalmente criou o recurso; Grupo (group): conjunto de usuários com afinidades de trabalho que justificam direitos semelhantes; Outros usuários (world).

72 SetUID Mecanismo de Set UID (SUID) permite alterar dinamicamente o usuário; Duas variantes: bit de setuid, ou função sistema setuid. Exercício: Procure exemplos de mudança de usuários por SetUID. Será sorteado um para explicar.

73 Bit SetUID No arquivo executável pode existir uma indicação especial que na execução do exec chame a alteração do uid; O processo assume a identidade do dono do arquivo durante a execução do programa. Exemplo: comando passwd Operação crítica para a segurança

74 Funções Sistema de identificação Real UID e GID UID e GID originais do processo Effective UID e GID usado para verificar permissões de acesso e que pode ter sido modificado pelo setuid getpid() - devolve a identificação do processo getuid(), getgid() devolvem a identificação real do usuário geteuid(), getegid() devolvem a identificação efetiva do usuário setuid(uid), setgid(gid) altera a identificação efetiva do usuário para uid e gid, só pode ser invocada por processos com privilégio de superusuário

75 Sob o ponto de vista do usuário WINDOWS - PROCESSOS

76 Processos Windows Um processo é um detentor de recursos usados pelas tarefas; Os fluxos de execução são as threads; Processa uma ou mais threads. Contexto de hardware Contexto de hardware Contexto de hardware Contexto de software Thread 1 Thread 2 Espaço de endereçamento Thread 3

77 Processos Um processo em Windows é constituído por: Um espaço de endereçamento; Um programa executável; Pelo menos uma tarefa; Uma lista de referências (handles - manipuladores) para vários objetos (quaisquer recursos do sistema); Um contexto de segurança; Um identificador único do processo - process ID.

78 Threads no Windows Tarefas reais. Componentes fundamentais: Os registos do CPU que representam o estado do processador Duas pilhas (stacks), uma para execução em modo kernel e outra para execução em modo usuário; Uma zona de memória privada (thread-localstorage - TLS) para uso pelos subsistemas e DLLs Um identificador único - thread ID

79 Fibers Pseudotarefas geridas no espaço de endereçamento do usuário. Uma thread pode ter múltiplas fibers; Fibers não são vistas pelo núcleo; As fibers são criadas e comutadas explicitamente com systems call (chamadas); Win32 mas que não produzem chamadas ao sistema.

80 Jobs Grupo de processos Permite gerenciamento uniforme (e.x., terminar em conjunto) Um processo só pode ser associado a um job e em principio todos os seus descendentes pertencem ao mesmo job

81 Segurança O contexto de segurança de um processo ou de uma thread é um objeto designado Access Token; Um Access Token regista os usuários, grupos, máquinas, e domínios que estão associados ao processo. Sempre que é acessado um objeto no sistema o executive valida o token contra uma ACL Acesso concedido se não existir nenhuma recusa, e existir pelo menos uma permissão num dos utilizadores, grupos, etc.

82 Criação de processos Win32 BOOL CreateProcess(LPCTSTR ApplicationName, Nome do programa executável. Se for NULL o Command Line tem de ter o nome do executável Linha de comando para o programa que quer criar LPTSTR CommandLine, LPSECURITY_ATTRIBUTES ProcessAttributes, LPSECURITY_ATTRIBUTES ThreadAttributes, BOOL InheritHandles, DWORD CreationFlags, LPVOID Environment, LPCTSTR CurrentDirectory, LPSTARTUPINFO StartupInfo, LPPROCESS_INFORMATION ProcessInformation); Estrutura retornada pelo núcleo com a informação de controle Atributos de segurança do processo e da tarefa Indica se o novo processo herda os tokens do processo pai Várias flags entre elas a que permite definir classes de prioridades Ambiente de execução do processo criado

83 Criação de processos Win32 Diferenças vs. fork+exec: No Windows não se cria automaticamente uma relação pai-filho. Embora o processo pai fique com um handle para o filho. Um processo tem associado uma thread (main thread). Na criação do processo pode definir a classe de prioridade a que as threads do processo ficam associadas. A criação com sucesso retorna um valor diferente de zero.

84 Criação de processos Win32

85 Eliminação de Processos Existem três formas para terminar um processo Chamada a função ExitProcess que autotermina o processo Chamada a função TerminateProcess que permite a um processo com um determinado privilégio terminar outro processo Terminando todas as threads de um processo

86 Eliminação de Processos

87 Criação Thread HANDLE CreateThread (LPSECURITY_ATTRIBUTES ThreadAttr, DWORD staksz, LPTHREAD_START_ROUTINE StrtAddr, Tamanho da pilha LPVOID Parm, DWORD CreatFlgs, LPDWORD ThreadId); Um parâmetro pode ser passado a thread Handle para a thread ou NULL se falhou Atributos de segurança Endereço da função inicial

88 Esperar pelo termino de Subprocesso WaitForSingleObject(handle, timeout) Função genérica de espera sobre um objeto (entidade do sistema operacional)

89 Rotinas Assíncronas para Tratamento de acontecimentos assíncronos e exceções EVENTOS

90 Eventos Uso de sinais [ctrl-c] interrupção Sistema Operacional sinal Processo

91 Rotinas Assíncronas Certos acontecimentos devem ser tratados pelas aplicações, embora não seja possível prever a sua ocorrência Ex: Ctrl-C Ex: Ação desencadeada por um timeout Como tratá-los na programação sequencial? Poderia lançar uma tarefa por acontecimento. Desvantagem? Alternativa: Rotinas assíncronas associadas aos acontecimentos (eventos)

92 Modelo de Eventos

93 Rotinas Assíncronas

94 Sinais Sinais, interrupções e exceções Processo Processo Sinai s Sistema Operacional Interrupções Exceções Hardware

95 Sinais Acontecimentos Assíncronos no Linux Definidos em signal.h Signal SIGALRM SIGFPE SIGINT SIGQUIT SIGKILL SIGPIPE SIGSEGV SIGTERM SIGUSR1 SIGUSR1 Causa O relógio expirou Exceção Divisão por zero O usuário apertou a tecla para interromper o processo (normalmente o CRTL+C) O utilizador quer terminar o processo e provocar um core dump Signal para terminar o processo. Não pode ser tratado O processo escreveu para um pipe que não tem receptores Acesso a uma posição de memória inválida O usuário pretende terminar ordenadamente o processo Explicitamente Definido pelo usuário desencadeado por Definido pelo usuário outro processo Interação com o terminal Desencadea do por interrupção de HW

96 Tratamento de sinais Possibilidades: Terminar o processo. Ignorar sinal. Alguns sinais como o SIGKILL não podem ser ignorados. Porquê? Executar rotina de tratamento (handler) Associarmos rotinas de tratamento a sinal pela função do sistema signal Cada sinal tem um tratamento por omissão, que pode ser terminar ou ignorar

97 Chamada Sistema Signal void (*signal (int sig, void (*func)(int))) (int); A função retorna um ponteiro para função anteriormente associada ao sinal Identificador do sinal para o qual se pretende definir um handler Ponteiro para a Função ou macro especifico: SIG_DFL ação por omissão SIG_IGN ignorar o sinal Parâmetro para a função de tratamento

98 Exemplo #include <stdio.h> #include <signal.h> apanhactrlc () { char ch; printf ("Quer de fato finalizar a execucao?\n"); ch = getchar(); if (ch == 's') exit(0); else { printf ("Entao vamos continuar\n"); signal (SIGINT, apanhactrlc); } } void main () { signal (SIGINT, apanhactrlc); printf("associou uma rotina ao signal SIGINT\n"); for (;;){ printf(". "); sleep (1/2); } }

99 Chamada do sistema kill Envia um sinal ao processo Nome enganador. Porquê?

100 Outras funções associadas aos sinais unsigned alarm (unsigned int segundos); o sinal SIGALRM é enviado para o processo depois de passado o número de segundos especificados. Se o argumento for zero, o envio é cancelado. pause(); aguarda a chegada de um signal unsigned sleep (unsigned int segundos); A função faz um alarm e se bloqueia à espera do sinal

101 Dúvidas?

102 Não percam no próximo episódio! Implementação de processos; E muito mais! Dúvidas?

Eventos. Rotinas Assíncronas

Eventos. Rotinas Assíncronas Eventos Rotinas Assíncronas para Tratamento de acontecimentos assíncronos e excepções Rotinas Assíncronas Certos acontecimentos devem ser tratados pelas aplicações, embora não seja possível prever a sua

Leia mais

Processos. Sistemas Operativos 2009 / Multiprogramação

Processos. Sistemas Operativos 2009 / Multiprogramação Processos Sistemas Operativos 2009 / 2010 Multiprogramação Execução, em paralelo, de múltiplos programas na mesma máquina Cada instância de um programa em execução denomina-se um processo Considerando

Leia mais

Processos. Sistemas Operativos 2008 / Multiprogramação

Processos. Sistemas Operativos 2008 / Multiprogramação Processos Sistemas Operativos 2008 / 2009 Multiprogramação Execução, em paralelo, de múltiplos programas na mesma máquina Cada instância de um programa em execução denomina-se um processo Considerando

Leia mais

Processos. Sistemas Operativos 2011 / Multiprogramação. Execução, em paralelo, de múltiplos programas na mesma máquina

Processos. Sistemas Operativos 2011 / Multiprogramação. Execução, em paralelo, de múltiplos programas na mesma máquina Processos Sistemas Operativos 2011 / 2012 Multiprogramação Execução, em paralelo, de múltiplos programas na mesma máquina Cada instância de um programa em execução denomina-se um processo Considerando

Leia mais

1. Processos. Núcleo, Processos e Tarefas. Page 1. Processo Processo Processo. Sistemas Operativos 2011 / Departamento de Engenharia Informática

1. Processos. Núcleo, Processos e Tarefas. Page 1. Processo Processo Processo. Sistemas Operativos 2011 / Departamento de Engenharia Informática Núcleo, Processos e Tarefas Sistemas Operativos 2011 / 2012 1. Processos Processo Processo Processo Page 1 1 Multiprogramação Execução, em paralelo, de múltiplos programas na mesma máquina Cada instância

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 Operativos. Processos, threads e eventos. Rui Maranhão

Sistemas Operativos. Processos, threads e eventos. Rui Maranhão Sistemas Operativos Processos, threads e eventos Rui Maranhão (rma@fe.up.pt) Multi-tarefa execução, em paralelo, de programas no mesmo computador cada instância em execução denomina-se processo (conceito

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

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

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

Processos. Sistemas Operativos 2015 / Multiprogramação. Execução, em paralelo, de múltiplos programas na mesma máquina

Processos. Sistemas Operativos 2015 / Multiprogramação. Execução, em paralelo, de múltiplos programas na mesma máquina Processos Sistemas Operativos 2015 / 2016 Multiprogramação Execução, em paralelo, de múltiplos programas na mesma máquina Cada instância de um programa em execução denomina-se um processo Considerando

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

Processos, tarefas e núcleo

Processos, tarefas e núcleo Processos, tarefas e núcleo Sistemas Operativos 2012 / 2013 1. Processos Processo Processo Processo Page 1 1 Multiprogramação Execução, em paralelo, de múltiplos programas na mesma máquina Cada instância

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

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

Processos. Conceitos Básicos

Processos. Conceitos Básicos Processos Conceitos Básicos Processo Abstração usada pelo S.O. para designar a execução de um programa. (1) É caracterizado por uma thread de execução, um estado corrente e um conjunto associado de recursos

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

Processos. Processo (1) Processo (2) Processo (3) Conceitos Básicos

Processos. 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 mais

Processos. Conceitos Básicos

Processos. 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 mais

Processos. Conceitos Básicos

Processos. 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 mais

Sistemas Operacionais. Processos e Threads

Sistemas 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 mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Programação Concorrente Introdução Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Introdução Programa Seqüencial Representado por apenas um processo Existe apenas

Leia mais

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

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

Leia mais

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

Threads. Agenda. Threads. Processo. Processo. Processo. Processo. (c) Volnys B. Bernal Versão de 22/3/2012

Threads. Agenda. Threads. Processo. Processo. Processo. Processo. (c) Volnys B. Bernal Versão de 22/3/2012 1 2005-2009 Volnys Bernal 1 2005-2009 Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Interface de threads Interfaces de threads de usuário x threads de núcleo

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

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

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

Leia mais

Arquitetura de Sistemas Operativos

Arquitetura de Sistemas Operativos Arquitetura de Sistemas Operativos Sistemas Operativos 2011/2012 1 Um processo é uma instância em execução de um programa. No sistema operativo Unix a única forma de se criar um novo processo (processo-filho)

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

Tratamento de Sinais

Tratamento de Sinais Tratamento de Sinais Luiz Affonso Guedes 1 Ivanovitch Silva 1 affonso@dca.ufrn.br ivan@dca.ufrn.br 1 Universidade Federal do Rio Grande do Norte 25 de setembro de 2009 Sinais DCA0109 - Prática de programação

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS 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 mais

Processos. Pedro Cruz. EEL770 Sistemas Operacionais

Processos. Pedro Cruz. EEL770 Sistemas Operacionais Processos Pedro Cruz EEL770 Sistemas Operacionais Datas importantes 02 de Abril Proposta de trabalho 09 de Abril Confirmação de proposta 07 de Maio Primeira apresentação do trabalho 09 de Maio Entrega

Leia mais

Arquitetura de Sistemas Operativos

Arquitetura 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 mais

Processos. Pedro Cruz. EEL770 Sistemas Operacionais

Processos. 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 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

14/05/2017. Conceitos de Processos. Conceitos de Processos. Conceito de processo

14/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 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

Sistemas Operacionais Aula 3

Sistemas Operacionais Aula 3 Sistemas Operacionais Aula 3 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

! Os primeiros computadores permitiam a execução de apenas um programa de cada vez, com acesso completo aos recursos do sistema

! Os primeiros computadores permitiam a execução de apenas um programa de cada vez, com acesso completo aos recursos do sistema Background! Os primeiros computadores permitiam a execução de apenas um programa de cada vez, com acesso completo aos recursos do sistema! Os sistemas actuais suportam o carregamento de múltiplos programas

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS 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 mais

Prof. Kleber R. Rovai

Prof. 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 mais

Na Aula Anterior... Interrupções por software e hardware; Temporizadores; RTC; Temporizadores via software. Relação Processos Multiprogramação

Na Aula Anterior... Interrupções por software e hardware; Temporizadores; RTC; Temporizadores via software. Relação Processos Multiprogramação GSI018 Sistemas Operacionais 26/08/2016 Gerência de Processos Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior... Interrupções por software

Leia mais

Unix Processos. Geraldo Braz Junior

Unix Processos. Geraldo Braz Junior Unix Processos Geraldo Braz Junior 1 Processos no Unix Unix é multiprogramado; Para cada processo é atribuído um Pid; Diversos daemons são executados: Cron Processamento de emails Gerenciamento da fila

Leia mais

Estrutura dos Sistemas Operacionais. Sérgio Portari Júnior

Estrutura 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 mais

Sistemas Operacionais

Sistemas 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 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

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

Na Aula Anterior... O Conceito de Threads

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

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

Noções de Processos. Plano da aula. Serviços oferecidos. Definição & Objetivos. Definição & Objetivos. Sistemas Operacionais : introdução

Noçõ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 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

Introdução a Arquitetura de Sistemas Operacionais. Parte 01

Introdução a Arquitetura de Sistemas Operacionais. Parte 01 Introdução a Arquitetura de Sistemas Operacionais Parte 01 Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Julho / 2017 1/44 Nota Com exceção das figuras

Leia mais

Sistemas Operacionais - UCSAL Professor : Marco Antônio C. Câmara Primeira Lista de Exercícios

Sistemas 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 mais

Sistemas Operacionais. BSI / UAB 2013 Hélio Crestana Guardia

Sistemas Operacionais. BSI / UAB 2013 Hélio Crestana Guardia Sistemas Operacionais BSI / UAB 2013 Hélio Crestana Guardia Visão do SO SO: camada de software, executado diretamente sobre o hardware (físico ou virtual) Permite que hardware seja usado de forma eficiente

Leia mais

Segurança em Sistemas Operativos

Segurança em Sistemas Operativos Segurança em Sistemas Operativos André Zúquete Segurança Informática e nas Organizações 1 Sistema Operativo Servidor Aplicação Função no núcleo do sistema operativo (kernel) Virtualizar o hardware Modelo

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

AULA Nº 08 SISTEMAS OPERACIONAIS. Threads

AULA Nº 08 SISTEMAS OPERACIONAIS. Threads AULA Nº 08 SISTEMAS OPERACIONAIS Threads Contextualizando Na aula passada Sincronização de Processos Aula de hoje Threads O Modelo de Processo 1) Utilizado para agrupar recursos 2) Um espaço de endereço

Leia mais

Complementos de Programação. Engenharia Electrotécnica - Electrónica e Computadores. Ano Lectivo: 2005/2006. Ana Madureira. Gestão de Processos

Complementos de Programação. Engenharia Electrotécnica - Electrónica e Computadores. Ano Lectivo: 2005/2006. Ana Madureira. Gestão de Processos Complementos de Programação Engenharia Electrotécnica - Electrónica e Computadores Ano Lectivo: 2005/2006 Ana Madureira Gestão de Processos 04-12-2006 1 Objectivos Os alunos deverão ser capazes de ter

Leia mais

Notas da Aula 2 - Fundamentos de Sistemas Operacionais

Notas 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 mais

Processos. Volnys Borges Bernal. Edson Toshimi Midorikawa

Processos. Volnys Borges Bernal.  Edson Toshimi Midorikawa Volnys & Midorikawa (c) 1 Processos Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Edson Toshimi Midorikawa emidorik@lsi.usp.br http://www.lsi.usp.br/~emidorik Laboratório de Sistemas

Leia mais

Gestor de Processos. Gestor de Processos

Gestor de Processos. Gestor de Processos Gestor de Processos Núcleo do Sistema Operativo Gestor de Processos Entidade do núcleo responsável por suportar a execução dos processos Gestão das Interrupções Multiplexagem do Processador Despacho efectua

Leia mais

Processos. (c) 2005 Volnys B. Bernal Versão de 15/3/2006. Agenda. Processos. Introdução aos Processos. Introdução aos Processos

Processos. (c) 2005 Volnys B. Bernal Versão de 15/3/2006. Agenda. Processos. Introdução aos Processos. Introdução aos Processos 1 1997-2005 - Volnys Bernal 1 1997-2005 - Volnys Bernal 2 Agenda Processos Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Laboratório de Sistemas Integráveis http://www.lsi.usp.br/!

Leia mais

SOP Sistemas Operacionais Módulo 04: Processo

SOP 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 mais

Sistemas de Computação O Sistema Operacional Unix

Sistemas de Computação O Sistema Operacional Unix Sistemas de Computação O Sistema Operacional Unix 3/8/16 1 Introdução Interrupções de hardware Execução de uma Chamada de Sistema Alocação de memória Chamadas de Sistema típicas Arquitetura do Unix Visão

Leia mais

Sistemas Operacionais. Processos IC - UFF

Sistemas 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 mais

Estrutura do Sistema Operacional

Estrutura do Sistema Operacional Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Aula 04 Estrutura do Sistema Operacional 2 1 Estrutura do Sistema Operacional

Leia mais

Figura 01 Programa e Processo

Figura 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 mais

Processos Volnys B. Bernal Versão de 20/03/2015. Agenda. Processos. Programa x Processo. Programa x Processo. Programa.

Processos Volnys B. Bernal Versão de 20/03/2015. Agenda. Processos. Programa x Processo. Programa x Processo. Programa. 1 2000-2015 - Volnys Bernal 1 2000-2015 - Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos (PSI) Escola Politécnica da USP x Concorrência x Paralelismo

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução Inst tituto de Info ormátic ca - UF FRGS Sistemas Operacionais i Multithreading Aula 04 Necessidade de executar atividades concorrentes, porém cooperantes ou que compartilhem dados endereçamento

Leia mais

SSC0640 Sistemas Operacionais I

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

Leia mais

Sistemas Operacionais. Conceito de Processos

Sistemas 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 mais

Sistemas Operacionais II

Sistemas 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 mais

Segurança em Sistemas Operativos

Segurança em Sistemas Operativos Segurança em Sistemas Operativos André Zúquete Segurança Informática e nas Organizações 1 Sistema Operativo Servidor Aplicação modo utilizador: Execução no modo normal do CPU, sem acesso a instruções privilegiadas

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução Sistemas Operacionais Multithreading (multiprogramação leve) Aula 04 Forma diferente de enxergar a abstração de processo = Conjunto de recursos relacionados endereçamento, arquivos, filhos,

Leia mais

Concorrência em Processos

Concorrê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 mais

Thread. Thread. Sistemas Operacionais. Leonard B. Moreira. UNIVERSIDADE ESTÁCIO DE SÁ fevereiro, / 41

Thread. 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 mais

Processos ao nível do SO

Processos ao nível do SO Processos ao nível do SO José C. Cunha, DI-FCT/UNL Concorrência em sistemas de operação Periféricos operando simultaneamente Multiprogramação Eventos em instantes imprevisíveis SO monolíticos Programas

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

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

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

Exercícios Cap I. 1.1, 1.2, 1.3 (somente letras (a), (b) e (c)) , 1.8 e 1.12 IC - UFF

Exercícios Cap I. 1.1, 1.2, 1.3 (somente letras (a), (b) e (c)) , 1.8 e 1.12 IC - UFF Exercícios Cap I 1.1, 1.2, 1.3 (somente letras (a), (b) e (c)) 1.5 1.7, 1.8 e 1.12 Sistemas Operacionais Visão geral e evolução dos SOs Sistema Operacional? Um programa que controla a execução dos programas

Leia mais

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

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

Leia mais

Técnicas Avançadas de Programação

Té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 mais

EEL770 Sistemas Operacionais

EEL770 Sistemas Operacionais EEL770 Sistemas Operacionais Parte 2: Concorrência Conceitos básicos e ciclo de vida de threads Prof. Rodrigo de Souza Couto Concorrência Múltiplas atividades que podem ocorrer ao mesmo tempo Exemplos

Leia mais

Sistemas Distribuídos Aula 2

Sistemas Distribuídos Aula 2 Sistemas Distribuídos Aula 2 Aula passada Logísitica Regras do jogo Definição e características Exemplos Aula de hoje Processos IPC Características Ex. sinais, pipes, sockets Objetivos Processos O que

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

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

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

Leia mais

Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Sistemas Operacionais Prof. Fabrício Sérgio de Paula

Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Sistemas Operacionais Prof. Fabrício Sérgio de Paula Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Sistemas Operacionais Prof. Fabrício Sérgio de Paula Tópicos Conceitos Modelos multithreads Bibliotecas Opções de criação

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

Arquitetura de Sistemas Operacionais

Arquitetura de Sistemas Operacionais Arquitetura de Sistemas Operacionais Francis Berenger Machado / Luiz Paulo Maia Processo Profº Antonio Carlos dos S. Souza Estrutura do Processo Contexto de Software Contexto de Hardware Programa Espaço

Leia mais

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

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

Leia mais

Arquitetura de Computadores Sistemas Operacionais II

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

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 7: Implementação de Processos e Threads Diego Passos Revisão Programação Concorrente e Multiprogramação SOs modernos permitem diversos processos em memória. Cada

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

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