COMPUTAÇÃO PARALELA E DISTRIBUÍDA

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

Download "COMPUTAÇÃO PARALELA E DISTRIBUÍDA"

Transcrição

1 COMPUTAÇÃO PARALELA E DISTRIBUÍDA Aluno: Alessandro Faletti Orientadora: Noemi Rodriguez Introdução O objetivo inicial no projeto era aplicar a possibilidade de processamento em paralelo no sistema CSBase da Tecgraf. No entanto, percebemos que seria necessário um estudo anterior sobre programação paralela em ambientes de memória distribuída, e acabamos redirecionando o projeto para o estudo de programação paralela no ambiente de memória distribuída provido pelo serviço Amazon Elastic Compute Cloud (AmazonEC2) que disponibiliza capacidade computacional redimensionável na nuvem como um serviço web. Softwares SO: Linux Fedora 21 AmazonEC2 Metodologia Antes de começarmos com a implementação direta do processamento paralelo no sistema CSBase da Tecgraf, começamos com um estudo de como funcionam os sistemas que utilizam a programação paralela. Para isso estudamos o livro Parallel Programming in C with MPI and OpenMP de Michael J. Quinn. Desta forma fizemos um estudo sobre a biblioteca MPI (Message-Passing Interface), onde seu principal objetivo é a troca de mensagens entre dois ou mais processos. Utilizamos a biblioteca para realizar vários pequenos testes didáticos, programando em linguagem C. A princípio os primeiros programas foram desenvolvidos para serem utilizados em máquinas locais, entretanto no decorrer do estudo, surgiu a ideia de utilizarmos a programação paralela em conjunto com a nuvem (internet). Após o entendimento básico da biblioteca, começamos a estudar a possibilidade de adaptarmos o programa que havíamos feito, para funcionar com várias instancias de máquinas virtuais na nuvem. Para isso, utilizamos do serviço Amazon Elastic Compute Cloud (AmazonEC2) que é um serviço da web que disponibiliza capacidade computacional redimensionável na nuvem. Essa integração foi onde encontramos algumas dificuldades de implementação, pois nos deparamos com o problema de comunicação entre as máquinas e então foi necessário um estudo maior de como funcionam as chaves públicas e privadas no sistema operacional Linux. Para a comunicação entre as máquinas, é utilizado comandos como ssh e scp, porém essa comunicação requer uma autenticação usualmente feita através de senha, isso impossibilita que a transferência de arquivos entre hosts possa ser feita automaticamente, sem intervenções. Logo, para resolver esse problema é possível gerar chaves públicas de acesso e criptografar os dados de maneira direta e assim remover a autenticação por senha. Utilizando as funções fornecidas pela MPI [1], foi possível gerar um script em lua [2] que criasse uma quantidade de máquinas virtuais fornecidas pela Amazon EC2 e que todas essas máquinas pudessem se comunicar e trocar mensagens entre elas. Dessa forma qualquer usuário que tiver um tipo de computação de grande escala para ser realizado, pode-se utilizar desse sistema para obter um resultado bem mais rápido. Entretanto observamos que o

2 programador que desejado desenvolver algo para utilizar o nosso script, ele teria que entender muito do funcionamento da biblioteca e esse não era o nosso objetivo. Portanto demos início a um outro estudo, este era sobre o modelo de programação paralela muito utilizado nos dias atuais, o MapReduce. Este novo modelo computacional é inspirado pelas funções MAP e REDUCE [3] usadas comumente em programação funcional e desta forma eliminaríamos o fato do programar necessitar conhecer sobre o funcionamento de troca de mensagens entre as máquinas. A função MAP, leva uma série de pares (chave / valor) processa cada um e gera zero ou mais (chave / valor) pares de saída. Os tipos de entrada e de saída do mapa podem ser (e geralmente são) diferentes umas das outras. Se o aplicativo está fazendo uma contagem de palavras, a função de mapa iria quebrar a linha em palavras e de saída de um par chave / valor para cada palavra. Cada par de saída deve conter a palavra como a chave e o número de ocorrências dessa palavra na linha como o valor. A função REDUCE pode percorrer os valores que estão associados com a chave e produzir zero ou mais saídas. No exemplo a contagem de palavras, a função toma os valores de entrada, resume-os e gera uma única saída da palavra e a soma final. Assim, utilizando este novo modelo, começamos a implementação de um framework que seu principal objetivo é o gerenciamento de arquivos processados em paralelo na computação elástica da AmazonEC2. Dessa maneira fizemos um script em lua no qual o usuário não precisa se preocupar com a comunicação entre os máquinas que irão funcionar em paralelo, sua única preocupação é desenvolver as funções MAP e REDUCE. O framework é desenvolvido em lua e para a realização de troca de mensagens entre os computadores da AmazonEC2, foi utilizado uma biblioteca de lua, chamada de luasocket, que possibilita o tráfego de informações entre as máquinas pelas portas sockets que a biblioteca gerencia. Com esse pequeno sistema desenvolvido, pode-se processar dados em grande volume, com um tempo de processamento curto, pois todo o trabalho será subdividido para cada máquina escrava que estará localizada na nuvem, desta forma sem a necessidade de ter máquinas físicas à disposição. Entretanto existe um ponto negativo no framework desenvolvido, pois este divide o trabalho para cada máquina de acordo com a quantidade de arquivos de entrada. Portanto para ter uma maior divisão de tarefas e o trabalho ficar bem mais dividido e homogêneo, é necessário que o programador divida a grande quantidade de dados que ele precisa processar em vários arquivos. Uma ideia posterior seria desenvolver uma ferramenta que faça essa divisão de dados em vários arquivos como complemento do framework. Discussões Observamos que para processar poucos dados, o framework possui um desempenho muito ruim se comparado ao processar os mesmos dados em uma máquina individual. Entretanto para grandes volumes de dados, ele se torna extremamente útil. O framework, apesar de simples, é funcional e foi uma grande forma de aprendizado sobre a computação paralela e distribuída.

