Fundamentos de Sistemas Operacionais
|
|
|
- Ana Lívia Figueiredo Martini
- 8 Há anos
- Visualizações:
Transcrição
1 Fundamentos de Sistemas Operacionais Aula 4: Programação Concorrente Diego Passos
2 Últimas Aulas
3 Processos Compostos por: Código (programa). Estado (memória, registradores). Em um sistema com multiprogramação: Vários processos residentes em memória. Várias aplicações rodam simultaneamente. "Processo é um programa em execução". Exemplo de um único programa que usa mais de um processo. Função fork().
4 Threads
5 Threads Similares a processos. "Processos leves". Definem uma "linha de execução" em um programa. Sequência de instruções a serem executadas. Diferença entre processo e thread: espaço de endereçamento. Processos diferentes têm espaços de endereçamento diferentes. Threads diferentes (de um mesmo processo) compartilham o mesmo espaço de endereçamento. Memória compartilhada.
6 Threads (mais) Toda thread pertence a um processo. O conceito de thread não existe sem o conceito de processo. Todo processo tem ao menos uma thread. Uma sequência de instruções a serem executadas.
7 Vantagens e Desvantagens Threads são mais "leves". Mudança de contexto entre duas threads do mesmo processo é rápida. Poucas informações de estado para salvar/restaurar. Threads (de um mesmo processo) compartilham memória. Comunicação é mais fácil que entre processos. Porém, uma thread pode interferir na execução da outra. Os erros em uma podem se propagar para as outras. Programas podem ser mais difíceis de depurar.
8 Programação Concorrente
9 Definição Utilização de mais de uma "linha de execução" em um mesmo programa. Vários processos para um único programa. e.g., utilizando a função fork(). Várias threads em um mesmo processo. Ou uma mistura dos dois. Exemplo: Servidor web tem um processo principal que espera conexões dos usuários. Para cada nova conexão, é criado um novo processo (ou thread). Processo (thread) principal volta a esperar por conexões.
10 Programa Paralelo vs. Sequencial Programa Sequencial: Uma única linha de execução. Um processo com uma thread. Programa Paralelo: Múltiplas linhas de execução. Vários processos ou threads. Outro nome para a Programação Concorrente.
11 Objetivos da Programação Concorrente Permite a separação lógica das funcionalidades de um programa. Espera por conexões. Atendimento aos clientes. Simplifica a escrita de alguns programas. Existem programas intrinsecamente paralelos. Melhora a utilização dos processadores modernos. Vários núcleos. Ambientes multiprocessados. Operações de E/S são sobrepostas com processamento.
12 Sobreposição de Operações de E/S Versão Sequencial Versão Paralela (Concorrente)
13 Desvantagens da Programação Concorrente Coordenação dos processos (threads) pode ser complexa. Em termos de programação. Erros "não-intuitivos" ocorrem. Principalmente com threads. É comum fazer suposições inválidas: e.g, processos executam na mesma "velocidade". Condições de erro são difíceis de reproduzir. Depuração de programas paralelos tende a ser mais difícil. Ordem de execução dos processos (threads) é imprevisível.
14 Tipos de Paralelismo Paralelismo Real: Ocorre apenas em máquinas multiprocessadas. Processos (threads) são executados realmente simultaneamente. Paralelismo aparente: Ocorre em maquinas monoprocessadas. Processos (threads) são executados concomitantemente.
15 Especificação de Paralelismo
16 Diferentes Representações Sintaxe de criação de um programa paralelo depende do sistema. Chamadas podem ser ligeiramente (ou extremamente) diferentes em SOs diferentes. Porém, existem tipos "gerais" de especificação de paralelismo.
17 Paralelismo Explícito Paralelismo é descrito explicitamente no programa. Três funcionalidades básicas: Criação de um processo (thread): create_process(). Encerramento de um processo (thread): exit(). Espera pelo encerramento de um processo (thread): wait_process().
18 Paralelismo Explícito (Exemplo) int main() { f1 = create_process(codigo_filho); f2 = create_process(codigo_filho); wait_process(f1); wait_process(f2); } return(0); void codigo_filho() { } printf("alguma coisa\n"); exit();
19 Paralelismo Implícito Programador apenas indica quais "regiões" são paralelizáveis. Compilador é responsável por criar os respectivos processos (threads). Dois comandos básicos: Parbegin (início da região paralela). Parend (fim da região paralela).
20 Paralelismo Implícito (Exemplo) int main() { } Parbegin codigo_filho(); codigo_filho(); Parend return(0); Função codigo_filho() é executada duas vezes. Mas por dois processos (threads) diferentes. void codigo_filho() { } printf("alguma coisa\n"); exit();
21 Paralelismo Implícito vs. Explícito A versão explícita é mais comum. Em geral, as chamadas de sistema são deste tipo. e.g., função fork(). Há algumas linguagens (e compiladores) que implementam o paralelismo implícito. Exemplo: biblioteca OpenMP. Paralelismo implícito é mais simples. Programador não se preocupa com como os processos (threads) são alocados. Paralelismo explícito é mais flexivel. Programador tem total controle sobre os processos (threads).
22 Grafo de Precedência Algumas vezes, é preciso garantir a ordem em que certos eventos ocorrem em um programa paralelo. Exemplo: Garantir que o primeiro processo filho só morra após o início do segundo processo filho. Nem sempre é fácil nas representações implícita e explícita. Envolve a utilização de comunicação entre os processos (threads) filhos.
23 Grafo de Precedência (Exemplo)
24 Compartilhamento de Recursos
25 Recursos Comuns Processos (threads) de um programa paralelo geralmente compartilham recursos. Variáveis. Arquivos. Sockets.... Estes recursos, em geral, estão ligados à comunicação entre processos (threads) do programa paralelo.
26 Compartilhamento de Memória Tipo mais comum de recurso compartilhado. Threads compartilham todo o espaço de endereçamento. Processos podem requisitar do SO uma área de memória compartilhada. Processos (threads) alteram o valor de variáveis compartilhadas para trocar informações. e.g., segundo processo filho pode alterar a variável inicio_filho_2 de 0 para 1 para informar iniciou seu processamento.
27 Produtor-Consumidor Aplicação comum em vários sistemas. Há processos (threads) produtores. Geram dados quaisquer. Há um processo (thread) consumidor. Pega dados dos produtores e realiza alguma operação. Exemplo: servidor impressão. Processos (threads) geram dados a serem impressos. Um único processo é responsável por coletar os dados e realizar a operação de E/S de impressão. Múltiplas impressões podem ser requisitadas simultaneamente.
28 Produtor-Consumidor (Funcionamento) Há uma região de memória compartilhada por todos. Spool de impressão. Em geral, é um Buffer Circular. Ao adicionar um novo elemento, produtor avança o ponteiro do próxima posição livre. Ao coletar um dado, consumidor avança ponteiro da próxima posição livre.
29 Região (Ou Seção) Crítica
30 Definição É um trecho de código de um programa. Especial, pois alguma manipulação de variável compartilhada acontece ali. Em outras palavras: É um trecho de um programa paralelo no qual existe acesso a variáveis compartilhadas entre dois ou mais processos (threads).
31 Importância da Região Crítica A ordem de execução dos processos (threads) é imprevisível. Acessos concorrentes podem causar problemas. Exemplo: Considere 'x' uma variável compartilhada por duas threads. Seu valor inicial é 0 Qual o valor final de 'x'? Thread 1: x = x + 1; Thread 2: x = x + 1;
32 Importância da Região Crítica (mais) O trecho executado pelas threads em assembly se torna: MOVE x, ACC ADD ACC, 1 MOVE ACC, x Suponha que a Thread 1 começa a execução, porém é interrompida imediatamente antes da segunda instrução. A Thread 2 começa sua execução, lendo o valor de 'x' da memória. Valor ainda é 0. Thread 1 foi interrompida antes que pudesse armazenar em memória o novo valor de 'x'. Ao final das execuções, x = 1.
33 Outro Exemplo: Produtor-Consumidor Suponha dois produtores simultâneos. P1 insere "Dado 3" na próxima posição livre. Mas é interrompido antes de atualizar o ponteiro. P2 executa e insere "Dado 4" na posição antiga do ponteiro. "Dado 3" é sobreescrito.
34 Condição de Corrida Problema decorrente da execução simultânea de múltiplos processos na seção crítica. Resultados inesperados (e diferentes) ocorrem. O resultado depende da ordem de execução dos processos (threads). Operações não são atômicas. Como solucionar? Evitar que processos (threads) diferentes possam estar na região crítica simultaneamente. Conhecido como Exclusão Mútua. Tornar operações sobre recursos compartilhados atômicas.
35 Operação Atômica Operação que não pode ser interrompida. Exemplo: a execução de uma única instrução de máquina é atômica. Não há como interromper a operação uma vez que ela tenha sido iniciada. Se a manipulação de uma região compartilhada de memória é atômica, não há condição de corrida.
36 Revisão
37 Para Lembrar Definição de Programação Concorrente. Tipos de paralelismo. Real, aparente. Representações implícita e explícita de paralelismo. Razões para adoção de paralelismo. Ordem de execução de um programa paralelo é imprevisível. Não se pode fazer suposições. Compartilhamento de recursos. Recursos típicos. Razões para compartilhar. O que é região (seção) crítica é qual a sua importância. O que é uma condição de corrida. O que é exclusão mútua. O que é uma operação atômica.
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
Introdução OpenMP. Nielsen Castelo Damasceno
Introdução OpenMP Nielsen Castelo Damasceno Computação de auto desempenho Processamento Paralelo Memória Distribuída e Compartilhada Modelo de programação OpenMP Métricas de Desempenho Computação de auto
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
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 12: Revisão para a P1 Diego Passos Capítulo 1 Sistemas Operacionais São programas. Duas funções: Gerenciar os recursos do hardware. Dividir entre os vários processos.
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
Ferramentas 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
Notas 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
Notas da Aula 4 - Fundamentos de Sistemas Operacionais
Notas da Aula 4 - Fundamentos de Sistemas Operacionais 1. Threads Threads são linhas de execução dentro de um processo. Quando um processo é criado, ele tem uma única linha de execução, ou thread. Esta
LINGUAGENS LÓGICAS E PROGRAMAÇÃO CONCORRENTE
LINGUAGENS LÓGICAS E PROGRAMAÇÃO CONCORRENTE Adriana Nery Programação lógica Paradigma Predicados Dedutiva) baseado no Cálculo de (Lógica Matemática Exemplo: Zé Carioca é um papagaio. Todo papagaio é uma
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 6: Monitores, Troca de Mensagens e Deadlock Diego Passos Última Aulas Mecanismos de Exclusão Mútua Operações atômicas. Protocolos de controle de acesso. Spin-locks.
Sistemas Operacionais: Sincronização entre processos
Sistemas Operacionais: Sincronização entre processos Sincronização Programa concorrente Executado por diversos processos Acesso concorrente a dados Paralelismo real x Paralelismo aparente Multiprocessadores:
SOP - TADS Threads. Revisão Ultima aula. Programa em execução Cada processo têm sua própria CPU
SOP - TADS Threads Prof. Ricardo José Pfitscher [email protected] Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Revisão Ultima aula Processos [1/3] Conceito:
Sincronização e Comunicação entre Processos. Adão de Melo Neto
Sincronização e Comunicação entre Processos Adão de Melo Neto 1 INTRODUÇÃO Em um sistema multitarefa os processos alternam sua execução segundo critérios de escalonamento estabelecidos pelo sistema operacional.
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 [email protected] Multiprogramação Luiz Affonso Guedes 1 Luiz Affonso Guedes 2 Conteúdo Caracterização de um SO Moderno
INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUIDA PROVA 2 03/07/2017 ALUNO
INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUIDA PROVA 2 03/07/2017 ALUNO 1. Sockets - Indicar (Verdade/Falso): (a) (Verdade/Falso) A comunicação entre processos consiste em transmitir uma mensagem entre o
Computadores e Programação (DCC/UFRJ)
Computadores e Programação (DCC/UFRJ) Aula 3: 1 2 3 Abstrações do Sistema Operacional Memória virtual Abstração que dá a cada processo a ilusão de que ele possui uso exclusivo da memória principal Todo
Linguagens de Programação Classificação
Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda
Parte I Multiprocessamento
Sistemas Operacionais I Estrutura dos SO Prof. Gregorio Perez [email protected] 2004 Parte I Multiprocessamento Roteiro 1 Multiprocessadores em Sistemas Fortemente Acoplados 1.1 1.2 1.3 Processamento
Aula 6: Comunicação entre processos. Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela
Aula 6: Comunicação entre processos Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela (-- motivação --) Processos em execução no sistema operacional podem ser: Independentes:
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
Programação concorrente (processos e threads)
Programação concorrente (processos e threads) Programação concorrente Por que precisamos dela? Para utilizar o processador completamente Paralelismo entre CPU e dispositivos de I/O Para modelar o paralelismo
AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA
Sistemas Distribuídos Aula 3
Sistemas Distribuídos Aula 3 Aula passada Processos IPC Características Ex. sinais, pipes, sockets Aula de hoje Threads Kernel level User level Escalonamento Motivação: Servidor Web Considere Servidor
Sistemas 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
INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUIDA PROVA 2 03/07/2017 ALUNO
INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUIDA PROVA 2 03/07/2017 ALUNO 1. Sockets - Indicar (Verdade/Falso): (a) (Verdade/Falso) A comunicação entre processos consiste em transmitir uma mensagem entre o
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
OpenMP: Variáveis de Ambiente
Treinamento OpenMP C/C++ 1 TREINAMENTO OpenMP C/C++ Módulo 1 Computação de Alto Desempenho Módulo 2 OpenMP: Construtores Paralelos Módulo 3 OpenMP: Diretivas de sincronização Módulo 4 OpenMP: Funções de
Programação Concorrente
INE 5410 Programação Concorrente Professor: Lau Cheuk Lung (turma A) INE UFSC [email protected] Conteúdo Programático 1. 2. Programação Concorrente 3. Sincronização 1. Condição de corrida, região critica
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
Programação de Alto Desempenho - 2. Prof: Carla Osthoff
Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: [email protected] 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda
Programação Paralela e Distribuída
INE 5645 Programação Paralela e Distribuída Professor: Lau Cheuk Lung (turma A) INE UFSC [email protected] Conteúdo Programático 1. Introdução 2. Programação Paralela 3. Controle de Concorrência 4.
LabSO Gerência de Processos. Processos. Porque eu preciso entender este assunto?
LabSO Gerência de AULA 3 Flávia Maristela ([email protected]) Romildo Martins ([email protected]) Porque eu preciso entender este assunto? Para entender como um computador consegue executar
AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação MULTIPROCESSADORES
Sistemas de Informação. Sistemas Operacionais
Sistemas de Informação Sistemas Operacionais PROCESSOS E THREADS PARTE II SUMÁRIO 3. THREAD: 3.1 Introdução; 3.2 Ambiente Monothread; 3.3 Ambiente Multithread; 3.4 Arquitetura e Implementação; 3.5 Modelos
Conceitos 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
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
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 1: Introdução e Conceitos Diego Passos Informações Básicas Horário: terças e quintas, 16h. Salas: 442/235 Contato: Por e-mail: [email protected] Pela página: http://www.midiacom.uff.br/~diego/sisop/
SISTEMAS EMBARCADOS. Programação Concorrente e CMSIS RTOS. Prof. André Schneider de Oliveira
Universidade Tecnológica Federal do Paraná (UTFPR) Departamento Acadêmico de Eletrônica (DAELN) SISTEMAS EMBARCADOS Programação Concorrente e CMSIS RTOS Prof. André Schneider de Oliveira [email protected]
Sistemas Operacionais Aula 3
Sistemas Operacionais Aula 3 Anderson L. S. Moreira [email protected] http://dase.ifpe.edu.br/~alsm Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE O que fazer
DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 1 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS
DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 1 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS Aluno: GABARITO Escore: 1 a Questão (30) Assinale a(s) resposta(s)
Sistemas Operacionais Processos. Carlos Ferraz Jorge Cavalcanti Fonsêca
Sistemas Operacionais Processos Carlos Ferraz ([email protected]) Jorge Cavalcanti Fonsêca ([email protected]) Copyright Carlos Ferraz Processo Conceito: Um programa em execução 1. Ao digitar hello, os caracteres
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
Introdução a Sistemas Operacionais. Adão de Melo Neto
Introdução a Sistemas Operacionais Adão de Melo Neto 41 Definição de SO Sistema Operacional É um conjunto de rotinas (programa) executado pelo processador que controla o funcionamento do computador como
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
Paralelismo em Computadores com Tecnologia Multicore
IFRN - Pau dos Ferros Pau dos Ferros/RN, 25 de fevereiro de 2016 O minicurso Descrição: Para se utilizar os vários núcleos de processamento disponíveis nos computadores atuais de forma eficiente, faz necessário
Sistemas Distribuídos Aula 7
Sistemas Distribuídos Aula 7 Aula passada Atomicidade Test-and-set Locks revisitado Semáforos Dois problemas Aula de hoje Limitação dos semáforos Monitores Variáveis de condição Semântica do signal Sincronização
Fundamentos 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
PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 12 - Threads e Concorrência em Java
Aula 12 - Threads e Concorrência em Java Conteúdo Programático desta aula Aplicar os conceitos e threads, processos concorrentes e sincronização em pequenos programas. Aplicar e verificar os conceitos
Aula 2: Tipos de Sistemas Operacionais. Instituto Federal da Bahia Campus Salvador INF009 - Sistemas Operacionais Profª Flávia Maristela
Aula 2: Tipos de Sistemas Operacionais Instituto Federal da Bahia Campus Salvador INF009 - Sistemas Operacionais Profª Flávia Maristela O que veremos nesta aula? Principais tipos de sistemas operacionais
Introdução Aplicações Concorrentes Especificação de Concorrência em Programas Problemas de Compartilhamento de Recursos Exclusão Mútua Sincronização
Sincronização e Comunicação entre Processos Introdução Aplicações Concorrentes Especificação de Concorrência em Programas Problemas de Compartilhamento de Recursos Exclusão Mútua Sincronização Condicional
SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella
SSC- 0143 PROGRAMAÇÃO CONCORRENTE Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados
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
Programação Concorrente e Paralela. Noemi Rodriguez
2013 Objetivos princípios e técnicas de programação concorrente multiprocessadores memória compartilhada troca de mensagens obs: diferentes níveis de abstração! que princípios e técnicas são esses? notações
Introdução à Computação: Sistemas de Computação
Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza ([email protected]) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
Processos e Threads e em sistemas distribuídos. Prof. Me. Hélio Esperidião
Processos e Threads e em sistemas distribuídos. Prof. Me. Hélio Esperidião Processos Sistemas operacionais modernos criam vários processadores virtuais, cada um para executar um programa. Para monitorar
Multiprogramação leve em arquiteturas multi-core
Multiprogramação leve em arquiteturas multi-core Prof. Dr. Departamento de Informática Universidade Federal de Pelotas Sumário Arquiteturas multi-core Programação multithread Ferramentas 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
Sistemas Distribuídos e Paralelos
Sistemas Distribuídos e Paralelos Aula #6: Programação paralela em sistemas de memória compartilhada. ISUTIC - 2016 Eng. Alexander Rodríguez Bonet Aula de hoje Regiões paralelas. Cláusulas de âmbito. Partilha
Informática I. Aula /09/2006 1
Informática I Aula 3 http://www.ic.uff.br/~bianca/informatica1/ 06/09/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação de Dados
Introdução à OpenMP (Dia 1) Prof. Guido Araujo
Introdução à OpenMP (Dia ) Prof. Guido Araujo www.ic.unicamp.br/~guido Roteiro Escrevendo programas usando OpenMP Usando OpenMP para paralelizar laços seriais com pequenas mudanças no código fonte Explorar
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
Sistemas Operacionais
Sistemas Operacionais Slides adaptados de Prof. Dr. Marcos José Santana e Prof. Dra. Regina Helena Carlucci Santana baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum Tipos e Estrutura System
Sistema Operacional. Prof. Leonardo Barreto Campos. 1/30
Sistema Operacional Prof. Leonardo Barreto Campos 1/30 Sumário Introdução Middleware e SO de Rede SO de Rede Processos e Threads Leitura Complementar Bibliografia 2/30 Introdução A tarefa de qualquer sistema
Arquitetura de Computadores. Processamento Paralelo
Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 6 Gerenciamento de Memória Prof. Galvez Considerações Gerais Multiprogramação implica em manter-se vários processos em memória Memória necessita ser alocada de
SISTEMAS DISTRIBUÍDOS PROCESSOS. Slides cedidos pela professora Aline Nascimento
SISTEMAS DISTRIBUÍDOS PROCESSOS Slides cedidos pela professora Aline Nascimento INTRODUÇÃO Diferentes tipos de processos desempenham papel crucial em sistemas distribuídos. O conceito de um processo é
