OO Engenharia Eletrônica

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

Download "OO Engenharia Eletrônica"

Transcrição

1 OO Engenharia Eletrônica - Programação em C/C++ Slides 18: Introdução à Multithreading. Introdução à Multithreading: execução concorrente de tarefas. Exemplos usando a biblioteca pthread que é de acordo com POSIX. Prof. Jean Marcelo SIMÃO

2 Multithreading: execução concorrente de tarefas Obs.: Material inicial elaborado por Murilo S. Holtman no 2o Semestre de O Holtman era então aluno da disciplina em questão e estagiário em projeto do Professor da disciplina.

3 Threads Thread é o nome dado a uma tarefa (e ao conjunto de estruturas associado a ela) que é executada concorrentemente com outras tarefas. São amplamente utilizadas por todo tipo de software: servidores, browsers, jogos, programas que efetuam cálculos e pesquisas demoradas, entre muitos outros.

4 Implementações de execução concorrente Em modelos e sistemas operacionais mais antigos, era comum o uso das chamadas user-level threads (threads implementadas pelos próprios aplicativos). A maioria dos sistemas operacionais modernos suporta a execução de múltiplas tarefas gerenciadas pelo próprio kernel, que lida com sua alocação, destruição e agendamento.

5 Nova thread Espera Nova thread Linha principal

6 Problemas no uso de threads O principal problema em programas com várias linhas de execução paralelas diz respeito à sincronização no acesso a recursos compartilhados (blocos de memória, arquivos, dispositivos, etc.) por várias tarefas. Estes problemas são circundados ao se escrever código seguro (thread-safe) que inclui a utilização de rotinas reentrantes e objetos de sincronização (como semáforos e mutexes).

7 Exemplo de conflito entre threads que acessam um mesmo recurso Tarefa da thread 1: Tarefa da thread 2:... char *s; for (s = ABCDEF ;; *s!= \0 ;; s++) fputc(*s, stdout); char *s; for (s = ;; *s!= \0 ;; s++) fputc(*s, stdout);... Considerando o seguinte contexto: (a) a fatia de tempo destinado a thread 1, pelo sistema operacional, se esgota enquanto ela ainda está executando seu laço de repetição; (b) a thread 2 é então executada de maneira intercalada com a thread 1; (c) isto se repete algumas vezes. Assim sendo, a saída padrão ( tela ) poderá conter algo como: ABC1D2E3F456

8 POSIX Threads (Pthreads) Uma padronização desenvolvida pelo comitê POSIX (Portable Operating System Interface) para tornar os programas que utilizam threads portáveis através de várias plataformas. Inclui suporte à criação e controle de threads e a alguns objetos de sincronização básicos.

9 Elementos Básico de threading na biblioteca Pthreads pthread_create e pthread_exit pthread_create() cria uma nova thread, que pode (ou não) começar a executar imediatamente após a chamada ter sido concluída. int pthread_create ( ); pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void*), void *arg pthread_exit() é chamada no contexto de uma thread criada por pthread_create() e faz com que essa thread seja finalizada. void pthread_exit( ); void *value_ptr

10 Elementos Básico de threading na biblioteca Pthreads join e detach Uma thread pode aguardar pela finalização de outra thread através de pthread_join(). int pthread_join( ); pthread_t thread, void **value_ptr pthread_detach() avisa à implementação subjacente que a thread especificada deve ser liberada assim que terminar. int pthread_detach ( ); pthread_t *thread

11 Mutexes (mutually exclusive) Um mutex permite acesso de uma thread por vez a um recuso através de uma trava mutualmente exclusiva (mutually exclusive). A função pthread_mutex_init() e a função pthread_mutex_destroy() respectivamente criam e liberam um objeto mutex. int pthread_mutex_init ( ); pthread_mutex_t *mutex, const pthread_mutexattr_t *attr int pthread_mutex_destroy ( pthread_mutex_t *mutex ); Mutexes devem ter sido inicializados antes de serem utilizados (no contexto das threads) pelas seguintes funções: int pthread_mutex_lock ( pthread_mutex_t *mutex ); int pthread_mutex_trylock ( pthread_mutex_t *mutex ); int pthread_mutex_unlock ( pthread_mutex_t *mutex );

12 #include <stdio.h> #include <pthread.h> pthread_mutex_t meu_mutex; struct limite int baixo; int alto; ; struct limite limite_1, limite_2; void* encontra_primos ( void *param ); int main ( ) pthread_t thd1, thd2; pthread_mutex_init( &meu_mutex, NULL ); limite_1.baixo = 0; limite_1.alto = 1000; pthread_create ( &thd1, NULL, encontra_primos, &limite_1); limite_2.baixo = 1000; limite_2.alto = 2000; pthread_create ( &thd2, NULL, encontra_primos, &limite_2); pthread_join ( thd1, NULL ); pthread_join ( thd2, NULL ); pthread_mutex_destroy ( &meu_mutex ); system ( "pause" ) ; return 0; void* encontra_primos( void *param ) struct limite *aux; aux = (struct limite *) param; int n, k; int primo; for ( n = aux->baixo; n <= aux->alto; n++ ) primo = 1; for ( k = 2; k < n; k++ ) if ( (n % k) == 0 ) primo = 0; break; if ( primo ) pthread_mutex_lock ( &meu_mutex ); printf ( " %u \n ", n ); pthread_mutex_unlock( &meu_mutex ); pthread_exit ( NULL );