3 Exemplos da ferramenta utilizando MPI Primeiramente uma imagem de 3 máquinas da amazon em funcionamento, criadas diretamente pelo script desenvolvido em lua. Esta imagem mostra o resultado de uma multiplicação de matrizes utilizando a biblioteca MPI e a Amazon

4 Exemplos da ferramenta utilizando MapReduce Nesta imagem é possível observar 2 máquinas da Amazon criadas pelo framework do MapReduce. Nesta imagem é possível observar um pequeno exemplo para achar amigos em comum entre pessoas. O exemplo pode ser visto com mais detalhes pelo link

5 Conclusões O estudo teórico permitiu uma maior compreensão do uso das funções fornecidas pelas bibliotecas. Foi possível realizar utilizá-las em vários testes iniciais em um ambiente local e após todos os testes feitos com sucessos, é feita a mudança para o ambiente nuvem. Pela sua própria experiência, a curva de aprendizado é não trivial e esse tipo de ferramenta em que foi trabalhado é importante para dar acesso ao potencial de ambientes de computação elástica. A computação paralela é usada hoje com bastante frequência para o processamento de grandes volumes de dados, onde somente um processador levaria muito tempo para conclusão do objetivo. Isso pode ser visto na própria internet, pois há uma enorme quantidade de dados sendo trafegados e a computação de todo o dado é realizado praticamente instantaneamente ao nossos olhos, isso só é possível graças a esse compartilhamento de processamento fornecido pela computação paralela. Referências 1 - Open MPI: Open Source High Performance Computing. Disponível em: Acessado em 10 de agosto de Ierusalimschy, Roberto. Programming in Lua. Roberto Ierusalimschy, What is MapReduce? About MapReduce. Disponível em: 01.ibm.com/software/data/infosphere/hadoop/mapreduce/. Acessado em 20 de janeiro de 2016

UNIVERSIDADE FEDERAL DO PARÁ PRÓ-REITORIA DE PESQUISA E PÓS-GRADUAÇÃO DIRETORIA DE PESQUISA PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA

UNIVERSIDADE FEDERAL DO PARÁ PRÓ-REITORIA DE PESQUISA E PÓS-GRADUAÇÃO DIRETORIA DE PESQUISA PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA UNIVERSIDADE FEDERAL DO PARÁ PRÓ-REITORIA DE PESQUISA E PÓS-GRADUAÇÃO DIRETORIA DE PESQUISA PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA RELATÓRIO TÉCNICO CIENTÍFICO Período: Outubro/2015 a

Leia mais

Processamento Paralelo

Processamento Paralelo Processamento Paralelo Apresentação do Curso Esbel Tomás Valero Orellana Bacharelado em Ciência da Computação Departamento de Ciências Exatas e Tecnológicas Universidade Estadual de Santa Cruz evalero@uesc.br

Leia mais

Introdução a Computação em Nuvem

Introdução a Computação em Nuvem Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES João Ricardo Kohler Abramoski (PAIC/FUNDAÇÃO ARAUCÁRIA), Sandra Mara Guse Scós Venske (Orientadora), e-mail: ssvenske@unicentro.br

Leia mais

Sistema Computacional

Sistema Computacional Algoritmos e Lógica de Programação Conceitos Básicos Abstração Reinaldo Gomes reinaldo@cefet-al.br O que é um? Integração de componentes atuando como uma entidade, com o propósito de processar dados, i.e.

