Conceitos e Implementação de um Sistema Concorrente Orientado a Objeto

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

Download "Conceitos e Implementação de um Sistema Concorrente Orientado a Objeto"

Transcrição

1 Conceitos e Implementação de um Sistema Concorrente Orientado a Objeto Paulo Roberto Gonçalves, Thereza Patrícia P. Padilha Curso de Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP) Palmas, TO, Brasil {prg,thereza@ulbra-to.br Resumo. A maioria dos sistemas concorrentes implementados utiliza o paradigma orientado a objeto. Diante disso, este artigo apresenta alguns conceitos da programação de sistemas concorrentes orientados a objetos, bem como descreve a implementação de um ambiente de aprendizado colaborativo usando classes Threads em Java. 1 Introdução Os recentes desenvolvimentos de redes locais de alto desempenho têm despertado grande interesse em sistemas distribuídos, que consistem de diversos computadores que podem operar independentemente, mas interconectados eficientemente. A comunicação em sistemas distribuídos pode ser realizada através da chamada de procedimentos remota (Remote Procedure Call - RPC). A implementação de RPC envolve a transferência de solicitações do cliente para o servidor e dos resultados do servidor para o cliente. A limitação do RPC é a transferência de informações entre dois computadores apenas (cliente e servidor). Diante dessa limitação, surgiu a comunicação em grupo que permite a um usuário enviar uma mensagem para um ou mais membros ao mesmo tempo. Quando um usuário envia uma mensagem para outro usuário a comunicação é chamada de ponto-a-ponto. Quando um usuário envia uma mensagem para vários usuários, a comunicação é chamada de um-paravários [Tanenbaum 1995]. A maioria dos sistemas distribuídos possibilita a existência de múltiplas threads num único processo, sendo neste caso mais conhecido como multithread. Esta habilidade provê alguns benefícios importantes como: a rapidez de resposta para o usuário, o compartilhamento de memória e de outros recursos do processo a qual pertencem e economia com relação à alocação de memória e recursos para a criação de processos. Porém também introduz alguns problemas como: complexidade e a possibilidade de um menor desempenho da máquina, que ocorre quando uma thread que executa freqüentemente, mas realiza poucas tarefas a cada execução [Silberschatz et al. 2000].

2 O objetivo deste trabalho é apresentar os conceitos envolvidos na programação de sistemas concorrentes orientados a objetos, bem como descrever a implementação de um ambiente de aprendizado colaborativo usando as classes Threads em Java. Além do alto grau de recursos oferecidos, a linguagem de programação Java é multiplataforma, permitindo que um mesmo programa possa ser utilizado em máquinas com sistemas operacionais diferentes, garantindo a portabilidade de qualquer aplicação implementada nessa linguagem. Além disso, o Java disponibiliza primitivas de concorrência. Estas foram relevâncias que nos levaram a escolher a linguagem Java. Este artigo está organizado da seguinte forma: na seção 2 é apresentada uma visão geral sobre programação concorrente; na seção 3 são abordados os principais conceitos associados com sistemas contendo threads e multithreads, bem como a sua utilização na linguagem Java; na seção 4 é apresentada, como um estudo de caso, a implementação de um ambiente colaborativo usando classes Threads em Java; e na seção 5 são descritas as considerações finais do trabalho. 2 Programação Concorrente: visão geral Um programa seqüencial é composto por um conjunto de instruções que são executadas seqüencialmente, sendo que a execução dessas instruções é denominada processo. Um programa concorrente especifica dois ou mais programas seqüenciais que podem ser executados concorrentemente como processos paralelos [Santana et al. 1997]. Historicamente, a concorrência foi introduzida nos sistemas de computação como um meio para aumentar a performance. Os primeiros computadores foram máquinas seriais que processavam os dados bit a bit, ou seja, um bit a cada ciclo. Para aumentar o desempenho, os computadores passaram a processar os dados em palavras de diversos bits a cada ciclo. Um novo aumento do desempenho foi obtido ao arranjar as operações de CPU e de entrada e saída em paralelo. Isto imediatamente impulsionou a programação concorrente e o desenvolvimento de mecanismos e sistemas operacionais que suportassem a concorrência e o paralelismo de operações. A programação concorrente pode ser executada em um só processador, explorando o que se chama de pseudoparalelismo, ou em vários processadores, passando a ser chamada de programação paralela, que se caracteriza pela execução de várias tarefas ao mesmo instante. A programação concorrente diferencia-se de programação paralela e distribuída, da seguinte forma: na programação paralela os processos são executados simultaneamente, em um computador com multiprocessadores, que se encarregam dos diversos processos em paralelo, na programação distribuída os processos são executados em vários computadores ligados através de uma rede [Santana et al. 1997]. As linguagens específicas para a programação concorrente apresentam flexibilidade, clareza para ativação e coordenação de processos, ferramentas para depuração e detecção de erros, e alto desempenho. Exemplos dessas linguagens são: Ada e Java.

3 3 Threads e Multithreads em Java Um programa em execução é chamado de processo. Cada processo possui, no mínimo, uma thread, que nada mais é que um fluxo de execução. Os processos também podem ser executados com múltiplas threads, realizando mais de uma tarefa de cada vez (multithread). A figura 1 apresenta a diferença entre um processo de uma única thread e um processo com múltiplas threads [Silberschatz et al. 2000]. Figura 1. Processos com um e múltiplas threads [Silberschatz et al 2000] Um programa multithread é aquele que pode ser descrito como efetuando diversas atividades ao mesmo tempo. Um exemplo de programa multithread seria uma aplicação servidora, pois, tipicamente um servidor atende a vários pedidos de cliente. Utilizar um servidor com uma só thread significa que cada pedido terá que esperar o pedido anterior terminar, isso torna-se lento e ineficiente. Por outro lado, o uso de um servidor multithread atenderia a vários pedidos simultaneamente [Silberschatz et al. 2000]. Em Java, mesmo um programa simples com apenas o método main() é executado como uma thread. Essa linguagem também oferece diversos comandos para a criação e a manipulação de classes do tipo Threads. A maneira mais simples de se declarar uma classe Thread é criar uma subclasse derivada da classe Thread. Nessa nova classe também é preciso gerar um método run(), que vai ser executado quando a thread for instanciada. A criação de uma classe thread e o seu método run() podem ser observados na figura 2, sendo que esta apresenta um programa que instancia duas threads que serão executadas concorrentemente, sem especificar a ordem de execução dessas threads.

4 class testethread extends Thread { private String nome; public testethread (String str){ nome = str; public void run(){ system.out.println( Começar ); system.out.println( Em execução - + nome); sleep(1); system.out.println(nome + - Terminou ); public static void main(string args[]) { testethread um = new testethread( Thread 1 ); testethread dois = new testethread( Thread 2 ); um.start(); dois.start(); Figura 2: Criação de uma classe Thread em Java Uma classe em Java pode herdar métodos e atributos de apenas uma outra classe (herança simples), sendo que não é permitida a herança múltipla. Essa limitação pode ser resolvida com a utilização da interface Runnable, que é semelhante a uma classe abstrata, ou seja, uma classe que não permite instanciar objetos. Nesse caso é preciso implementar e não herdar, sendo que uma classe pode implementar várias interfaces. Um exemplo de criação de threads por meio da interface Runnable pode ser observado na figura 3. Enfim, as formas possíveis de se criar classes threads em Java são: a partir da classe Thread (extends Threads, figura 2) e implementando a interface Runnable (implements Runnable, figura 3).

5 class testethread implements Runnable { private String nome; public testethread (String str){ nome = str; public void run(){ system.out.println( Começar ); system.out.println( Em execução - + nome); sleep(1); system.out.println(nome + - Terminou ); public static void main(string args[]) { testethread um = new testethread( Thread 1 ); testethread dois = new testethread( Thread 2 ); new Thread(um).start(); new Thread(dois).start(); Figura 3: Criação de thread por meio da interface Runnable Uma thread pode estar em um dos quatro estados possíveis, que são: - novo: quando um objeto thread é criado; - executando: quando uma thread está em execução; - bloqueado: quando uma thread fica bloqueada esperando a resposta de algum método, como sleep() ou suspend(), ou quando executa uma operação de I/O a qual é bloqueante; - terminado: quando uma thread termina seu método run() ou quando o método stop() é chamado. Na figura 4 são apresentados os estados possíveis de uma thread, bem como os métodos que provocam a transição de estados. Apresenta também o trajeto que uma determinada thread pode seguir, por exemplo, uma thread só pode ser bloqueada quando estiver executando.

6 Figura 4: Estados de uma thread Java [Silberschatz et al 2000] A linguagem Java fornece vários métodos para o controle dos estados de uma thread, são eles: start(), suspend(), sleep(), resume() e stop(). O método start() inicia a execução de uma thread. O método suspend() suspende a execução de uma thread que estiver processando no momento. O método sleep() suspende a thread em execução durante um determinado período. O método resume() retorna a execução de uma thread que tinha sido suspensa. Por fim, o método stop() interrompe a execução de uma thread. Após ser interrompida, uma thread não poderá ser retomada ou iniciada. Na linguagem Java, toda linha de execução tem uma certa prioridade, que varia entre 1 e 10. Por definição, uma linha de execução herda a prioridade da sua linha de execução progenitora. É possível aumentar ou diminuir a prioridade de qualquer linha de execução por meio do método setpriority(). Quando, o scheduler (conjunto de políticas e de mecanismos incorporados no sistema operacional que determinam a ordem em que as threads executam) selecionar uma nova linha de execução, geralmente a que possui a maior prioridade é escolhida [Horstman & Cornell 2001]. Em geral, as prioridades das threads são alteradas apenas quando existe uma grande necessidade de um fluxo terminar uma execução antes dos demais. Existe concorrência num programa Java quando há mais do que uma thread ativa. Na execução de múltiplos threads, quando uma thread está em execução, as outras estão bloqueadas ou aguardando a liberação do processador. 4 Um Estudo de Caso O ambiente de aprendizado colaborativo via Internet, que está sendo desenvolvido, agrega várias ferramentas de comunicação, que são: editor de edição colaborativa, votação e chat. A implementação deste ambiente utiliza a linguagem Java pelo fato desta possuir uma alta portabilidade, bem como facilidade de suporte à distribuição e concorrência. Em termos de implementação, cada ferramenta foi considerada como uma aplicação separada, mas com o objetivo de propiciar a colaboração como um todo. Cada ferramenta possui um servidor que aguarda as solicitações de clientes, sendo que cada conexão de cliente é transformada em uma thread, tornando-se assim uma aplicação multithread. Na figura 5 é apresentado um trecho de código da criação das threads clientes.

7 public class MultiServerThread extends Thread { private Socket connection; ObjectInputStream input; MultiServerThread(Socket conn) { connection = conn; public void run() { try { Vector vcliente; Vector vservidor = new Vector(); ObjectInputStream input; Input = new ObjectInputStream (connection.getinputstream()); vcliente = (Vector)input.readObject(); vservidor.addelement(vcliente.elementat(0)); vservidor.addelement(vcliente.elementat(1)); vservidor.addelement( new ObjectOutputStream (connection.getoutputstream())); Figura 5: Trecho de código de criação de threads clientes Esse trecho mostra como foi criada a classe MultiServerThread, que herda os atributos e métodos da classe Thread e recebe um objeto do tipo socket para conexão. Vale ressaltar que todas as threads criadas possuem a prioridade padrão, isto é, o valor 5. É implementado também o método run(), o qual será executado quando o objeto dessa classe for instanciado. Esse método possui alguns procedimentos adotados para a implementação da conexão com o servidor e do envio de informações. Como recurso de rede e de comunicação distribuída, foram utilizados sockets, que atuam como uma espécie de ponte que é estabelecida entre os dois processos. Uma vez criada essa ponte, os programas conseguem transmitir e receber informações. Esse modelo de comunicação segue a arquitetura cliente/servidor, na qual existe uma entidade (servidor) que disponibiliza um serviço e uma outra entidade que utiliza este serviço (cliente). No servidor, existe um repositório contendo pastas e arquivos dos usuários do ambiente, nos quais são compartilhados pelas threads. Alguns fatores importantes do compartilhamento são a consistência e a segurança das informações, uma vez que várias threads podem estar trabalhando juntamente.

8 5 Considerações Finais Este artigo apresentou alguns conceitos e a implementação de um sistema concorrente orientado a objeto. Pode-se observar que o uso de threads para a implementação torna a aplicação bem mais eficiente e mais rápida, pelo fato de existirem várias threads trabalhando em paralelo. Pode-se concluir a eficiência da linguagem Java para aplicações voltadas à confecção de ambientes de aprendizado colaborativo, por fornecer recursos que permitam a implementação de técnicas de colaboração. Outro aspecto positivo de uma aplicação construída em Java é o fato da mesma ser orientada a objetos, que proporciona benefícios como: a extensibilidade, reusabilidade, manutenção, entre outros. Além disso, pode-se verificar o poder da linguagem Java para os recursos de sockets (cliente/servidor), construção de múltiplas linhas de execução concorrência (threads) e acesso à banco de dados, devido já existirem várias classes e construtores implementados, o que acelera e facilita a implementação. Uma grande parte do uso da linguagem Java em aplicações concorrentes deve-se ao suporte para threads no nível da linguagem. Todos os programas Java consistem em pelo menos uma thread de controle, sendo fácil criar várias threads de controle no mesmo programa. Além de fornecer um conjunto de APIs para a criação e o gerenciamento de threads. A implementação das ferramentas do ambiente colaborativo usando as classes Threads separadas tem sido satisfatória com o intuito de torná-la mais robusta. Um dos problemas encontrados foi a comunicação dos processos, mais precisamente envio e recebimento de informações do servidor para as threads clientes. Este trabalho também serviu para consolidar e aprimorar os conceitos de programação concorrente vistos. Referências Bibliográficas [Arnold & Gosling 1997] Arnold, K., Gosling, J. Programando em Java, Tradução: Adriana de Almeida Prado Krauss, São Paulo: Makron Books, [Deitel & Deitel 2001] DEITEL, H. M.; DEITEL, P. J. Java como programar, Tradução: Edson Furnankiewicz, Porto Alegre: Bookman, [Horstman & Cornell 2001] Horstman C. S.; Cornell, G. CoreJava 2 Recursos Avançados. Tradução: João Eduardo N. Tortello Revisão Técnica: Álvaro R. Antunes. São Paulo: MAKRON Books, Vol. II, [Santana et al. 1997] Santana, R. H.; Santana, M. J.; Souza, M. A.; Souza, P. S. L.; Piekarski, A. E. T. Computação Paralela. Notas de Aula (no prelo), ICMC-USP, [Silberschatz et al. 2000] Silberschatz, A., Galin, P. and Gagne, G. Sistemas Operacionais: conceitos e aplicações, Tradução: Adriana Rieche, Rio de Janeiro: Campus, 2000.

9 [Tanenbaum 1995] Tanenbaum, A. S. Distributed operating Systems, New Jersey: Prentice-Hall, 1995.

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads Com o conceito de múltiplos threads (multithread) é possível

Leia mais

1.1. Definição do Problema

1.1. Definição do Problema 13 1 Introdução Uma das principais preocupações de área de engenharia de software diz respeito à reutilização [1]. Isso porque a reutilização no contexto de desenvolvimetno de software pode contribuir

Leia mais

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto; Módulo 7 UML Na disciplina de Estrutura de Sistemas de Informação, fizemos uma rápida passagem sobre a UML onde falamos da sua importância na modelagem dos sistemas de informação. Neste capítulo, nos aprofundaremos

Leia mais

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Sistema Operacional Implementação de Processo e Threads O mecanismo básico para a criação de processos no UNIX é a chamada de sistema Fork(). A Figura a seguir ilustra como que o processo e implementado.

Leia mais

Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads.

Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads. Threads Folha 5-1 Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads. Uma Thread é similar a um processo no sentido em que corresponde a um conjunto de instruções

Leia mais

Documento de Requisitos do Sistema SISFOTO Sistema de gerenciamento de eventos fotográficos Versão 1.0

Documento de Requisitos do Sistema SISFOTO Sistema de gerenciamento de eventos fotográficos Versão 1.0 SISFOTO Sistema de Gerenciamento de Eventos Fotográficos do Sistema SISFOTO Sistema de gerenciamento de eventos fotográficos Versão 1.0 Histórico de Alterações Data Versão Descrição Autor 17/10/2014 1.0

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel Programação Orientada a objetos Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do

Leia mais

Sistemas Operacionais I Parte VI Threads

Sistemas Operacionais I Parte VI Threads Sistemas Operacionais I Parte VI Threads Roteiro Introdução Benefícios Ciclo de Vida Estados Modelos Multithreading Modelo Muitos para Um Modelo Um para Um Modelo Muitos para Muitos Sistemas com Threads

Leia mais

Sistemas de Objetos DistribuídosRevisão Java e Java ORBs p.1/26

Sistemas de Objetos DistribuídosRevisão Java e Java ORBs p.1/26 Sistemas de Objetos Distribuídos Revisão Java e Java ORBs Francisco José da Silva e Silva Departamento de Informática da Universidade Federal do Maranhão Sistemas de Objetos DistribuídosRevisão Java e

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 9 Threads Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Threads Uma thread

Leia mais

Threads. O que é uma Thread? Paralelismo

Threads. O que é uma Thread? Paralelismo Threads em Java 1 O que é uma Thread? Paralelismo Threads Multi- threading é o mecanismo de concorrência suportado explicitamente pela linguagem Java. Os mecanismos de gerenciamento e sincronização de

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 5 Comunicação em Sistemas Distribuídos Sumário Comunicação

Leia mais

Execução concorrente em Java: threads. O que são Threads? Criação e métodos de Threads Sincronização Comunicação entre Threads

Execução concorrente em Java: threads. O que são Threads? Criação e métodos de Threads Sincronização Comunicação entre Threads Execução concorrente em Java: threads O que são Threads? Criação e métodos de Threads Sincronização Comunicação entre Threads Programação concorrente: introdução O mundo real funciona concorrentemente:

Leia mais

Prof a Andréa Schwertner Charão DELC/CT/UFSM

Prof a Andréa Schwertner Charão DELC/CT/UFSM Modelos de Computadores Paralelos Prof a Andréa Schwertner Charão DELC/CT/UFSM Sumário Modelos de computadores paralelos Classificações "acadêmicas" Tendências de mercado TOP500 Impacto na programação

Leia mais

Sistemas Distribuídos Capítulo 4 - Aula 5

Sistemas Distribuídos Capítulo 4 - Aula 5 Sistemas Distribuídos Capítulo 4 - Aula 5 Aula Passada Clusters de Servidores Migração de Código Comunicação (Cap. 4) Aula de hoje Chamada de Procedimento Remoto - RPC Fundamentos 1 Chamada de Procedimento

Leia mais

Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos

Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos Programação Concorrente com Thread Java Luiz Affonso Guedes Sistemas Distribuidos Definições Básicas Threads são sub-procesos no sistema operacional. É menos custoso gerenciar threads do que processos.

Leia mais

BANCO DE DADOS. Professor: André Dutton

BANCO DE DADOS. Professor: André Dutton BANCO DE DADOS Professor: André Dutton BASES TECNOLÓGICAS Conceito de bases de dados. Modelos conceituais de informações. Modelos de dados: relacional, de redes e hierárquicos. Introdução à teoria relacional:

Leia mais

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br Sistemas de Arquivos- Parte 2 Pontos importantes de um sistema de arquivos Vários problemas importantes devem

Leia mais

Programação Orientada a Objetos. Professor Leonardo Cabral - Larback

Programação Orientada a Objetos. Professor Leonardo Cabral - Larback Programação Orientada a Objetos Professor Leonardo Cabral - Larback Programação Orientada a Objetos O termo Programação Orientada a Objetos (POO) foi criado por Alan Kay (http://pt.wikipedia.org/wiki/alan_kay),

Leia mais

Entrada e Saída Transmissão Serial e Paralela

Entrada e Saída Transmissão Serial e Paralela Infra-Estrutura de Hardware Entrada e Saída Transmissão Serial e Paralela Prof. Edilberto Silva www.edilms.eti.br edilms@yahoo.com Sumário Introdução Transmissões Serial (síncrona e assíncrona) e Paralela

Leia mais

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

Introdução à Ciência da Informação Introdução à Ciência da Informação Prof. Edberto Ferneda Software 1 Software Níveis de Software Hardware Software Aplicativos Software Tipos de Software Softwares Aplicativos de Sistema (Utilitários) Finalidades

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Manipulando Atributos Podemos alterar ou acessar os valores guardados nos atributos de um objeto se tivermos a referência a esse objeto. Os atributos são acessados pelo nome. No

Leia mais

Algoritmos e Programação II

Algoritmos e Programação II Algoritmos e Programação II Agenda Desenvolver Software Objetos Classes Estudo de algumas Classes da API Estudo de algumas Classes da API Pacotes Criando nossa primeira classe Desenvolver SOFTWARE GAP

Leia mais

Utilização de threads em Java

Utilização de threads em Java Universidade Federal do Rio de Janeiro IM/DCC Utilização de threads em Java Prof. Austeclynio Pereira e-mail: austeclyniop@posgrad.nce.ufrj.br Ciclo de vida de uma thread nascimento start notify notifyall

Leia mais

Introdução a Banco de Dados. INTRODUÇÃO

Introdução a Banco de Dados. INTRODUÇÃO INTRODUÇÃO O termo banco de dados é bastante popular em diversas áreas de atuação. Com o aumento da utilização de computadores na manipulação de dados que envolvem diversas aplicações, os bancos de dados

Leia mais

INTEGRAÇÃO JAVA COM ARDUINO

INTEGRAÇÃO JAVA COM ARDUINO INTEGRAÇÃO JAVA COM ARDUINO Alessandro A. M. De Oliveira 3, Alexandre O. Zamberlan 3, Reiner F Perozzo 3, Rafael O. Gomes 1 ;Sergio R. H Righi 2,PecilcesP. Feltrin 2 RESUMO A integração de Linguagem de

Leia mais

5 - Qual é a principal vantagem de desenvolvimento de código por pares:

5 - Qual é a principal vantagem de desenvolvimento de código por pares: 1 - Quais são os atributos essenciais de um bom software: a) Ser baseado numa boa linguagem de programação b) Fácil manutenção, segurança, eficiência e aceitabilidade c) Fácil manutenção e simplicidade

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Herança Prof. Francisco de Assis S. Santos, Dr. São José, 2014. Herança em POO O conceito de herança torna mais rápido o desenvolvimento de softwares complexos Novas classes

Leia mais

Montadores e Compiladores

Montadores e Compiladores Montadores e Compiladores Prof. Idevar Gonçalves de Souza Júnior Conteúdo Programático Resumido Revisão da Arquitetura de Computadores Introdução a Teoria das Linguagens Compilação e Interpretação Análise

Leia mais

Padrões de Projeto. Factory Method

Padrões de Projeto. Factory Method Padrões de Projeto Padrões de Criação Factory Method Prof. Eduardo N F Zagari Prof. Ivan Granja Factory Method Também conhecido como Construtor Virtual Em muitas aplicações OO, um objeto cliente precisa

Leia mais

Herança. Prof. Leonardo Barreto Campos 1

Herança. Prof. Leonardo Barreto Campos 1 Herança Prof. Leonardo Barreto Campos 1 Sumário Introdução; Herança Simples; Tipos de Herança; Classe Abstrata; Conversão de Tipos entre Base e Derivada; Níveis de Herança; Herança Múltipla; Bibliografia;

Leia mais

Arquitetura de Computadores Sistemas Operacionais I

Arquitetura de Computadores Sistemas Operacionais I O que é um Sistema Operacional? Arquitetura de Computadores Sistemas Operacionais I Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4 componentes

Leia mais

Múltiplas Linhas de Execução Java (Threads)

Múltiplas Linhas de Execução Java (Threads) Múltiplas Linhas de Execução Java (Threads) SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas

Leia mais

Introdução aos Sistemas Operacionais

Introdução aos Sistemas Operacionais Introdução aos Sistemas Operacionais Prof. M.e Helber Wagner da Silva helber.silva@ifrn.edu.br Maio de 2014 Roteiro Introdução Estrutura e Funções do Sistema Operacional Sistemas Operacionais existentes

Leia mais

Passagens de Mensagens

Passagens de Mensagens Passagens de Mensagens Felipe A. Cavani Caio Scaramucci Orientador: Prof. Norian Marranghello 11/04/2002 1 Sumário 1 Introdução 2 2 Primitivas básicas de comunicação 2 2.1 Serviço de transporte.......................

Leia mais

Motivação Este trabalho apresenta o desenvolvimento do controle da interatividade num sistema para a área de computação gráfica, mais especificamente

Motivação Este trabalho apresenta o desenvolvimento do controle da interatividade num sistema para a área de computação gráfica, mais especificamente Viabilização da Análise de Interação em um Software Colaborativo para Modelagem de Objetos 3D Eduardo Barrére, Ana Luiza Dias e Claudio Esperança Motivação Este trabalho apresenta o desenvolvimento do

Leia mais

Processo de Desenvolvimento de Software

Processo de Desenvolvimento de Software Processo de Desenvolvimento de Software Programação Orientada a Objetos Prof. Francisco de Assis S. Santos, Dr. São José, 2015. Processo de Desenvolvimento de Software O desenvolvimento de software é uma

Leia mais

Fundamentos de Arquitetura e Organização de Computadores

Fundamentos de Arquitetura e Organização de Computadores Fundamentos de Arquitetura e Organização de Computadores Dois conceitos fundamentais no estudo dos sistemas de computação são o de Arquitetura e Organização de computadores. O termo arquitetura refere-se

Leia mais

Programação em JAVA. Subtítulo

Programação em JAVA. Subtítulo Programação em JAVA Subtítulo Sobre a APTECH A Aptech é uma instituição global, modelo em capacitação profissional, que dispõe de diversos cursos com objetivo de preparar seus alunos para carreiras em

Leia mais

NORMA TÉCNICA E PROCEDIMENTOS PARA REALIZAR ALTERAÇÕES NO BANCO DE DADOS CORPORATIVO

NORMA TÉCNICA E PROCEDIMENTOS PARA REALIZAR ALTERAÇÕES NO BANCO DE DADOS CORPORATIVO NORMA TÉCNICA E PROCEDIMENTOS PARA REALIZAR ALTERAÇÕES NO BANCO DE DADOS CORPORATIVO Referência: NT-AI.04.03.01 http://www.unesp.br/ai/pdf/nt-ai.04.03.01.pdf Data: 31/07/2000 STATUS: EM VIGOR A Assessoria

Leia mais

3 Informações para Coordenação da Execução de Testes

3 Informações para Coordenação da Execução de Testes Informações para Coordenação da Execução de Testes 32 3 Informações para Coordenação da Execução de Testes Diversas ferramentas oferecidas na literatura têm auxiliado na coordenação da execução dos testes

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

SIG. USANDO A TECNOLOGIA COMO SUPORTE Tecnologias de Apoio

SIG. USANDO A TECNOLOGIA COMO SUPORTE Tecnologias de Apoio SIG USANDO A TECNOLOGIA COMO SUPORTE Tecnologias de Apoio Os Sistemas de Informações e os Sistemas de Informações Gerenciais (SIG) podem ser manuais e eletrônicos. I parte SIGs eletrônicos Tecnologias

Leia mais

Relatório Técnico: Descrição do algoritmo para pesquisa automática dos egressos do curso de Ciência da Computação

Relatório Técnico: Descrição do algoritmo para pesquisa automática dos egressos do curso de Ciência da Computação Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Ciências da Computação Laboratório de Engenharia de Software Relatório Técnico: Descrição do algoritmo

Leia mais

EMENTA. Curso de Projetos Microcontrolados utilizando Linguagem C.

EMENTA. Curso de Projetos Microcontrolados utilizando Linguagem C. EMENTA Curso de Projetos Microcontrolados utilizando Linguagem C. Descrição dos Cursos A Hit Soluções Tecnológicas vem através deste documento apresentar a proposta de dois cursos de projetos baseados

Leia mais

Utilizando Threads em Java

Utilizando Threads em Java Utilizando Threads em Java CCComp - DCE - UESB Resumo sobre os threads em Java Estrutura Geral das Implementações CCComp - DCE - UESB class ProcessoA extends Thread {... }//fim da classe ProcessoA class

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Interconexão do Computador Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes -

Leia mais

ESTUDO COMPARATIVO ENTRE A FERRAMENTA SMS- (SUPERVISOR MONITOR SCHEDULER) E A FERRAMENTA ECFLOW (FERRAMENTA DE WORK- FLOW) NA OPERAÇÃO DO CPTEC

ESTUDO COMPARATIVO ENTRE A FERRAMENTA SMS- (SUPERVISOR MONITOR SCHEDULER) E A FERRAMENTA ECFLOW (FERRAMENTA DE WORK- FLOW) NA OPERAÇÃO DO CPTEC ESTUDO COMPARATIVO ENTRE A FERRAMENTA SMS- (SUPERVISOR MONITOR SCHEDULER) E A FERRAMENTA ECFLOW (FERRAMENTA DE WORK- FLOW) NA OPERAÇÃO DO CPTEC RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE)

Leia mais

OpenPDV: Sistema aberto para gerenciamento de restaurantes

OpenPDV: Sistema aberto para gerenciamento de restaurantes Universidade Federal de Santa Catarina Departamento de Informática e Estatística INE5638 Introdução a Projetos Orientador: José Eduardo de Lucca OpenPDV: Sistema aberto para gerenciamento de restaurantes

Leia mais

Interface gráfica em Java: Swing e SWT

Interface gráfica em Java: Swing e SWT Programação Orientada a Objetos Interface gráfica em Java: Swing e SWT UNIFEI 14/06/2012 Componentes gráficos em Java Os componentes gráficos em Java Componentes de desenho 2D e 3D Componentes de interface

Leia mais

Elementos básico de uma rede Samba - Local Master Browser

Elementos básico de uma rede Samba - Local Master Browser Servidor Samba Linux Samba é o protocolo responsável pela integração de máquinas Linux com Windows, permitindo assim a criação de redes mistas utilizando servidores Linux e clientes Windows. Samba, é uma

Leia mais

Introdução. Hardware (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação. joseana@computacao.ufcg.edu.

Introdução. Hardware (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação. joseana@computacao.ufcg.edu. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Introdução à Computação Hardware (Parte III) Prof. a Joseana Macêdo Fechine Régis de Araújo joseana@computacao.ufcg.edu.br Carga

Leia mais

Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP. Prof. Me. Sérgio Carlos Portari Júnior

Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP. Prof. Me. Sérgio Carlos Portari Júnior Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP Prof. Me. Sérgio Carlos Portari Júnior Conteúdo Programático Contextualizando: Aula anterior Camada Middleware Programar para SD

Leia mais

Produção de Vídeos Didáticos: Tábua de Galton

Produção de Vídeos Didáticos: Tábua de Galton UNICAMP - Universidade Estadual de Campinas; IFGW Instituto de Física Gleb Watagin; Relatório Final de F 809, Instrumentação para ensino: Produção de Vídeos Didáticos: Tábua de Galton André de Ávila Acquaviva,

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO

PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO PROGRAMAÇÃO ORIENTADA A OBJETO INTRODUÇÃO A Programação Orientada ao Objeto deu seus primeiros passos ainda na década de 70. A sua origem vem da linguagem Simula (Simula Language) e como o nome indica

Leia mais

MULTITHREADING. Prof.: Michele Nasu Tomiyama Bucci

MULTITHREADING. Prof.: Michele Nasu Tomiyama Bucci MULTITHREADING Prof.: Michele Nasu Tomiyama Bucci Introdução O corpo humano realiza uma grande variedade de operações paralelamente, ou concorrentemente. Os computadores também realiza operações concorrentemente.

Leia mais

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação Processamento Paralelo Threads Aluno: Wagner Palacio Turma: 3º período Professor: Giordano Cabral Recife, 29 de maio de 2012

Leia mais

HouseManager - Projeto de Automação Residencial

HouseManager - Projeto de Automação Residencial HouseManager - Projeto de Automação Residencial Rodrigo de Moraes UNISINOS Universidade do Vale dos Sinos Av. Unisinos, 950, São Leopoldo, RS, Brasil digao@sinos.net Resumo Neste artigo será apresentada

Leia mais

Programação de Computadores I. Linguagem C Função

Programação de Computadores I. Linguagem C Função Linguagem C Função Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 07 Função 1 Conceitos As técnicas de programação dizem que, sempre que possível, evite códigos extensos, separando o mesmo em funções,

Leia mais

Tipos de Software e Ambientes de Processamento

Tipos de Software e Ambientes de Processamento Universidade São Judas Tadeu Prof. André Luis Ribeiro Prof. Jorge Luis Pirolla Introdução à Computação Tipos de Software e Ambientes de Processamento Tópicos Formas de Processamento de Dados Sistema de

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 10 Threads Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno

Leia mais

FUNDAMENTOS DE SISTEMAS OPERACIONAIS MÓDULO 4

FUNDAMENTOS DE SISTEMAS OPERACIONAIS MÓDULO 4 FUNDAMENTOS DE SISTEMAS OPERACIONAIS MÓDULO 4 Índice 1. Evolução dos Sistemas Operacionais Continuação...3 1.1. Década de 70... 3 1.2. Década de 80... 4 2 1. EVOLUÇÃO DOS SISTEMAS OPERACIONAIS CONTINUAÇÃO

Leia mais

UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO REDE DE COMPUTADORES II Prof. Dr. Adenauer C.

UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO REDE DE COMPUTADORES II Prof. Dr. Adenauer C. UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO REDE DE COMPUTADORES II Prof. Dr. Adenauer C. Yamin MRTG Bruno Andretti Duarte¹

Leia mais

LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS.

LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS. INTRODUÇÃO O processo de engenharia de software define quem faz o quê, quando e como para atingir um determinado objetivo. Neste trabalho, iremos dissertar sobre o Rational Unified Process, ou RUP, que

Leia mais

Apostila de GSO Gestão de Sistemas Operacionais I

Apostila de GSO Gestão de Sistemas Operacionais I Apostila de GSO Gestão de Operacionais I Prof. Jones Artur Gonçalves / Wendell Santos 1 Arquitetura de Operacionais 1. Histórico... 3 2. Sistema Operacional... 4 3. Tipos de Operacionais... 5 2.1 Monoprogramáveis...

Leia mais

Estudo de Viabilidade

Estudo de Viabilidade UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA Estudo de Viabilidade Sistema de Otimização da Análise de Laudos RECIFE, 20 DE JANEIRO DE 2013 UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA

Leia mais

Guia para Modelagem de Casos de Uso Metodologia CELEPAR

Guia para Modelagem de Casos de Uso Metodologia CELEPAR Guia para Modelagem de Casos de Uso Metodologia CELEPAR Agosto 2009 Sumário de Informações do Documento Documento: guiamodelagemcasosuso.odt Número de páginas: 14 Versão Data Mudanças Autor 1.0 25/04/07

Leia mais

Arquitetura TCP/IP. Apresentado por: Ricardo Quintão

Arquitetura TCP/IP. Apresentado por: Ricardo Quintão Arquitetura TCP/IP Apresentado por: Ricardo Quintão Roteiro Conexões Inter-redes Serviço Universal Rede Virtual (inter-rede ou internet) Protocolos para ligação inter-redes (TCP/IP) Divisão em camadas

Leia mais

TUTORIAL SOBRE O GOOGLE DOCS

TUTORIAL SOBRE O GOOGLE DOCS TUTORIAL SOBRE O GOOGLE DOCS O Google Docs é um recurso do Google que funciona como um HD virtual permitindo criar e compartilhar trabalhos on-line. Ele é uma ferramenta com características da nova tendência

Leia mais

Implementação de uma Ferramenta de Edição de Texto Colaborativa

Implementação de uma Ferramenta de Edição de Texto Colaborativa Implementação de uma Ferramenta de Edição de Texto Colaborativa Paulo Roberto Gonçalves, Thereza Patrícia P. Padilha Curso de Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP) Palmas,

Leia mais

UTILIZAÇÃO DE ARQUITETURA EM CAMADAS BASEADA NO MODEL VIEW CONTROLLER, EM APLICAÇÕES WEB

UTILIZAÇÃO DE ARQUITETURA EM CAMADAS BASEADA NO MODEL VIEW CONTROLLER, EM APLICAÇÕES WEB UTILIZAÇÃO DE ARQUITETURA EM CAMADAS BASEADA NO MODEL VIEW CONTROLLER, EM APLICAÇÕES WEB Viviani Priscila Piloni VILHEGAS 1 RESUMO: Este trabalho procura mostrar a importância da utilização de um modelo

Leia mais

Nº horas ESTRATÉGIAS RECURSOS AVALIAÇÃO

Nº horas ESTRATÉGIAS RECURSOS AVALIAÇÃO ANO: 10.º Curso Profissional Técnico de Informática de Gestão Disciplina: Linguagens de Programação ANO LECTIVO: 2008/2009 p.1/13 Módulo 1 Algoritmia 1 - Introdução à Lógica de Programação Lógica Sequência

Leia mais

T écnicas de Obtenção de Requisitos

T écnicas de Obtenção de Requisitos T écnicas de Obtenção de Requisitos Profa. Rosângela Penteado DC UFSCar rosangel@dc.ufscar.br 1 Roteiro Obtenção de Requisitos T écnicas de levantamento de requisitos Entrevistas Questionários Casos de

Leia mais

Guia de desenvolvimento de um aplicativo para o sistema operacional Android

Guia de desenvolvimento de um aplicativo para o sistema operacional Android Guia de desenvolvimento de um aplicativo para o sistema operacional Android Introdução Este documento será voltado para o desenvolvimento de um aplicativo na plataforma Android (sistema operacional do

Leia mais

INE 5323 Banco de Dados I

INE 5323 Banco de Dados I UFSC-CTC-INE Curso de Ciências de Computação INE 5323 Banco de Dados I Ronaldo S. Mello 2006/1 http://www.inf.ufsc.br/~ronaldo/ine5323 Horário Atendimento: Quintas-feiras, das 17h30 às 19h Programa da

Leia mais

Computadores. Redes de. redes de computadores. Exemplo: Grécia antiga. O problema básico de. Antonio Alfredo Ferreira Loureiro. Exemplo: Grécia antiga

Computadores. Redes de. redes de computadores. Exemplo: Grécia antiga. O problema básico de. Antonio Alfredo Ferreira Loureiro. Exemplo: Grécia antiga Redes de Computadores Antonio Alfredo Ferreira Loureiro Departamento de Ciência da Computação Universidade Federal de Minas Gerais Exemplo: Grécia antiga Peça Agamemnon, escrita por Aeschylus em 458 A.C.,

Leia mais

O SOFTWARE LIVRE COMO FERRAMENTA DE ENSINO

O SOFTWARE LIVRE COMO FERRAMENTA DE ENSINO 1 O SOFTWARE LIVRE COMO FERRAMENTA DE ENSINO Denise Ester Fonseca de Brito Jefferson Willian Gouveia Monteiro Mariana Vieira Siqueira de Arantes Mateus Palhares Cordeiro Paulo Alfredo Frota Rezeck Thiago

Leia mais

Maratona de Programação - Dicas Para Iniciantes

Maratona de Programação - Dicas Para Iniciantes Sumário Maratona de Programação - Dicas Para Iniciantes Prof. Josué Pereira de Castro Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Informática Cascavel, 2009 Sumário Sumário 1 Conceitos

Leia mais

Tipos de Banco de Dados - Apresentação

Tipos de Banco de Dados - Apresentação Tipos de Banco de Dados - Apresentação Assunto: Tipo de Banco de Dados Professor: Altair Martins de Souza Disciplina: Banco de Dados Colégio Padre Carmelo Perrone 2 Ano - 2015 Tipos de Banco de Dados -

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 6 Slide 1 Objetivos Descrever requisitos funcionais e não funcionais Explicar como os requisitos de software podem

Leia mais

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Configurando o Network Address Translation: Introdução

Configurando o Network Address Translation: Introdução Configurando o Network Address Translation: Introdução Índice Introdução Pré-requisitos Requisitos Componentes Usados Convenções Etapas de Início Rápido para Configurar e Implementar o NAT Definindo Interfaces

Leia mais

Linguagens de Programação:

Linguagens de Programação: Capítulo I : Noções Gerais 11 Linguagens de Programação: Como comunicar com o computador? Linguagem Máquina: Conjunto básico de instruções, em código binário, características de cada computador, correspondentes

Leia mais

Gabriel de Oliveira Ramos Roland Teodorowitsch - Orientador

Gabriel de Oliveira Ramos Roland Teodorowitsch - Orientador THREADS EM JAVA Gabriel de Oliveira Ramos Roland Teodorowitsch - Orientador Universidade Luterana do Brasil (Ulbra) Curso de Ciência da Computação Campus

Leia mais

Threads. Leonardo Gresta Paulino Murta

Threads. Leonardo Gresta Paulino Murta Threads Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aula de hoje Estudaremos a execução em paralelo de programas em Java por meio de Threads Leonardo Murta Threads 2 Por que usar Threads? Threads

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

ANÁLISE DE FALHAS DE COMPUTADORES

ANÁLISE DE FALHAS DE COMPUTADORES UNIVERSIDADE FEDERAL DO PARANÁ SETOR DE CIÊNCIAS EXATAS DANIELE APARECIDA DE OLIVEIRA VERANICE POLATO ANÁLISE DE FALHAS DE COMPUTADORES LINHA DE PESQUISA: Projeto de Pesquisa apresentado à disciplina de

Leia mais

Introdução. Software Básico Aula 3. Prof. Dr. Rogério Vargas.

Introdução. Software Básico Aula 3. Prof. Dr. Rogério Vargas. Introdução Software Básico Aula 3 Prof. Dr. Rogério Vargas http://rogerio.in Provocação Você já se perguntou como é que os programas que você escreve são traduzidos em instruções executáveis pelas estruturas

Leia mais

MANUAL SERVIÇOS E AGENDAMENTO

MANUAL SERVIÇOS E AGENDAMENTO MANUAL SERVIÇOS E AGENDAMENTO Versão 1.0 Novembro 2013 ÍNDICE 1 SERVIÇOS NO AUTOSYSTEM...3 2 CRIAR SERVIÇO E AGENDAR TAREFA...3 2.1 Criar Serviço e Agendar Tarefas no Ubuntu-LINUX...4 2.1.1 Como Usar o

Leia mais

Rede Local - Administração Gestão de Objetos da Rede: Active Directory

Rede Local - Administração Gestão de Objetos da Rede: Active Directory Rede Local - Administração Gestão de Objetos da Rede: Active Directory Formador: Miguel Neto (migasn@gmailcom) Covilhã - Novembro 10, 2015 Internet VS Intranet Miguel Neto Rede Local - Administração Novembro

Leia mais

USANDO O PYTHON PARA ESCREVER PLUG-INS PARA O GIMP

USANDO O PYTHON PARA ESCREVER PLUG-INS PARA O GIMP QUINTO RELATÓRIO DE ESTUDOS 01 DE FEVEREIRO DE 2012 Aluno: Francisco Gerson Amorim de Meneses Orientadores: Helena C. G. Leitão / Marcos Lage Tema sugerido: Comparação de Técnicas para Segmentação de Imagens

Leia mais

SIMULADO A - COBIT 5 PORTUGUES

SIMULADO A - COBIT 5 PORTUGUES SIMULADO A - COBIT 5 PORTUGUES 1. Que atributo está associado a um processo já estabelecido? a. Definição do Processo b. Medida do Processo c. Otimização do Processo d. Gerenciamento de Desempenho 2. Que

Leia mais

Gerenciamento de Memória Minix 3.1.7

Gerenciamento de Memória Minix 3.1.7 Gerenciamento de Memória Minix 3.1.7 Prof. Alexandre Beletti Introdução Não utiliza paginação Não faz swapping (está disponível, mas inativo) PM = gerencia processos e memória Chamadas de sistemas: Memória

Leia mais

6 CONCEPÇÃO BÁSICA DO SISTEMA DE APOIO À DECISÃO

6 CONCEPÇÃO BÁSICA DO SISTEMA DE APOIO À DECISÃO 78 6 CONCEPÇÃO BÁSICA DO SISTEMA DE APOIO À DECISÃO Neste capítulo serão apresentados: o sistema proposto, o procedimento de solução para utilização do sistema e a interface gráfica, onde é ilustrada a

Leia mais

MANUAL DO SISTEMA TRT-5 PRESTADOR MÉDICO

MANUAL DO SISTEMA TRT-5 PRESTADOR MÉDICO Tribunal Regional do Trabalho 5ª Região MANUAL DO SISTEMA TRT-5 PRESTADOR MÉDICO Manual do Sistema TRT5-Saúde para Prestador Médico Baseado no modelo fornecido pelo TST-SAÙDE Versão 1.0 7/outubro/2014

Leia mais

[Magee 1999] Concurrency State Models and Java Programs, Jeff Magee, Jeff Kramer, John Wiley 1999.

[Magee 1999] Concurrency State Models and Java Programs, Jeff Magee, Jeff Kramer, John Wiley 1999. Cap. IV - Programação Concorrente [Magee 1999] Concurrency State Models and Java Programs, Jeff Magee, Jeff Kramer, John Wiley 1999. [Gosling] The Java Language Specification James Gosling, Bill Joy and

Leia mais