13 pthread_create() pthread_create() Primos de 0 a 1000 Primos de 1001 a 2000 pthread_join()

14

15 Mais informações (técnicas) Para instalar em Dev C++ Ir no menu Ferramentas e depois no sub-menu Atualizações (++). No campo Select devpack server selecionar devpaks.org Community Devpacks e então clicar no botão Check for updates. Após as atualizações, selecionar item relativo a Pthreads e clicar no botão Download selected. Uma vez realizando o download ativa-se um instalador. Ao compilar um projeto com pthread, pode acontecer um erro causado pela falta dos arquivos libpthreadgc2.a e pthreadgc2.dll. O primeiro se encontra no diretório (default):...\devc++\dev-cpp\lib e o segundo pode ser encontrado no link: ftp://sourceware.org/pub/pthreads-win32/dll-latest/lib/. (último acesso em 20/05/2010). O arquivo libpthreadgc2.a deve ser adicionado ao projeto indo no menu Projeto, depois no sub-menu Opções de Projeto e clicando-se em Adicionar Biblioteca. O arquivo pthreadgc2.dll deve ser adicionado aos arquivos do Dev C++ (\DevC++\Dev- Cpp\bin) ou as pastas do sistema operacional, como C:\Windows\System32, que além de não ser recomendado, ainda pode ser mais trabalhoso, devido aos sistemas de segurança dos sistemas operacionais modernos.

16 Mais informações (técnicas) Para instalar Pthread em outros... Pesquisar na internet... Talvez em: Obs. : Último acesso foi em 19/05/2008, às 21:05. Infos Obs. : Último acesso foi em 19/05/2008, às 21:05. Infos Todas as man pages relativas a Pthreads. Obs. : Último acesso foi em 19/05/2008, às 20:07.

17 Apenas Lembrando: Número primo Número primo é um número inteiro com apenas quatro divisores inteiros: 1, -1, seu oposto e ele mesmo. Por exemplo, o número 3 é um número primo pois seus dois únicos divisores inteiros são 1 e 3, -1 e -3. Se um número inteiro tem módulo maior que 1 e não é primo, diz-se que é composto. Os números 0 e 1 não são considerados primos nem compostos. O conceito de número primo é muito importante na teoria dos números. Um dos resultados da teoria dos números é o Teorema Fundamental da Aritmética, que afirma que qualquer número natural pode ser escrito de forma única (desconsiderando a ordem) como um produto de números primos (chamados fatores primos): este processo se chama decomposição em fatores primos (fatoração). Os 25 primeiros números primos positivos são: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, Origem: Wikipédia, a enciclopédia livre.

18 À quem interessar possa outra versão do mesmo programa. #include <stdio.h> #include <pthread.h> pthread_mutex_t console_mutex; struct nrange unsigned low; unsigned high; range1, range2; void *find_primes(void *param); int main(int argc, char **argv) pthread_t thd1, thd2; pthread_mutex_init(&console_mutex, NULL); range1.low = 0; range1.high = 1000; pthread_create ( range2.low = 1000; range2.high = 2000; pthread_create ( pthread_join ( thd1, NULL ); pthread_join ( thd2, NULL ); &thd1, NULL, find_primes, &range1); &thd2, NULL, find_primes, &range2); pthread_mutex_destroy ( &console_mutex ); fgetc ( stdin ); return 0; void *find_primes( void *param ) struct nrange *range = (struct nrange*)param; unsigned n, k; int prime; for (n = range->low; n <= range->high; n++) prime = 1; for (k = 2; k < n; k++) if ( (n % k) == 0 ) prime = 0; break; if (prime) pthread_mutex_lock(&console_mutex); printf ( "%u\n", n ); pthread_mutex_unlock(&console_mutex); pthread_exit(null);

19 Atividades Exercícios Estudar Semáforos em Pthread. Pesquisar/Estudar como programar com Pthread de maneira orientada a objetos. Vide

20 Threads Windows

21 Threads em Windows Além de pthread, na programação (C/C++) para S.O. Windows, pode-se utilizar as seguintes alternativas: C run-time libraries (que faz parte da Microsoft Run-time Library). Win 32 API. Veja a próxima aula. Veja a bibliografia indicada em uma próxima transparência (abaixo)

22 C run-time libraries C run-time libraries faz parte da Microsoft Run-time Library. O Microsoft run-time library provê rotinas para programar o sistema operacional Microsoft Windows. Estas rotinas automatizam muitas tarefas comuns de programação que não são providas pelas linguagens C e C++ [Microsoft Visual C++ Help].

23 Win 32 API O Win32 API (também conhecido como Windows API) é um arquétipo (framework) baseado em C para a criação de aplicações Windows, e já estava disponível à partir das primeiras versões do Windows.