Leia mais

OpenMP: Variáveis de Ambiente

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

Leia mais

Informática Parte 10 Prof. Márcio Hunecke

Informática Parte 10 Prof. Márcio Hunecke Escriturário Informática Parte 10 Prof. Márcio Hunecke Informática CONCEITOS DE MAPREDUCE E HDFS/HADOOP/YARN 2.7.4 Big Data O termo Big Data refere-se a um grande conjunto de dados armazenados e baseia-se

Leia mais

Aluno de Pós-Graduação em Engenharia de Software para Dispositivos Móveis pela UNINTER

Aluno de Pós-Graduação em Engenharia de Software para Dispositivos Móveis pela UNINTER COMPARAÇÃO DE DESEMPENHO NA PROGRAMAÇÃO PARALELA HÍBRIDA (MPI + OPENMP) NA BUSCA DE TEXTO EM ARQUIVOS 1 COMPARISON OF PERFORMANCE IN HYBRID PARALLEL PROGRAMMING (MPI + OPENMP) IN SEARCH OF TEXT IN FILES

Leia mais

Administração de Serviços de Redes. Introdução a Clusters. Prof. Dayvidson Bezerra Contato:

Administração de Serviços de Redes. Introdução a Clusters. Prof. Dayvidson Bezerra Contato: Administração de Serviços de Redes Introdução a Clusters Prof. Dayvidson Bezerra Contato: dayvidsonbezerra@gmail.com Definição Cluster é um termo amplamente utilizado, significa computadores independentes

Leia mais

Introdução a Computação em Nuvem

Introdução a Computação em Nuvem Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

Palavras-chave: (banco de dados; prontuário médico; paciente); deve vir logo abaixo do resumo

Palavras-chave: (banco de dados; prontuário médico; paciente); deve vir logo abaixo do resumo BANCO DE DADOS PARA UM PRONTUÁRIO MÉDICO ELETRÔNICO Nome dos autores: Igor Barreto Rodrigues¹; Patrick Letouze Moreira² 1 Aluno do Curso de Ciência da Computação; Campus de Palmas; e-mail: igor.cientista@uft.edu.br

Leia mais

BALANCEAMENTO DE CARGA EM SISTEMAS MULTIPROCESSADORES UTILIZANDO O MODELO DE PROGRAMAÇÃO CHARM++ 1

BALANCEAMENTO DE CARGA EM SISTEMAS MULTIPROCESSADORES UTILIZANDO O MODELO DE PROGRAMAÇÃO CHARM++ 1 BALANCEAMENTO DE CARGA EM SISTEMAS MULTIPROCESSADORES UTILIZANDO O MODELO DE PROGRAMAÇÃO CHARM++ 1 Guilherme Henrique Schiefelbein Arruda 2, Edson Luiz Padoin 3. 1 Trabalho desenvolvido no contexto do

Leia mais

Programação de Alto Desempenho - 2. Prof: Carla Osthoff

Programação de Alto Desempenho - 2. Prof: Carla Osthoff Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: osthoff@lncc.br 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda

Leia mais

Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 01 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL O OBJETIVO DA DISCIPLINA? Objetivo Tornar vocês (alunos) capazes

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Introdução a Sistemas Operacionais Andreza Leite andreza.leite@univasf.edu.br Plano de Aula Introdução aos Sistemas Operacionais Fundamentação Teórica Evolução Histórica Características

Leia mais

Uma introdução ao Apache Hama

Uma introdução ao Apache Hama Uma introdução ao Apache Hama O modelo BSP nas nuvens Thiago Kenji Okada 1 1 Departamento de Ciências da Computação (DCC) Instituto de Matemática e Estatística (IME) Universidade de São Paulo (USP) MAC5742

Leia mais

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída 11 1 Introdução Recentes avanços em redes de computadores impulsionaram a busca e o desenvolvimento de meios para facilitar e acelerar o desenvolvimento de aplicações em sistemas distribuídos, tornando

Leia mais

Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot

Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot Bruno Pereira dos Santos Dany Sanchez Dominguez Esbel Tomás Evalero Orellana Universidade Estadual de Santa Cruz Roteiro Breve introdução

Leia mais

Vamos fazer um pequeno experimento

Vamos fazer um pequeno experimento 1 Vamos fazer um pequeno experimento Dividam-se em dois grupos: Mestre Escravo Projeto de Sistemas Distribuídos Comunicação entre Processos Prof. Msc. Marcelo Iury de Sousa Oliveira marceloiury@gmail.com

Leia mais

AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS

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 max.santana@univasf.edu.br Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Linguagem de programação C 3.1. Conceitos

Leia mais

INFORMÁTICA: Informação automática

INFORMÁTICA: Informação automática INTRODUÇÃO INFORMÁTICA: Informação automática Definição: é a ciência que estuda o tratamento automático e racional da informação (encarregada pelo estudo e desenvolvimento de máquinas e métodos para processar

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA 1 UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA JUAN CASSIUS CARNEIRO PEREIRA PEDRO M. NETO GOOGLE CLOUD PONTA GROSSA 2017 2 JUAN CASSIUS

Leia mais

PrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13

PrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13 PrIntCloud Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13 Roteiro 1. Fundamentação Teórica A.- Cloud Computing B.- Hadoop C.- MapReduce D.- NoSql 2. Proposta

Leia mais

Ferramentas de Suporte

Ferramentas de Suporte Cálculo Numérico Módulo I Prof Reinaldo Haas Como estudar Métodos Numéricos? 2 Uso do método numérico Computador Programa Desenvolver Utilizar Verificar validade dos resultados obtidos 3 Programas para

Leia mais

Introdução OpenMP. Nielsen Castelo Damasceno

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

Leia mais

Matéria: Sistema Computacional - SC. Prof.: Esp.: Patrícia Dias da Silva Peixoto

Matéria: Sistema Computacional - SC. Prof.: Esp.: Patrícia Dias da Silva Peixoto Matéria: Sistema Computacional - SC Prof.: Esp.: Patrícia Dias da Silva Peixoto SISTEMA OPERACIONAL E TIPOS DE SISTEMAS OPERACIONAIS O QUE É UM SISTEMA OPERACIONAL (S.O.). Por mais complexo que possa parecer,

Leia mais

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação DO QUE É COMPOSTO UM SISTEMA COMPUTACIONAL?

Leia mais

Computação móvel na nuvem Grover E. Castro Guzman Computação Móvel MAC5743 IME-USP

Computação móvel na nuvem Grover E. Castro Guzman Computação Móvel MAC5743 IME-USP Computação móvel na nuvem Grover E. Castro Guzman Computação Móvel MAC5743 IME-USP Porque computação móvel na nuvem? A ilusão de recursos de computação infinitos, disponíveis a demanda. Incrementar os

Leia mais

Computação em nuvem (Cloud Computing)

Computação em nuvem (Cloud Computing) Computação em nuvem (Cloud Computing) Disciplina: Gestão da Tecnologia de Sistemas Professor: Thiago Silva Prates Computação em nuvem O termo computação em nuvem refere-se a modelo de capacitação na qual

Leia mais

Introdução a Sistemas Operacionais. Adão de Melo Neto

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

Leia mais

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

Introdução à Ciência da Computação 1 Universidade Federal Fluminense Campus de Rio das Ostras Curso de Ciência da Computação Introdução à Ciência da Computação Professor: Leandro Soares de Sousa e-mail: leandro.uff.puro@gmail.com site:

Leia mais

Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core

Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core RSS-Verão-01/08 p.1/36 Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7 Escola de Verão 2008 Arquiteturas Multi-Core Renato S. Silva LNCC - MCT Janeiro de 2008 RSS-Verão-01/08 p.2/36 Objetivo:

Leia mais

A CASA DO SIMULADO DESAFIO QUESTÕES MINISSIMULADO 122/360

A CASA DO SIMULADO DESAFIO QUESTÕES MINISSIMULADO 122/360 1 DEMAIS SIMULADOS NO LINK ABAIXO CLIQUE AQUI REDE SOCIAL SIMULADO 122/360 INFORMÁTICA INSTRUÇÕES TEMPO: 30 MINUTOS MODALIDADE: CERTO OU ERRADO 30 QUESTÕES CURTA NOSSA PÁGINA MATERIAL LIVRE Este material

Leia mais

A Biologia na Era da Computação. Hugo Brandão Uchôa Laboratório de Sistemas Biomoleculares IBILCE-UNESP

A Biologia na Era da Computação. Hugo Brandão Uchôa Laboratório de Sistemas Biomoleculares IBILCE-UNESP A Biologia na Era da Computação Hugo Brandão Uchôa Laboratório de Sistemas Biomoleculares IBILCE-UNESP Tópicos Motivação Áreas da Computação Parmodel BioLinux MyODB Conclusão Motivação Grande desenvolvimento

Leia mais

QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ;

QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ; QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ; LEIA O MATERIAL ANTES DE FAZER O EXEMPLO DIDÁTICO. AS QUESTÕES ABAIXO PODEM SER RESPONDIDAS, USANDO, PREFERENCIALMENTE, SUA PRÓPRIAS

Leia mais

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

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período Redes de Computadores Fundamentos de Sistemas Operacionais - 2º Período PARTE I: CONCEITOS BÁSICOS SUMÁRIO 1. VISÃO GERAL: 1.1 Introdução; 1.2 Funções Básicas; 1.3 Máquina de Camadas; 1.5 Tipos de Sistemas

Leia mais

ARQUITETURA DE SISTEMAS OPERACIONAIS. VISÃO GERAL DE UM SISTEMA OPERACIONAL Prof. André Luís Alves E. M. DR. LEANDRO FRANCESCHINI

ARQUITETURA DE SISTEMAS OPERACIONAIS. VISÃO GERAL DE UM SISTEMA OPERACIONAL Prof. André Luís Alves E. M. DR. LEANDRO FRANCESCHINI ARQUITETURA DE SISTEMAS OPERACIONAIS VISÃO GERAL DE UM SISTEMA OPERACIONAL Prof. André Luís Alves E. M. DR. LEANDRO FRANCESCHINI INTRODUÇÃO Programas computacionais (ou software) constituem o elo entre

Leia mais

What is? Eduardo Viola Nicola Disciplina de IPPD

What is? Eduardo Viola Nicola Disciplina de IPPD What is? Eduardo Viola Nicola evnicola@inf.ufpel.edu.br Disciplina de IPPD Sumário 1)Introdução 2)Princípio Geral de Funcionamento 3)Exemplos de Aplicações 4)Modelo de Programação 5)Linguagens Suportadas