24 Bibliografias relativas a Threads. SCHILDT, H.: The Art of C++. McGraw-Hill Osborne Media. 1ª Edição (Paperback) ISBN-10: RICHARD, H. C.; KUO-CHUNG, T.: Modern Multithreading: Implementing, Testing, and Debugging Multithreaded Java and C++/Pthreads/Win32 Programs. Wiley-Interscience (Paperback) ISBN-10: HUGHES C; HUGHES T.: Object-Oriented Multithreading Using C++. Wiley; (Paperback) ISBN-10: HUGHES C; HUGHES T.: Professional Multicore Programming: Design and Implementation for C++ Developers. Wrox (Paperback) ISBN-10:

OO Engenharia Eletrônica

OO Engenharia Eletrônica OO Engenharia Eletrônica - Programação em C/C++ Slides 18: Introdução à Multithreading. Introdução à Multithreading: execução concorrente de tarefas. Exemplos usando a biblioteca pthread que é de acordo

Leia mais

OO Engenharia Eletrônica

OO Engenharia Eletrônica OO Engenharia Eletrônica - Programação em C/C++ Slides 18: Introdução à Multithreading. Introdução à Multithreading: execução concorrente de tarefas. Exemplos usando a biblioteca C Run-time library. Prof.

Leia mais

Programação com Posix Threads

Programação com Posix Threads 9 Programação com Posix Threads Revisão: Data: 11-03-2016 Cap. 9 1/6 Programação multi-threaded com Pthreads 9.1. O que é uma thread? Um processo represente a execução pelo sistema operativo dum programa.

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I UFRJ IM - DCC Sistemas Operacionais I Unidade II - Threads 24/04/2014 Prof. Valeria M. Bastos 1 ORGANIZAÇÃO DA UNIDADE Threads Processos Threads Conceituação Descrição e Imagem de uma Thread Tipos de thread

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Pai Natal Programação de Sistemas Pai Natal : 1/16 Problema (1) Considere o Pai Natal ( Santa Claus ) se encontra a dormir na sua loja em Rovaniemi-Lapónia finlandesa, sendo acordado

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Exercício : Museus Programação de Sistemas Museu: 1/11 Problema (1) A Fundação Calouste Gulbenkian vai organizar uma exposição temporária com quadros de Vincent van Gogh e Gustav

Leia mais

Procedimentos para Reinstalação do Sisloc

Procedimentos para Reinstalação do Sisloc Procedimentos para Reinstalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Criação de backups importantes... 3 3. Reinstalação do Sisloc... 4 Passo a passo... 4 4. Instalação da base de dados Sisloc...

Leia mais

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO 1 ÍNDICE 1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO... 3 1.1 REQUISITOS BASICOS DE SOFTWARE... 3 1.2 REQUISITOS BASICOS DE HARDWARE... 3 2 EXECUTANDO O INSTALADOR... 3 2.1 PASSO 01... 3 2.2 PASSO

Leia mais

Sistemas Operacionais II

Sistemas Operacionais II Introdução Instituto de Informátic ca - UFRGS Sistemas Operacionais II Da teoria à prática... (Processos, threads, mutex, semáforos, variáveis de condição e monitores) Aula 07 Fluxos de controle para programação

Leia mais

Procedimentos para Instalação do Sisloc

Procedimentos para Instalação do Sisloc Procedimentos para Instalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Instalação do Sisloc... 3 Passo a passo... 3 3. Instalação da base de dados Sisloc... 16 Passo a passo... 16 4. Instalação

Leia mais

Orientação a Objetos Programação em C++

Orientação a Objetos Programação em C++ OO - Engenharia de Computação/Eletrônica Orientação a Objetos Programação em C++ Slides 17: Programação Visual ou Orientada a Objetos Gráficos (Formulários, Botões, Caixas de Texto etc) - Exemplificado

Leia mais

Programação de Sistemas Carris

Programação de Sistemas Carris Programação de Sistemas Carris Programação de Sistemas Carris : 1/18 Problema (1) A fim de incentivar os alfacinhas a deslocar na cidade de Volvo, a Carris-Companhia de Carris de Ferro de Lisboa decidiu

Leia mais

Pthreads. O que são threads? Mario João Junior. Uma thread é um fluxo de execução de instruções que pode ser escalonado pelo sistema operacional.

Pthreads. O que são threads? Mario João Junior. Uma thread é um fluxo de execução de instruções que pode ser escalonado pelo sistema operacional. Pthreads Mario João Junior O que são threads? Uma thread é um fluxo de execução de instruções que pode ser escalonado pelo sistema operacional. O que são threads? No UNIX, uma thread: Existe no interior

Leia mais

Autoridade Certificadora Notarial CONFIGURAÇÃO DA MÁQUINA DA AR COM WINDOWS VISTA E WINDOWS 7 AC NOTARIAL. Página 1 de 14

Autoridade Certificadora Notarial CONFIGURAÇÃO DA MÁQUINA DA AR COM WINDOWS VISTA E WINDOWS 7 AC NOTARIAL. Página 1 de 14 Página 1 de 14 CONFIGURAÇÃO DA MÁQUINA DA AR COM WINDOWS VISTA E WINDOWS 7 AC NOTARIAL Página 2 de 14 Página 3 de 14 ECD Emissor de Certificados Digitais Conteúdo 1. INTRODUÇÃO... 4 2. PRÉ-REQUISITOS DE

Leia mais

Procedimentos para Instalação do SISLOC

Procedimentos para Instalação do SISLOC Procedimentos para Instalação do SISLOC Sumário 1. Informações Gerais...3 2. Instalação do SISLOC...3 Passo a passo...3 3. Instalação da Base de Dados SISLOC... 11 Passo a passo... 11 4. Instalação de

Leia mais

possível até impedir o funcionamento do Windows. Faz-scuidado redobrado ao ativar determinados recursos.

possível até impedir o funcionamento do Windows. Faz-scuidado redobrado ao ativar determinados recursos. AULA 4: DIRETIVAS DE GRUPO Objetivo: Conhecer e aplicar conceitos sobre restrições de acesso ao sistema operacional Windows através de diretivas de grupo. Diretivas de Grupo: Computadores com mais de um

Leia mais

Introdução a Programação Concorrente. Aula 02. Prof. André Luis Meneses Silva

Introdução a Programação Concorrente. Aula 02. Prof. André Luis Meneses Silva Introdução a Programação Concorrente Aula 02 Prof. André Luis Meneses Silva Agenda Pthreads Trabalhando com Threads Exclusão Mútua Semáforos Pthreads Históricamente, fabricantes de hardware implementam

Leia mais

Algoritmos e Programação Estruturada

Algoritmos e Programação Estruturada Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.

Leia mais

COMO INSTALAR O CATÁLOGO

COMO INSTALAR O CATÁLOGO Este guia tem por finalidade detalhar as etapas de instalação do catálogo e assume que o arquivo de instalação já foi baixado de nosso site. Caso não tenho sido feita a etapa anterior favor consultar o

Leia mais

Portal do Senac: Área Exclusiva para Alunos Manual de Navegação e Operação

Portal do Senac: Área Exclusiva para Alunos Manual de Navegação e Operação Portal do Senac: Área Exclusiva para Alunos Índice 1. Introdução... 4 2. Acessando a área exclusiva... 5 3. Trocando a senha... 6 4. Mensagens... 7 4.1. Conhecendo a tela principal... 7 4.2. Criando uma

Leia mais

Programação de Sistemas Cafetaria

Programação de Sistemas Cafetaria Programação de Sistemas Cafetaria Programação de Sistemas Cafetaria : 1/14 Problema Uma cafetaria vende duas classes de café, cada um servido por uma fila dedicada: local e levar ( take away ). Ao entrar

Leia mais

OO Engenharia Eletrônica

OO Engenharia Eletrônica OO Engenharia Eletrônica - Programação em C/C++ Slides 18: Introdução à programação multi-thread. Thread: linha de execução de um processo. Multi-thread: execução de múltiplas threads em um processo. Prof.

Leia mais

Cadastramento de Computadores. Manual do Usuário

Cadastramento de Computadores. Manual do Usuário Cadastramento de Computadores Manual do Usuário Setembro 2008 ÍNDICE 1. APRESENTAÇÃO 1.1 Conhecendo a solução...03 Segurança pela identificação da máquina...03 2. ADERINDO À SOLUÇÃO e CADASTRANDO COMPUTADORES

Leia mais

Instruções para Instalação dos Utilitários Intel