Leia mais

Árvore Binária de Busca Ótima - Uma Implementação Distribuída

Árvore Binária de Busca Ótima - Uma Implementação Distribuída Árvore Binária de Busca Ótima - Uma Implementação Distribuída Felipe Reis e Caio Valentim Departamento de Informática PUC-Rio 7 de novembro de 2010 1 Introdução O problema de encontrar a árvore binária

Leia mais

Sistemas Operacionais II. Prof. Gleison Batista de Sousa Aula 01

Sistemas Operacionais II. Prof. Gleison Batista de Sousa Aula 01 Sistemas Operacionais II Prof. Gleison Batista de Sousa Aula 01 Sistemas Operacionais Livres Prof. Gleison Batista de Sousa Aula 01 Objetivos - Ter conhecimento sobre os diversos módulos que compõem um

Leia mais

SISTEMAS OPERACIONAIS DE REDE

SISTEMAS OPERACIONAIS DE REDE SISTEMAS OPERACIONAIS DE REDE Questão 01 O sistema operacional gerencia o sistema de arquivos, que irá armazenar as informações/arquivos. Para esta tarefa, durante a formatação do disco rígido, são criados

Leia mais

Introdução ao CUDA. Material elaborado por Davi Conte.

Introdução ao CUDA. Material elaborado por Davi Conte. Introdução ao CUDA Material elaborado por Davi Conte. O objetivo deste material é que o aluno possa iniciar seus conhecimentos em programação paralela, entendendo a diferença da execução de forma sequencial

Leia mais

informação enviada (ex. Facebook) ou que a rede social utilize essa informação para sugerir locais de interesse próximos ao usuário (ex. Foursquare).

informação enviada (ex. Facebook) ou que a rede social utilize essa informação para sugerir locais de interesse próximos ao usuário (ex. Foursquare). 1 Introdução 1.1 Contextualização Recentemente, tem-se percebido um movimento de integração de comunidades físicas e comunidades virtuais. As pessoas utilizam cada vez mais a Internet para se comunicar

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

Alcides Pamplona

Alcides Pamplona Alcides Pamplona alcides.pamplona@gmail.com Objetivos Gerais Capacitar o aluno a compreender os paradigmas dos Bancos de Dados Distribuídos, visando sua aplicação na análise e projeto de bancos de dados

Leia mais

Também conhecidos como programas. Conjunto de instruções organizadas que o processador irá executar. É o software que torna o computador útil.

Também conhecidos como programas. Conjunto de instruções organizadas que o processador irá executar. É o software que torna o computador útil. Software 2 Também conhecidos como programas. Conjunto de instruções organizadas que o processador irá executar. É o software que torna o computador útil. Informando quais as instruções e como executar

Leia mais

Conceitos avançados de programação. Módulo 8 Programação e Sistemas de Informação Gestão e Programação de Sistemas Informáticos

Conceitos avançados de programação. Módulo 8 Programação e Sistemas de Informação Gestão e Programação de Sistemas Informáticos Conceitos avançados de programação Módulo 8 Programação e Sistemas de Informação Gestão e Programação de Sistemas Informáticos Objetivos de Aprendizagem e Entender as especificidades da programação em

Leia mais

GoogleDocs. Potencializando o uso de questionários online em pesquisas científicas.

GoogleDocs. Potencializando o uso de questionários online em pesquisas científicas. GoogleDocs Potencializando o uso de questionários online em pesquisas científicas. Sumário - Apresentar o conceito de computação nas nuvens; - Apresentar o ambiente do Google Docs; - Apresentar a interface

Leia mais

O que é um sistema distribuído?

O que é um sistema distribuído? Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores

Leia mais

Comparação de eficiência entre OpenCL e CUDA

Comparação de eficiência entre OpenCL e CUDA Aluno: Thiago de Gouveia Nunes Orientador: Prof. Marcel P. Jackowski GPGPU O que é GPGPU? É programação de propósito geral em GPUs. =D GPGPU Existem 2 linguagens populares no mercado para GPGPU, o CUDA

Leia mais

2. Conceitos Básicos. Introdução à Ciência da Computação.

2. Conceitos Básicos. Introdução à Ciência da Computação. 2. Conceitos Básicos Introdução à Ciência da Computação http://www.inf.unioeste.br/~claudia/icc2017.html Sumário Computador Processamento de dados Hardware Software Sistemas Arquivos Modalidades de Computadores

Leia mais

Quando Distribuir é bom

Quando Distribuir é bom Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.

Leia mais

Análise de algoritmos

Análise de algoritmos Análise de algoritmos SCE-181 Introdução à Ciência da Computação II Alneu Lopes Thiago A. S. Pardo 1 Algoritmo Noção geral: conjunto de instruções que devem ser seguidas para solucionar um determinado

Leia mais

Aplicações com Banco de Dados e Cliente-Servidor

Aplicações com Banco de Dados e Cliente-Servidor Aplicações com Banco de Dados e Cliente-Servidor Aula #231 EBS 211 POO e UML Prof Luiz Fernando S Coletta luizfsc@tupaunespbr Campus de Tupã Roteiro Rede de computadores; Aplicação cliente/servidor; Sockets

Leia mais

Introdução à Informática Engenharia Agrícola

Introdução à Informática Engenharia Agrícola Conceitos Básicos Introdução à Informática Engenharia Agrícola Sumário Computador Processamento de dados Hardware Software Sistemas Arquivos Modalidades de Computadores Arquitetura Básica. Uma referência

Leia mais

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MULTIPROCESSADORES

Leia mais

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAIS SÃO OS COMPONENTES BÁSICOS DO HW DE UM SISTEMA COMPUTACIONAL?

Leia mais

INTRODUÇÃO. Prof. Msc. Luis Filipe Alves Pereira 2015

INTRODUÇÃO. Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO 02/21 QUAIS AS OPERAÇÕES BÁSICAS REALIZADAS EM UM COMPUTADOR DIGITAL? INTRODUÇÃO 03/21 QUAIS AS OPERAÇÕES BÁSICAS REALIZADAS EM UM COMPUTADOR

Leia mais

Unidade III. Unidade III. Existe uma tendência dos sistemas de informação a funcionarem cada vez mais em Intranets e na Internet.

Unidade III. Unidade III. Existe uma tendência dos sistemas de informação a funcionarem cada vez mais em Intranets e na Internet. Unidade III Unidade III 3 GERENCIAMENTO DA SEGURANÇA DA TI Existe uma tendência dos sistemas de informação a funcionarem cada vez mais em Intranets e na Internet. 1 As organizações estão sofrendo, a cada

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS Tecnologia em Análise e Desenvolvimento de Sistemas 5ª. Série Programação Distribuída A atividade prática supervisionada (ATPS) é um método de ensinoaprendizagem desenvolvido

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE SOFTWARE PROFESSOR CARLOS MUNIZ

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE SOFTWARE PROFESSOR CARLOS MUNIZ INTRODUÇÃO À TECNOLOGIA DA PROFESSOR CARLOS MUNIZ Software é um conjunto de programas de computador, que realiza procedimentos, dotado de regras, documentos e dados associados que fazem parte das operações

Leia mais

Sistemas Operacionais II. Prof. Gleison Batista de Sousa Aula 01

Sistemas Operacionais II. Prof. Gleison Batista de Sousa Aula 01 Sistemas Operacionais II Prof. Gleison Batista de Sousa Aula 01 Revisão de SO Linux Prof. Gleison Batista de Sousa Objetivos - Ter conhecimento sobre os diversos módulos que compõem um sistema operacional

Leia mais

Disciplina de Algoritmos e Programação

Disciplina de Algoritmos e Programação Disciplina de Algoritmos e Programação Atividades Plano de ensino Conteúdos da disciplina, definição das datas, critérios de avaliação e bibliografias Início da matéria Conceito e definição de algoritmos