Instruções para Instalação dos Utilitários Intel Instruções para Instalação dos Utilitários Intel Estas instruções ensinam como instalar os Utilitários Intel a partir do CD nº 1 do Intel System Management Software (liberação somente para os dois CDs

Leia mais

DIF-e - MANUAL DE ORIENTAÇÃO AO CONTRIBUINTE

DIF-e - MANUAL DE ORIENTAÇÃO AO CONTRIBUINTE Página 1 de REVISÃO DATA VERSÃO DO HISTÓRICO DAS ALTERAÇÕES SISTEMA 00 1.0 Emissão inicial. Página 2 de Sumário 1. Introdução... 4 2. Modelo Conceitual... 4 3. Programa Cliente... 5 3.1 Telas de Configuração...

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 06: Threads. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 06: Threads Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Objetivos Introduzir o conceito de thread Discutir as APIs das bibliotecas de threads Pthreads, Win32

Leia mais

BIT 0006-12 Atualização de Sistema Android 2.3 para Android 4.0

BIT 0006-12 Atualização de Sistema Android 2.3 para Android 4.0 BIT 0006-12 Atualização de Sistema Android 2.3 para Android 4.0 Família: TAB200 Data Elaboração: 29/06/2012 Elaborador: Enviado para o SAC? XXXXX ( x )Sim ( )Não Data do envio: 02/07/2012 DESCRIÇÃO TÉCNICA

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas Operacionais Prof. Marcelo Sabaris Carballo Pinto Gerenciamento de Dispositivos Gerenciamento de Dispositivos de E/S Introdução Gerenciador de Dispositivos Todos os dispositivos

Leia mais

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO

Leia mais

MÓDULO 02 PROCESSOS E THREADS PROCESSOS e THREADS

MÓDULO 02 PROCESSOS E THREADS PROCESSOS e THREADS MÓDULO 02 PROCESSOS E THREADS PROCESSOS e THREADS 1. ATIVIDADE 01 Verificar a criação de um processo filho (que imprime de 51 a 100) que rodará concorrentemente com o processo pai (que imprime de 1 a 50)

Leia mais

Sistemas Operacionais II

Sistemas Operacionais II Mecanismos de sincronização de processos Instituto de Informátic ca - UFRGS Sistemas Operacionais II Da teoria à prática... (Processos, threads, mutex, semáforos, variáveis de condição e monitores) Aula

Leia mais

Gerenciamento de Arquivos e Pastas. Professor: Jeferson Machado Cordini jmcordini@hotmail.com

Gerenciamento de Arquivos e Pastas. Professor: Jeferson Machado Cordini jmcordini@hotmail.com Gerenciamento de Arquivos e Pastas Professor: Jeferson Machado Cordini jmcordini@hotmail.com Arquivo Todo e qualquer software ou informação gravada em nosso computador será guardada em uma unidade de disco,

Leia mais

Threads em Ambiente LINUX. Estudo e testes com a biblioteca pthreads

Threads em Ambiente LINUX. Estudo e testes com a biblioteca pthreads Universidade Federal do ABC Disciplina: BC 1518 Sistemas Operacionais (SO) Prática: Threads Atividade 3 Threads em Ambiente LINUX Objetivo Estudo e testes com a biblioteca pthreads Threads Como vimos em

Leia mais

Linguagem de Programação I

Linguagem de Programação I Linguagem de Programação I Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Exemplo: Explorar Templates e Exceções Incrementar com o uso de STL 2 Crie uma função verificarpalindromo()

Leia mais

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 1 Sumário 1 - Instalação Normal do Despachante Express... 3 2 - Instalação do Despachante Express em Rede... 5 3 - Registrando o Despachante Express...

Leia mais

LINGUAGEM C UMA INTRODUÇÃO

LINGUAGEM C UMA INTRODUÇÃO LINGUAGEM C UMA INTRODUÇÃO AULA 1 Conceitos muito básicos 1 Introdução O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

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

Resumo da Matéria de Linguagem de Programação. Linguagem C

Resumo da Matéria de Linguagem de Programação. Linguagem C Resumo da Matéria de Linguagem de Programação Linguagem C Vitor H. Migoto de Gouvêa 2011 Sumário Como instalar um programa para executar o C...3 Sintaxe inicial da Linguagem de Programação C...4 Variáveis

Leia mais

Manual de instalação e configuração da Ferramenta Android SDK

Manual de instalação e configuração da Ferramenta Android SDK Trabalho de Programação para Dispositivos Móveis Turma: 1011 Camila Botelho camilacunhabotelho@gmail.com Manual de instalação e configuração da Ferramenta Android SDK Introdução O Android é uma ferramenta

Leia mais

Threads em Java. Sistemas Operacionais - Laboratório Professor Machado

Threads em Java. Sistemas Operacionais - Laboratório Professor Machado Threads em Java Sistemas Operacionais - Laboratório Professor Machado 1 Conceitos de Programação Concorrente Uma unidade concorrente é um componente de um programa que não exige a execução seqüencial,

Leia mais

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

Leia mais

Trabalho 3: Agenda de Tarefas

Trabalho 3: Agenda de Tarefas INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma

Leia mais

PROCESSOS. Prof. Maicon A. Sartin mapsartin@gmail.com

PROCESSOS. Prof. Maicon A. Sartin mapsartin@gmail.com PROCESSOS Prof. Maicon A. Sartin mapsartin@gmail.com Cenários em Sistemas Multitarefas Um usuário pode executar diversas atividades simultâneas Música Editoração de texto Navegar na Internet Servidor pode

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

MANUAL DE INSTALAÇÃO DO SISTEMA BDS PROPOSTA

MANUAL DE INSTALAÇÃO DO SISTEMA BDS PROPOSTA MANUAL DE INSTALAÇÃO DO SISTEMA BDS PROPOSTA 1 - INFORMAÇÕES SOBRE O SISTEMA 2 2 - INSTALAÇÃO DO FIREBIRD 3...5 3 - INSTALAÇÃO DO JAVA 6 4 - INSTALAÇÃO DO SISTEMA 7 5 - UTILIZANDO O SISTEMA 8...12 LER

Leia mais

Download e Instalação

Download e Instalação Download e Instalação Sistema Declaração eletrônica de Serviços Acesso a Página do Download...03 JRE Java Runtime Enviroment 5.0...05 Adobe Acrobat Reader...10 DeS - Declaração Eletrônica de Serviços...13

Leia mais

Google Drive. Passos. Configurando o Google Drive

Google Drive. Passos. Configurando o Google Drive Google Drive um sistema de armazenagem de arquivos ligado à sua conta Google e acessível via Internet, desta forma você pode acessar seus arquivos a partir de qualquer dispositivo que tenha acesso à Internet.

Leia mais

ÍNDICE. 1. Introdução...2. 2. O que é o Sistema Mo Porã...2. 3. Como acessar o Site Mo Porã...3. 4. Cadastro do Sistema Mo Porã...

ÍNDICE. 1. Introdução...2. 2. O que é o Sistema Mo Porã...2. 3. Como acessar o Site Mo Porã...3. 4. Cadastro do Sistema Mo Porã... ÍNDICE 1. Introdução...2 2. O que é o Sistema Mo Porã...2 3. Como acessar o Site Mo Porã...3 4. Cadastro do Sistema Mo Porã...4 5. Navegando no Site Mo Porã...6 5. 1 Manual de ajuda do sistema Mo Porã...7

Leia mais

AVG Admin 2012 SQL Server 2005 Express

AVG Admin 2012 SQL Server 2005 Express AVG Admin 2012 SQL Server 2005 Express Conteúdo: 1. INSTALAÇÃO DO SQL SERVER 2005 EXPRESS... 3 1.1. Microsoft.Net Framework 2.0... 3 1.2. Microsoft SQL Server 2005 Express... 3 2. INSTALAÇÃO E CONFIGURAÇÃO

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura

Leia mais

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon MDaemon GroupWare plugin para o Microsoft Outlook Trabalhe em Equipe Usando o Outlook e o MDaemon Versão 1 Manual do Usuário MDaemon GroupWare Plugin for Microsoft Outlook Conteúdo 2003 Alt-N Technologies.

Leia mais

Programação Concorrente Processos e Threads

Programação Concorrente Processos e Threads Programação Concorrente Processos e Threads Prof. Eduardo Alchieri Processos O conceito mais central em qualquer sistema operacional é o processo Uma abstração de um programa em execução Um programa por

Leia mais

DCC 003 Algoritmos e Estruturas de Dados I Tutorial de instalação do GCC e do TextPad

DCC 003 Algoritmos e Estruturas de Dados I Tutorial de instalação do GCC e do TextPad DCC 003 Algoritmos e Estruturas de Dados I Tutorial de instalação do GCC e do TextPad Semestre: 2012-2 Professor: Daniel Fernandes Macedo Introdução Durante as aulas práticas, iremos utilizar nos laboratórios

Leia mais

ESTUDO DE CASO WINDOWS VISTA

ESTUDO DE CASO WINDOWS VISTA ESTUDO DE CASO WINDOWS VISTA História Os sistemas operacionais da Microsoft para PCs desktop e portáteis e para servidores podem ser divididos em 3 famílias: MS-DOS Windows baseado em MS-DOS Windows baseado

Leia mais

Componentes da linguagem C++

Componentes da linguagem C++ Componentes da linguagem C++ C++ é uma linguagem de programação orientada a objetos (OO) que oferece suporte às características OO, além de permitir você realizar outras tarefas, similarmente a outras

Leia mais

Manual de Instalação ( Client / Server ) Versão 1.0

Manual de Instalação ( Client / Server ) Versão 1.0 1 pág. PROCEDIMENTO DE INSTALAÇÃO DO SGCOM ATENÇÃO: É OBRIGATÓRIO UMA CONEXÃO COM A INTERNET PARA EXECUTAR A INSTALAÇÃO DO SGCOM. Após o Download do instalador do SGCOM versão Server e Client no site www.sgcom.inf.br

Leia mais

Instalando o Internet Information Services no Windows XP

Instalando o Internet Information Services no Windows XP Internet Information Services - IIS Se você migrou recentemente do Windows 95 ou 98 para o novo sitema operacional da Microsoft Windows XP, e utilizava antes o Personal Web Server, deve ter notado que

Leia mais

Microsoft Lync Manual de Instalação e Uso

Microsoft Lync Manual de Instalação e Uso Microsoft Lync Manual de Instalação e Uso Sumário Introdução_... 3 Detalhamento_... 5 Importação_... 8 Funcionalidades na Intranet_... 13 Geração de nova senha... 14 Lembrete de expiração da senha... 15

Leia mais

Introdução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza

Introdução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza Introdução Manipulação de arquivos em C Estrutura de Dados II Prof Jairo Francisco de Souza Manipulação de Arquivo em C Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo

Leia mais

Guia Sphinx: instalação, reposição e renovação

Guia Sphinx: instalação, reposição e renovação Sphinx : software para coleta e análise de dados acadêmicos e gerenciais. Tecnologia e informação para a decisão! Copyright Sphinx Todos direitos reservados Guia Sphinx: instalação, reposição e renovação

Leia mais

Aula 06 Introdução à Teste de Módulos II e Exercícios. Alessandro Garcia LES/DI/PUC-Rio Março 2014

Aula 06 Introdução à Teste de Módulos II e Exercícios. Alessandro Garcia LES/DI/PUC-Rio Março 2014 Aula 06 Introdução à Teste de Módulos II e Exercícios Alessandro Garcia LES/DI/PUC-Rio Março 2014 Princípios Discutidos até aqui Cada módulo deveria implementar uma única abstração similarmente: cada função

Leia mais

COMO INSTALAR ZIM 8.50 WINDOWS

COMO INSTALAR ZIM 8.50 WINDOWS ZIM TECHNOLOGIES DO BRASIL COMO INSTALAR ZIM 8.50 WINDOWS Próx Antes de Iniciar O objetivo deste documento é apresentar os passos necessários para instalar a versão mais recente do Zim 8.50 para Windows.

Leia mais

SUAP Módulo Protocolo Manual do Usuário DTI DIRETORIA DE TECNOLOGIA DA INFORMAÇÃO SEÇÃO DE PROJETOS, SISTEMAS E PROCESSOS DE NEGÓCIO

SUAP Módulo Protocolo Manual do Usuário DTI DIRETORIA DE TECNOLOGIA DA INFORMAÇÃO SEÇÃO DE PROJETOS, SISTEMAS E PROCESSOS DE NEGÓCIO SUAP Módulo Protocolo Manual do Usuário DTI DIRETORIA DE TECNOLOGIA DA INFORMAÇÃO SEÇÃO DE PROJETOS, SISTEMAS E PROCESSOS DE NEGÓCIO SUMÁRIO 1. APRESENTAÇÃO... 1 1.1. ACESSO AO SISTEMA... 1 1.2. TELA INICIAL

Leia mais

Instalação do VOL Backup para Desktops

Instalação do VOL Backup para Desktops Este é o guia de instalação e configuração da ferramenta VOL Backup para desktops. Deve ser seguido caso você queira instalar ou reinstalar o VOL Backup em sistemas Windows 2000, XP, Vista ou 7, 32 ou

Leia mais

Guia de Atualização TOTVS Segurança e Acesso 11.6

Guia de Atualização TOTVS Segurança e Acesso 11.6 04/2014 Sumário 1 Prefácio... 3 1.2 Finalidade... 3 1.3 Público Alvo... 3 1.4 Organização deste Guia... 3 1.5 Documentações Importantes... 3 2 Atualização... 4 2.1 Executando o Updater de Atualização...

Leia mais

2 Um Primeiro Programa em C

2 Um Primeiro Programa em C 2 Um Primeiro Programa em C Ronaldo F. Hashimoto, Carlos H. Morimoto e José A. R. Soares OobjetivodessaaulaéintroduzirvocêàlinguagemCemambienteLinux,primeiramentemostrandoasua estrutura, e a seguir com

Leia mais

Este tutorial está publicado originalmente em http://www.baboo.com.br/absolutenm/anmviewer.asp?a=30405&z=300

Este tutorial está publicado originalmente em http://www.baboo.com.br/absolutenm/anmviewer.asp?a=30405&z=300 WinRAR: Conheça este excelente compactador de arquivos Introdução: É fato que a Internet está mais rápida com a popularização da banda larga, mas os compactadores de arquivos ainda apresentam muita utilidade

Leia mais

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA INTEGRA SERVICES E STATUS MONITOR GUIA INTEGRA SERVICES E STATUS MONITOR 1 - Integra Services Atenção: o Integra Services está disponível a partir da versão 2.0 do software Urano Integra. O Integra Services é um aplicativo que faz parte

Leia mais

Manual de Instalação

Manual de Instalação BVP WEB Manual de Instalação Novembro / 2012 São Paulo - SP Índice Geral INTRODUÇÃO... 2 REQUISITOS MÍNIMOS PARA INSTALAÇÃO DO SISTEMA... 3 3.1 CONFIGURAÇÕES DESEJÁVEIS DE HARDWARE & SOFTWARE... 3 INSTALANDO

Leia mais

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL Urano Indústria de Balanças e Equipamentos Eletrônicos Ltda. Rua Irmão Pedro 709 Vila Rosa Canoas RS Fone: (51) 3462.8700 Fax: (51) 3477.4441 Características do Software Urano Integra 2.2 Data: 12/05/2014

Leia mais

Como instalar uma impressora?

Como instalar uma impressora? Como instalar uma impressora? Antes de utilizar uma impressora para imprimir seus documentos, arquivos, fotos, etc. é necessário instalá-la e configurá-la no computador. Na instalação o computador se prepara

Leia mais

Manual Administrador - Mídia System

Manual Administrador - Mídia System Manual Administrador - Mídia System Logo após cadastrarmos sua Empresa em nosso sistema, será enviado um e-mail confirmando as informações de acesso do Administrador do sistema. Obs: Caso não tenha recebido

Leia mais

Instalação do SisAlu 1. Apostila de Instalação do SisAlu

Instalação do SisAlu 1. Apostila de Instalação do SisAlu Instalação do SisAlu 1 Apostila de Instalação do SisAlu 2 Instalação do SisAlu Instalação do SisAlu 3 Índice 1. Objetivo... 4 2. Instalação... 5 2.1. Kit de Instalação... 5 2.2. Requisitos do sistema...

Leia mais

MANUAL DE CONFIGURAÇÃO DO BACKUP

MANUAL DE CONFIGURAÇÃO DO BACKUP SISTEMA DE AUTOMAÇÃO COMERCIAL MANUAL DE CONFIGURAÇÃO DO BACKUP Apresentação Após o término da instalação você deverá configurar o Backup para que você tenha sempre uma cópia de segurança dos seus dados

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Manual de Atualização Versão 3.6.4.

Manual de Atualização Versão 3.6.4. Manual de Atualização Versão 3.6.4. Sumário 1. AVISO... 1 2. INTRODUÇÃO... 2 3. PREPARAÇÃO PARA ATUALIZAÇÃO... 3 4. ATUALIZANDO GVCOLLEGE E BASE DE DADOS... 7 5. HABILITANDO NOVAS VERSÕES DO SISTEMA....

Leia mais

"Manual de Acesso ao Moodle - Discente" 2014

Manual de Acesso ao Moodle - Discente 2014 "Manual de Acesso ao Moodle - Discente" 2014 Para acessar a plataforma, acesse: http://www.fem.com.br/moodle. A página inicial da plataforma é a que segue abaixo: Para fazer o login, clique no link Acesso

Leia mais

Java Server Pages: Apresentação e Instalação

Java Server Pages: Apresentação e Instalação 1 Java Server Pages: Apresentação e Instalação Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Apresentar a tecnologia Java Server Pages; Instalar e configurar

Leia mais

MULTIACERVO - VERSÃO 17.*

MULTIACERVO - VERSÃO 17.* MULTIACERVO - VERSÃO 17.* MANUAL PARA CONVERSÃO DA VERSÃO 16.* PARA 17.* CONTEÚDO: A) Procedimentos comuns para todas as arquiteturas B) Procedimentos exclusivos arquitetura Cliente/Servidor MS-SQL-SERVER

Leia mais

ANEXO 01 GUIA PASSO A PASSO

ANEXO 01 GUIA PASSO A PASSO ANEXO 01 GUIA PASSO A PASSO Conteúdo 1 TELA DE ACESSO... 3 1.1 Enviar e-mail... 4 2 INTEGRANDO CONTAS COM OUTLOOK... 5 3 DREAMSPARK... 6 4 SKYDRIVE... 12 4.1 Organização do ambiente criar pastas... 13

Leia mais

Oficina de Inclusão Tecnológica Windows Live Skydrive

Oficina de Inclusão Tecnológica Windows Live Skydrive 1 Windows Live Skydrive Fonte imagem: blogaomobile.org Ementa: O windows Live Skydrive apresenta a possibilidade da computação em nuvem, que permite ao usuário armazenar arquivos online, de forma a não

Leia mais

Tutorial 8 Tarefas no Moodle

Tutorial 8 Tarefas no Moodle Tutorial 8 Tarefas no Moodle Na versão 2.4 do Moodle, as quatro tarefas que já existiam nas versões anteriores (Texto online, Atividade off-line, Envio de arquivo único e Modalidade avançada de carregamento

Leia mais

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. Data: 14/8 Página 1 de 9 Primeiros passos Introdução Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. No tutorial anterior, mostramos como

Leia mais

Uso do Action₀NET com o PI System da OsiSoft

Uso do Action₀NET com o PI System da OsiSoft Uso do Action₀NET com o PI System da OsiSoft Introdução Se sua empresa utiliza o PI System da OsiSoft, o Action₀NET é o software SCADA (Supervisory Control and Data Acquisition) que mais se adequa a sua

Leia mais

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

Instalação do ByYou ESB. Guia de Instalação e Atualização do ByYou ESB

Instalação do ByYou ESB. Guia de Instalação e Atualização do ByYou ESB Instalação do ByYou ESB Guia de Instalação e Atualização do ByYou ESB Instalação do ByYou ESB Copyright 2010 TOTVS S.A. Todos os direitos reservados. Nenhuma parte deste documento pode ser copiada, reproduzida,

Leia mais

Introdução à Linguagem C/C++ Parte I

Introdução à Linguagem C/C++ Parte I Linguagem de Programação I Introdução à Linguagem C/C++ Parte I Professor Mestre Ricardo Alexandre Carmona SÃO PAULO - 2014 Introdução à Linguagem C/C++ - Parte I 1 - HISTÓRICO A Linguagem de Programação

Leia mais

MANUAL AGENDADOR DE TAREFAS LOGIX

MANUAL AGENDADOR DE TAREFAS LOGIX Outubro 2011 rev. 01 MANUAL AGENDADOR DE TAREFAS LOGIX Elaboração: Rubens Dos Santos Filho Framework rubens.santos@totvs.com.br Objetivo Este documento tem como objetivo relatar a funcionalidade de agendamento

Leia mais

Manual - Gemelo Backup Online WEB

Manual - Gemelo Backup Online WEB Manual - Gemelo Backup Online WEB É um disco virtual que permite acessar seus dados de qualquer lugar através da Internet. Acesso A Gemelo Storage Solutions e enviará um e-mail confirmando que você é usuário

Leia mais

Programação de Computadores I. Conhecendo a IDE Code::Blocks

Programação de Computadores I. Conhecendo a IDE Code::Blocks Code::Blocks Conhecendo a IDE Programação de Computadores I Professor: Edwar Saliba Júnior Conhecendo a IDE Code::Blocks Apresentação: 1) Abra a IDE (Integrated Development Environment), ou seja, o Ambiente

Leia mais

Tutorial Gerar arquivo PDF. Gerando um documento pdf com várias imagens 1- Inserir imagem no Word

Tutorial Gerar arquivo PDF. Gerando um documento pdf com várias imagens 1- Inserir imagem no Word Tutorial Gerar arquivo PDF. Com o objetivo de simplificar e diminuir o tamanho de arquivos anexos nos projetos, elaboramos um pequeno tutorial mostrando como gerar um único arquivo no formato pdf contendo

Leia mais

Considerações a serem feitas antes da implantação.

Considerações a serem feitas antes da implantação. Multi-Loja Objetivo O objetivo deste documento é demonstrar o conceito de Multi-loja utilizando o Sismoura. É uma ferramenta que permite a comunicação entre as empresas, possibilitando assim que a matriz

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

Leia mais