Leia mais

Paradigmas de Processamento Paralelo na Resolução do Fractal de Mandelbrot

Paradigmas de Processamento Paralelo na Resolução do Fractal de Mandelbrot Paradigmas de Processamento Paralelo na Resolução do Fractal de Mandelbrot Bruno Pereira dos Santos Dany Sanchez Dominguez Universidade Estadual de Santa Cruz Cronograma Introdução Serial vs Processamento

Leia mais

Curso online de Fundamentos em Android. Plano de Estudo

Curso online de Fundamentos em Android. Plano de Estudo Curso online de Fundamentos em Android Plano de Estudo Descrição do programa A Certificação Android ensina como usar as ferramentas necessárias para projetar e implantar aplicativos Android para dispositivos

Leia mais

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o Sistemas Operacionais um pouco da história... - Evolução dos SO s através do tempo - Novas técnicas não são assimiladas simultaneamente por todos - Década de 40, não existia SO - O programador é o faz

Leia mais

Tipos de Clusters. Introdução. Introdução 21/03/12

Tipos de Clusters. Introdução. Introdução 21/03/12 Tipos de Clusters Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com! Cluster pode ser definido como um sistema onde dois ou mais computadores trabalham de maneira conjunta para realizar processamento

Leia mais

Projeto Integrador. <Projeto Integrador> Documento Visão. Versão <1.0>

Projeto Integrador. <Projeto Integrador> Documento Visão. Versão <1.0> Projeto Integrador Documento Visão Versão Histórico de Revisões Data Versão Descrição Autor

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2) Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora

Leia mais

Curso de Bacharelado em Ciência da Computação

Curso de Bacharelado em Ciência da Computação Curso de Bacharelado em Ciência da Computação Há um século, riqueza e sucesso vinham para aqueles que produziam e distribuíam mercadorias manufaturadas. Hoje, riqueza e sucesso vêm para aqueles que utilizam

Leia mais

COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1

COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1 COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1 Márcia Da Silva 2, Igor Gamste Haugg 3, Eliézer Silveira Prigol 4, Édson L. Padoin 5, Rogério S. M. Martins

Leia mais

MANUTENÇÃO DE COMPUTADORES

MANUTENÇÃO DE COMPUTADORES MANUTENÇÃO DE COMPUTADORES Professor Marlon Marcon Introdução Alguns pesquisadores consideram STONEHENGE o 1º computador feito pelo homem. Trata-se de um monumento paleolítico construído de pedras de 3

Leia mais

Informática. Cloud Computing e Storage. Professor Márcio Hunecke.

Informática. Cloud Computing e Storage. Professor Márcio Hunecke. Informática Cloud Computing e Storage Professor Márcio Hunecke www.acasadoconcurseiro.com.br Informática COMPUTAÇÃO EM NUVEM Cloud Computing ou Computação em Nuvem pode ser definido como um modelo no

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella

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

Leia mais

PROVA 03/07 Segunda-feira (semana que vem)

PROVA 03/07 Segunda-feira (semana que vem) damkeisabela@gmail.com PROVA 03/07 Segunda-feira (semana que vem) SISTEMAS OPERACIONAIS Os sistemas operacionais mais comuns que existem para computadores e que o mercado irá oferecer para você são : Microsoft

Leia mais

Projeto de Algoritmos

Projeto de Algoritmos Projeto de Algoritmos Introdução aos Sistemas Computacionais Prof. Ernani Viriato de Melo / Reginaldo Costa http://www.ernani.eti.br http://reginaldofazu.blogspot.com 2º Semestre - 2008 Conceitos Básicos

Leia mais

TÍTULO: PROGRAMAÇÃO PARALELA - UMA INTRODUÇÃO AO PARALELISMO COM A OPENMPI

TÍTULO: PROGRAMAÇÃO PARALELA - UMA INTRODUÇÃO AO PARALELISMO COM A OPENMPI Anais do Conic-Semesp. Volume 1, 2013 - Faculdade Anhanguera de Campinas - Unidade 3. ISSN 2357-8904 TÍTULO: PROGRAMAÇÃO PARALELA - UMA INTRODUÇÃO AO PARALELISMO COM A OPENMPI CATEGORIA: CONCLUÍDO ÁREA:

Leia mais

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES MVC E DAO Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 5 6 7 Padrão de Desenvolvimento? O Conceito de Padrão de Projeto Padrão MVC Persistência MVC Nível

Leia mais

GFM015 Introdução à Computação. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM

GFM015 Introdução à Computação. Plano de Curso e Introdução. Ilmério Reis da Silva  UFU/FACOM GFM015 Introdução à Computação Plano de Curso e Introdução Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/ic UFU/FACOM Plano de Curso Ementa Noções básicas sobre os componentes de

Leia mais

Introdução à Programação uma Abordagem Funcional

Introdução à Programação uma Abordagem Funcional Universidade Federal do Espírito Santo Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres boeres@inf.ufes.br CT VII - Sala 34 Departamento de Informática Centro Tecnológico

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS Algoritmos e Programação

Leia mais

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 1. Introdução

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 1. Introdução Aula 1 Introdução O que são? Porque estudar? História Componentes de SO Referências Capítulo 1 Capítulos 2 e 3: folhear. O que é um sistema operacional? Um programa governo, controla a interação entre:

Leia mais

Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES

Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES FACULDADE DOS GUARARAPES INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES Conceitos Básicos Prof. Rômulo César romulodandrade@gmail.com romulocesar@faculdadeguararapes.edu.br www.romulocesar.com.br INTRODUÇÃO

Leia mais

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli Programa de computador sequência de comandos ou instruções executados por um computador com a finalidade de produzir um resultado e resolver um problema; Linguagem de programação método para a criação

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

RESUMO DA PROGRAMAÇÃO - Minicursos

RESUMO DA PROGRAMAÇÃO - Minicursos RESUMO DA PROGRAMAÇÃO - Minicursos Quarta-feira 15/05 Nome do Minicurso: Introdução ao desenvolvimento na plataforma.net (C#) Parte 01 Sala: Laboratório 04 Nome do Minicurso: Implantação de aplicações

Leia mais

SSC510 Arquitetura de Computadores 1ª AULA

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

AGA 511. Métodos Computacionais em Astronomia. Segundo semestre de 2017

AGA 511. Métodos Computacionais em Astronomia. Segundo semestre de 2017 AGA 511 Métodos Computacionais em Astronomia Segundo semestre de 2017 Informações gerais Prof. Alex Cavaliéri Carciofi Email: carciofi@usp.br Ramal: 2712 Colaborador: Carlos Eduardo Paladini Email: carlos.paladini@iag.usp.br

Leia mais

Quando Distribuir é bom

Quando Distribuir é bom Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.

Leia mais

Implementação da Especificação de Tempo Real Java para o EPOS

Implementação da Especificação de Tempo Real Java para o EPOS UNIVERSIDADE FEDERAL DE SANTA CATARINA Curso de Ciências da Computação Implementação da Especificação de Tempo Real Java para o EPOS ANDERSON LUIS ZAPELLO Florianópolis, julho de 2005 ANDERSON LUIS ZAPELLO

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIENCIAS AGRARIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMATICA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIENCIAS AGRARIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMATICA UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIENCIAS AGRARIAS E DE TECNOLOGIA DEPARTAMENTO DE INFORMATICA JOÃO GABRIEL CORRÊA KRUGER LUCIANO MAUDA JUNIOR AMAZON WEB SERVICES (AWS) PONTA GROSSA 2017

Leia mais

5 Modelo de Programação

5 Modelo de Programação 38 5 Modelo de Programação 5.1 Visão Geral O modelo de programação do McCloud foi inspirado no Map/Reduce, originalmente proposto em 2004 por Jeff Dean e Sanjay Ghemawat [16], para suportar o processamento

Leia mais

Apresentação da Disciplina

Apresentação da Disciplina Apresentação da Disciplina Laboratório de Sistemas Operacionais Prof. Fernando Nakayama de Queiroz fernando.queiroz@ifpr.edu.br Sobre o professor... Fernando Nakayama de Queiroz fernando.queiroz@ifpr.edu.br

Leia mais

Introdução aos Sistemas Operacionais

Introdução aos Sistemas Operacionais Introdução aos Sistemas Operacionais Eleri Cardozo FEEC/Unicamp 1 Definição de Sistema Operacional Um sistema operacional é um gerenciador de recursos de hardware ou uma máquina virtual que oferece uma

Leia mais

Prof. Esp. Fabiano Taguchi SOFTWARES

Prof. Esp. Fabiano Taguchi  SOFTWARES 1 ELEMENTOS DE COMPUTADORES Prof. Esp. Fabiano Taguchi fabianotaguchi@gmail.com http://fabianotaguchi.wordpress.com SOFTWARES 2 2 SOFTWARES CONCEITO Conjunto alterável de instruções ordenadas e lógicas

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores 2018.1 Computador O computador é uma máquina que realiza processamento de dados automaticamente. Ela é formada por um hardware e um software. O Engenho Analítico é o primeiro

Leia mais

Introdução aos Sistemas Operacionais

Introduçã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 mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais