2. Vantagens da programação concorrente. 2.1 Divisão de trabalho
|
|
- Micaela Isabella Paiva Braga
- 8 Há anos
- Visualizações:
Transcrição
1 Vantagens e desvantagens do paradigma da programação concorrente: análise de hardware e software Gabriel Giuliani Baú 1 1 Curso de Sistemas de Informação - Universidade Luterana do Brasil - ULBRA BR 287, Km 252, Trevo Maneco Pedroso - Boca do Monte - Cx. Postal CEP Santa Maria/RS gabriel.ulbra@gmail.com RESUMO Este artigo pretende mostrar as principais vantagens do uso do paradigma da programação concorrente no desenvolvimento de software e as desvantagens que levam à sua baixa utilização atualmente na comunidade dos desenvolvedores, que são a dificuldade de implementação e controle do código e a baixa disponibilidade de hardware necessário para um bom aproveitamento do paradigma. São mostrados exemplos de casos em que há um grande benefício no uso desse paradigma, e também exemplos de casos em que há desafios para superar ao utilizar esse paradigma. ABSTRACT This article intends to show the main advantages in using the concurrent programming paradigm in developing software and the main disadvantages that lead to it s low utilization in the developers community wich are the implementation difficulty and code control and the low necessary hardware availability for a good use of the paradigm. Case examples are shown where there is a great benefit in the use of this paradigms, as well as case examples where there are challenges to surpass to use this paradigm. 1. Introdução A programação concorrente é aquela que, divide a tarefa que um software, ou parte dele, necessita completar, em partes. O principal objetivo dessa divisão é a finalização em menor tempo das diversas tarefas ao utilizar de forma mais eficiente os recursos de hardware disponíveis. Não se deve confundir a programação concorrente com a computação paralela, pois apesar de serem relacionadas, a primeira possui foco na iteração entre as tarefas. Com o advento dos processadores com dois ou mais núcleos (cores) há um incentivo cada vez maior dos fabricantes de hardware para o desenvolvimento de softwares que utilizam à programação concorrente. Porém o número de softwares
2 desenvolvidos nesse paradigma é muito baixo e cresce pouco em comparação ao estruturado. As principais empresas desenvolvedoras de software estão adequando seus produtos a essa nova realidade do hardware, e tentando tirar proveito do paradigma, isso pode ser percebido nas comparações e testes realizados com as novas versões dos produtos dessas empresas, houve uma aceleração em aplicações de tratamento e edição de fotografias digitais, compactação e edição de filmes, até mesmo a compactação de arquivos está se beneficiando disso. Mas então porque mencionar a baixa utilização do paradigma? Na verdade as grandes empresas possuem orçamentos suficientes para fornecer o treinamento e as ferramentas necessárias aos desenvolvedores para que utilizem a concorrência nos programas. Já uma pequena empresa, que sobrevive do desenvolvimento de um número menor de produtos, não consegue custear o treinamento dos desenvolvedores e um possível e provável atraso no desenvolvimento de algum produto pela dificuldade que existe na manutenção e depuração do código. Ela precisa estar em dia com todos os projetos, pois corre o risco de não suportar a perda de clientes e lucros fundamentais para o seu bom andamento. Neste artigo mostro testes analisando a performance de softwares que utilizam concorrência, exemplos básicos de código e que a dificuldade no avanço do uso desse paradigma em larga escala se deve a dois principais problemas que são a manutenção e depuração do código. 2. Vantagens da programação concorrente 2.1 Divisão de trabalho Existem tarefas dentro do código de certos softwares que podem ser dividas entre dois ou mais processadores de um mesmo computador, um bom exemplo é a utilização dos novos processadores de núcleo duplo executando um programa reprodutor de filmes. Enquanto a imagem é processada em um deles, o som pode ser processado em outro. Isso traz um grande benefício, a divisão de trabalho, onde pode-se notar um menor uso da capacidade de cada um, o que possibilita a execução de outras tarefas do sistema operacional e até mesmo outros softwares que utilizem dois processadores porém não consumindo 100% deles. 2
3 Figura 1 Gerenciador de Tarefas do Windows XP Processamento de um filme, áudio em um núcleo, vídeo em outro. 2.2 Aumento de desempenho em uma tarefa importante Outras aplicações podem utilizar dois núcleos para diminuir o tempo de execução de certa tarefa considerada importante e que mereça ser realizada em menor tempo. Um bom exemplo é a compactação de um arquivo, pode-se obter em um cenário ideal, uma diminuição de 50% no tempo necessário para a compactação de um arquivo. A utilização dos dois núcleos será máxima e é possível que as tarefas menos importantes do sistema operacional e os outros programas que estavam em execução sofram uma queda de desempenho. [Citação] - FIGURA Além disso, quando temos um processador de núcleo único, as diversas tarefas que estão sendo executadas muitas vezes sem a intervenção do usuário, como carregamento e interpretação de drivers do sistema operacional, serviços de aplicativos e requisições de conexão de sites da internet podem consumir um tempo de processador precioso, impedindo um bom desempenho da tarefa principal para o usuário. Se utilizarmos um processador de núcleo duplo e se o sistema operacional, seus drivers e serviços de aplicativos forem programados utilizando o paradigma concorrente, pode-se utilizar apenas um dos núcleos para essas tarefas, enquanto o outro continua livre para processar a aplicação principal com um desempenho superior. 3
4 Figura 2 Gerenciador de tarefas Windows XP Uso total de todos os núcleos para o processamento de uma imagem tridimensional no menor tempo possível. 4
5 Figura 3 Software alternando a porcentagem de uso dos núcleos conforme os threads vão sendo iniciados ou finalizados. 3. Desvantagens da programação concorrente 3.1 Dificuldade de programação tratamento de threads Ao utilizar o paradigma concorrente, o programador poderá utilizar vários recursos, o mais conhecido são os threads (processos leves), que dividem o trabalho que necessita ser realizado em duas ou mais partes. Dessa forma o processador não necessita aguardar o término de uma instrução para iniciar outra como ocorre no paradigma estruturado clássico, pode-se iniciar no mínimo duas tarefas simultaneamente quando utilizamos um processador de núcleo duplo. Mas para a utilização desses threads é estritamente necessário um controle rigoroso dos componentes utilizados por ela, pois como estarão sendo executados dois ou mais processos que pertencem a uma mesma aplicação, corremos o risco de um comando de um thread requisitar acesso a uma região da memória que já está utilizada por outra. Isso causaria no pior caso uma interrupção repentina na execução do programa, podendo levar à perda de informações importantes contidas na memória de execução que ainda não haviam sido gravadas em um lugar definitivo. O grande empecilho na adoção da programação concorrente está no excesso de esforço necessário por parte do programador para acompanhar e controlar as modificações ou acessos que esses threads fazem ao longo do programa. Um método comum para o controle dos threads, é a Sincronização Condicional. 5
6 3.1.1 Sincronização Condicional Para que um thread não interfira em outro, usa-se dois tipos de sinal, o WAIT (espere) e o NOTIFY (sinal para prosseguir). Supondo uma situação onde dois threads possuam trecho de código que instrui para acessar uma mesma área de memória, o primeiro thread teria de emitir o sinal WAIT para a segunda, e assim que realizasse todas as operações necessárias com aquela área da memória, enviaria o NOTIFY para o segundo thread iniciar seu acesso. Isso seria a situação ideal. Porém não é assim que ocorre em algumas implementações do UNIX.² Dependendo da implementação pode haver uma perda de sinal entre os threads causando a não-execução de determinada tarefa por uma das threads, impactando todo o andamento da aplicação. Figura 3 Ilustração dos sinais de controle 3.2 Baixo suporte de hardware Os fabricantes de processadores para computadores pessoais estão lançando muitos modelos de núcleo duplo e até quádruplo no mercado atual. Mas isso não significa que haja uma grande demanda por eles ou que as pessoas estejam trocando todos os seus computadores por esses. Muitos desktops e notebooks são ainda vendidos com apenas um núcleo de processamento, pois os preços dos processadores de núcleo duplo são altos demais. E ainda não justificam a compra, pois os usuários finais dificilmente utilizam todo o potencial que eles proporcionam. Para utilizar um editor de texto, uma planilha eletrônica, escutar música e navegar na internet, pode-se utilizar um processador de apenas um núcleo sem maiores problemas. E isso deve permanecer assim por um bom tempo, pois até mesmo os novos sistemas operacionais que prometiam exigir tanto dos computadores que poderiam forçar o usuário a substituir o seu por um mais atualizado, não mostraram tanta exigência, houve um aumento no consumo de memória, mas nada proporcional ao aumento de utilização de capacidade de processamento. Sem hardware para utilizar o potencial dos softwares, fica mais difícil ainda a adoção da programação concorrente, já que não há uma demanda global. Essa demanda só deve realmente surgir quando novas tecnologias como o HD-DVD, Blue-Ray, e HDTV forem amplamente distribuídas até mesmo nos países em desenvolvimento. Esses padrões de multimídia utilizam muitos recursos de processamento, e são uma boa aplicação para o paradigma. 6
7 Figura 4 Gasto com processadores Single Core (Um núcleo) e Multicore (Vários núcleos) em 2005 e 2006 para uso em servidores A figura acima apresenta dados interessantes quanto à adoção da tecnologia de vários núcleos, percebemos que nos anos de 2005 e 2006 houve um rápido crescimento nas vendas de processadores de vários núcleos para servidores que utilizam o sistema operacional Unix, mas um crescimento não consistente nas outras plataformas. Se esse cenário se apresenta em um terreno onde os programas desenvolvidos com a concorrência como foco, não é animador, o que pensar do mercado global para o usuário final? 4.Conclusão Não existe a base de hardware instalada necessária hoje para alavancar o desenvolvimento em larga escala de sistemas concorrentes. Claro que é possível o desenvolvimento de software em paradigma concorrente para um processador com apenas um núcleo, porém não é aí que o paradigma é mais bem utilizado. Além disso, é necessário um maior grau de conhecimento e treinamento do desenvolvedor para chegar a bons resultados sem problemas de controle dos threads. As linguagens de programação oferecem bibliotecas e compiladores para o desenvolvimento, porém não há grande interesse na mudança de paradigma, ainda é difícil hoje encontrar pessoas que deixem as facilidades do paradigma estruturado. A programação concorrente exige tempo, investimento em treinamento, depuração e testes maiores, pois existem mais situações a prever e maiores possibilidades de erros ou conflitos nas aplicações devido à necessidade de sincronia perfeita entre os threads. Além disso, não há uma disseminação em larga escala de processadores de vários núcleos, a grande maioria dos computadores do mundo utiliza apenas um núcleo de processamento. Isso também desmotiva o desenvolvedor a mudar de paradigma, pois seu produto não será utilizado da maneira que foi projetada, ou não terá o mesmo desempenho. 7
8 Referências - URLs 2 Silva, Dilme Menezes (1999) Introdução à Programação Concorrente para a Internet Disponível em: Bits and pieces (mostly Lisp-related) that I collect from the ether. Acesso em 18 Jun Software in the TLP Era Acesso em 18 Jun Curso de Programação Concorrente. Acesso em 18 Jun Concurrent Programming. Acesso em 17 Jun Wikipedia - Concurrent computing. Acesso em 17 Jun Intel Ignites Quad-Core Era - Quad-Core Processors Bring Higher Performance and Lower Cost to Mainstream Computing Matthew Eastwood Kenneth Cayton, Abril Acesso em 18 Jun 2007 ftp://ftp.aw.com/cseng/authors/finkel/apld/finkel07.pdf - Concurrent Programming - Acesso em 18 Jun The Joys of Concurrent Programming Acesso em 16 Jun A Logic for Concurrent Programming: Safety Acesso em 16 Jun
Comparativo de desempenho do Pervasive PSQL v11
Comparativo de desempenho do Pervasive PSQL v11 Um artigo Pervasive PSQL Setembro de 2010 Conteúdo Resumo executivo... 3 O impacto das novas arquiteturas de hardware nos aplicativos... 3 O projeto do Pervasive
Leia maisTecnologia PCI express. Introdução. Tecnologia PCI Express
Tecnologia PCI express Introdução O desenvolvimento de computadores cada vez mais rápidos e eficientes é uma necessidade constante. No que se refere ao segmento de computadores pessoais, essa necessidade
Leia maisMontagem e Manutenção. Luís Guilherme A. Pontes
Montagem e Manutenção Luís Guilherme A. Pontes Introdução Qual é a importância da Montagem e Manutenção de Computadores? Sistema Binário Sistema Binário Existem duas maneiras de se trabalhar e armazenar
Leia maisSistemas Distribuídos
Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor
Leia maisEAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS
EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS Relatório Nº 03/2013 Porto Alegre, 22 de Agosto de 2013. ANÁLISE DE SOLUÇÕES: # RAID 1: O que é: RAID-1 é o nível de RAID que implementa o espelhamento
Leia mais6 Quarta parte logística - Quarterização
87 6 Conclusão A concorrência aumentou muito nos últimos anos e com isso os clientes estão recebendo produtos com melhor qualidade e um nível de serviço melhor. As empresas precisam, cada vez mais, melhorar
Leia maisItinerários de Ônibus Relatório Final
CENTRO UNIVERSITÁRIO SENAC Itinerários de Ônibus Relatório Final Grupo 5 Caio Roque Daniel Nunes Elise Roese José Caneiro Marcos Grignani São Paulo Junho de 2007 1 ÍNDICE 1. Introdução... 3 2. Desenvolvimento...
Leia maisComputação em Nuvem. Alunos: Allan e Clayton
Computação em Nuvem Alunos: Allan e Clayton 1 - Introdução 2 - Como Funciona? 3 - Sistemas Operacionais na Nuvem 4 - Empresas e a Computação em Nuvem 5 - Segurança da Informação na Nuvem 6 - Dicas de Segurança
Leia maisEntenda as vantagens dos chips de quatro núcleos
Entenda as vantagens dos chips de quatro núcleos Novos processadores começam a aparecer em celulares e tablets Nos próximos meses começam a chegar ao Brasil os primeiros smartphones e tablets com processadores
Leia maisContil Informática. Curso Técnico em Informática Processadores Core
Contil Informática Curso Técnico em Informática Processadores Core Quais as diferenças entre os processadores Intel Core i3, i5 e i7? A tecnologia avançada na área de hardware possibilita um avanço desenfreado
Leia maisSIMCAP Simpósio de Computação Aplicada Cloud Computing
SIMCAP Simpósio de Computação Aplicada Cloud Computing A importância da nuvem na indústria dos games. Fábio Araújo Quintas / 2009027846 Micaely Bernardo Freire/2009036250 Ana Carolina M. Castro / 2008117299
Leia maishttp://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho
vi http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Administração de Redes de Computadores Resumo de Serviços em Rede Linux Controlador de Domínio Servidor DNS
Leia maisA história do Processadores O que é o processador Características dos Processadores Vários tipos de Processadores
A história do Processadores O que é o processador Características dos Processadores Vários tipos de Processadores As empresas mais antigas e ainda hoje no mercado que fabricam CPUs é a Intel, AMD e Cyrix.
Leia maisMÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS
MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS Quando falamos em arquitetura, normalmente utilizamos esse termo para referenciar a forma como os aplicativos computacionais são estruturados e os hardwares
Leia maisSistemas Operacionais
UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópico 33 e 34 Virtualização São Paulo 2009 Virtualização Ao falar em virtualização,
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias
Leia mais3. O NIVEL DA LINGUAGEM DE MONTAGEM
3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também
Leia maisIntrodução. O que é o Registro do Windows
Introdução O objetivo deste tutorial é mostrar alguns conceitos básicos para a manipulação do Registro do Windows. Desde já o InfoWester deixa claro que é necessário cautela. Qualquer precipitação pode
Leia maisIntrodução à Computação
Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os
Leia maisDESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3
DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil eduardorubay@gmail.com, bonetti@unipar.br Resumo.
Leia mais10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO
10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE
Leia maisUNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ALEXANDRE PRADO BARBOSA RELATÓRIO DE ESTÁGIO Ponta Grossa 2012 ALEXANDRE PRADO BARBOSA Relatório
Leia maisModelo Cascata ou Clássico
Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação
Leia mais22 DICAS para REDUZIR O TMA DO CALL CENTER. em Clínicas de Imagem
para REDUZIR O TMA DO CALL CENTER em Clínicas de Imagem Objetivo Um atendimento eficiente e personalizado é um dos principais fatores que o cliente leva em consideração ao iniciar um processo de fidelização
Leia maisESTUDO 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 maisVersão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174
Versão Liberada A Gerpos comunica a seus clientes que nova versão do aplicativo Gerpos Retaguarda, contendo as rotinas para emissão da Nota Fiscal Eletrônica, já está disponível. A atualização da versão
Leia maisSistemas Operativos. Threads. 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv)
Sistemas Operativos Threads 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv) Dos Processos para os Threads O conceito de thread foi introduzido na tentativa de
Leia maisAULA 06 CRIAÇÃO DE USUÁRIOS
AULA 06 CRIAÇÃO DE USUÁRIOS O Windows XP fornece contas de usuários de grupos (das quais os usuários podem ser membros). As contas de usuários são projetadas para indivíduos. As contas de grupos são projetadas
Leia maisConceitos Básicos de Rede. Um manual para empresas com até 75 computadores
Conceitos Básicos de Rede Um manual para empresas com até 75 computadores 1 Conceitos Básicos de Rede Conceitos Básicos de Rede... 1 A Função de Uma Rede... 1 Introdução às Redes... 2 Mais Conceitos Básicos
Leia maisIntrodução ao Modelos de Duas Camadas Cliente Servidor
Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos
Leia maisCurso de Instalação e Gestão de Redes Informáticas
ESCOLA PROFISSIONAL VASCONCELLOS LEBRE Curso de Instalação e Gestão de Redes Informáticas PROCESSADORES DE 64 BITS X PROCESSADORES DE 32 BITS José Vitor Nogueira Santos FT2-0749 Mealhada, 2009 Introdução
Leia maisPROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às
Leia maisTRABALHO COM GRANDES MONTAGENS
Texto Técnico 005/2013 TRABALHO COM GRANDES MONTAGENS Parte 05 0 Vamos finalizar o tema Trabalho com Grandes Montagens apresentando os melhores recursos e configurações de hardware para otimizar a abertura
Leia maisSistemas Distribuídos
Sistemas Distribuídos Software em Sistemas Distribuídos Aplicativo ou Sistema Operacional Sincronismo Interação Controles Um sistema operacional moderno provê dois serviços fundamentais para o usuário
Leia maisAUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0
AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento
Leia maisINSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P.
INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P. Centro de Emprego e Formação Profissional da Guarda Curso: Técnico de Informática Sistemas (EFA-S4A)-NS Trabalho Realizado Por: Igor_Saraiva nº 7 Com
Leia maisGESTÃO DE SISTEMAS OPERACIONAIS II
GESTÃO DE SISTEMAS OPERACIONAIS II Servidores Definição Servidores História Servidores Tipos Servidores Hardware Servidores Software Evolução do Windows Server Windows Server 2003 Introdução Windows Server
Leia maisPROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -ARQUITETURAS DE APLICAÇÃO MÓVEL. Prof. Angelo Augusto Frozza, M.Sc. http://about.
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -ARQUITETURAS DE APLICAÇÃO MÓVEL Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução Cliente-Servidor Cliente Servidor Tipos de conexão
Leia maisESTUDO DE VIABILIDADE. Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos
ESTUDO DE VIABILIDADE Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos Objetivos O que é um estudo de viabilidade? O que estudar e concluir? Benefícios e custos Análise de Custo/Benefício
Leia maisPré-requisitos para Instalação Física e Lógica do SISLOC
Pré-requisitos para Instalação Física e Lógica do SISLOC Sumário Pré-Requisitos de Instalação Física e Lógica do SISLOC...3 Servidores de Dados...3 Servidores de Aplicação (Terminal Service)...3 Estações
Leia maisProcessos e Threads (partes I e II)
Processos e Threads (partes I e II) 1) O que é um processo? É qualquer aplicação executada no processador. Exe: Bloco de notas, ler um dado de um disco, mostrar um texto na tela. Um processo é um programa
Leia maisEDITORES DE TEXTO Capítulo 1: Avaliação técnica e econômica dos principais editores de texto do mercado.
Nome: Nº Série: EDITORES DE TEXTO Capítulo 1: Avaliação técnica e econômica dos principais editores de texto do mercado. Habilidades: Pesquisar novas ferramentas e aplicativos de informática para a área
Leia maisPerícia forense computacional aplicada a dispositivos de armazenamento e smartphones android
Perícia forense computacional aplicada a dispositivos de armazenamento e smartphones android Raphael Pinheiro Afonso 1 ; Elvio Gilberto da Silva 1 ; Patrick Pedreira Silva 1 ; Henrique Pachioni Martins
Leia maisMetodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi
Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia
Leia maisMÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que
Leia maisPré-requisitos para Instalação Física e Lógica do Sisloc
Pré-requisitos para Instalação Física e Lógica do Sisloc Sumário: 1. Pré-requisitos de instalação física e lógica do Sisloc... 3 Servidores de Dados... 3 Servidores de Aplicação (Terminal Service)... 3
Leia maisVoIP. Voice Over IP. lmedeiros@othos.com.br
VoIP Voice Over IP lmedeiros@othos.com.br Índice O que Significa? Como funciona? Porque utilizar? Equipamentos VoIP Desvantagens Provedores VoIP Conclusão O que significa? VoIP é uma tecnologia que usa
Leia maisSistema Operacional Correção - Exercício de Revisão
Prof. Kleber Rovai 1º TSI 22/03/2012 Sistema Operacional Correção - Exercício de Revisão 1. Como seria utilizar um computador sem um sistema operacional? Quais são suas duas principais funções? Não funcionaria.
Leia maisAlarme Automotivo com mensagem para móvel utilizando Arduino
Alarme Automotivo com mensagem para móvel utilizando Arduino Maycon Cirilo dos Santos¹, Wyllian Fressatti¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil mayconsi2012@gmail.com, wyllian@unipar.br
Leia maisEstudo de Viabilidade
Estudo de Viabilidade PGE: Plastic Gestor Empresarial Especificação de Requisitos e Validação de Sistemas Recife, janeiro de 2013 Sumário 1. Motivação... 1 2. Introdução: O Problema Indentificado... 2
Leia maisJava. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME
Java para Dispositivos Móveis Desenvolvendo Aplicações com J2ME Thienne M. Johnson Novatec Capítulo 1 Introdução à computação móvel 1.1 Computação móvel definições Computação móvel está na moda. Operadoras
Leia maisSISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA
SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis
Leia maisAULA4: PROCESSADORES. Figura 1 Processadores Intel e AMD.
AULA4: PROCESSADORES 1. OBJETIVO Figura 1 Processadores Intel e AMD. Conhecer as funcionalidades dos processadores nos computadores trabalhando suas principais características e aplicações. 2. INTRODUÇÃO
Leia maisSoftware livre: solução ou problema? Autores: Prates, C. F., Souza, C. H. F. B., Castro, C. V., Vilela, D. R. G., Almeida, N. M
Software livre: solução ou problema? Autores: Prates, C. F., Souza, C. H. F. B., Castro, C. V., Vilela, D. R. G., Almeida, N. M Resumo Quando o tema da discussão são softwares livres, é possível perceber
Leia maisDespachante 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 maisBACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia
O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos
Leia maisAdministração de Sistemas de Informação Gerenciais
Administração de Sistemas de Informação Gerenciais UNIDADE III: Infraestrutura de Tecnologia da Informação Atualmente, a infraestrutura de TI é composta por cinco elementos principais: hardware, software,
Leia mais5.1 Exemplos de uso Mediante a instanciação de componentes específicos, o OiL pode ser configurado
5 Avaliação Decidimos avaliar a arquitetura de componentes para o OiL proposta neste trabalho em duas dimensões diferentes. Na primeira, demonstramos a capacidade de configuração do middleware com alguns
Leia maisGuilherme Pina Cardim. Relatório de Sistemas Operacionais I
Guilherme Pina Cardim Relatório de Sistemas Operacionais I Presidente Prudente - SP, Brasil 30 de junho de 2010 Guilherme Pina Cardim Relatório de Sistemas Operacionais I Pesquisa para descobrir as diferenças
Leia maisSistemas Operacionais Processos e Threads
Sistemas Operacionais Processos e Threads Prof. Marcos Monteiro, MBA http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br 1 Estrutura de um Sistema Operacional 2 GERÊNCIA DE PROCESSOS Um processo
Leia maisUniversidade Federal de Goiás UFG Campus Catalão CAC Departamento de Engenharia de Produção. Sistemas ERP. PCP 3 - Professor Muris Lage Junior
Sistemas ERP Introdução Sucesso para algumas empresas: acessar informações de forma rápida e confiável responder eficientemente ao mercado consumidor Conseguir não é tarefa simples Isso se deve ao fato
Leia maisFundamentos de Hardware
Fundamentos de Hardware Curso Técnico em Informática SUMÁRIO PLACAS DE EXPANSÃO... 3 PLACAS DE VÍDEO... 3 Conectores de Vídeo... 4 PLACAS DE SOM... 6 Canais de Áudio... 7 Resolução das Placas de Som...
Leia maisA LIBERDADE DO LINUX COM A QUALIDADE ITAUTEC
A LIBERDADE DO LINUX COM A QUALIDADE ITAUTEC O AMBIENTE OPERACIONAL QUE AGREGA A CONFIABILIDADE E O SUPORTE DA ITAUTEC À SEGURANÇA E À PERFORMANCE DO LINUX O LIBRIX É UMA DISTRIBUIÇÃO PROFISSIONAL LINUX
Leia maisSolução Integrada para Gestão e Operação Empresarial - ERP
Solução Integrada para Gestão e Operação Empresarial - ERP Mastermaq Softwares Há quase 20 anos no mercado, a Mastermaq está entre as maiores software houses do país e é especialista em soluções para Gestão
Leia maisSISTEMA DE ARQUIVOS. Instrutor: Mawro Klinger
SISTEMA DE ARQUIVOS Instrutor: Mawro Klinger Estrutura dos Discos As informações digitais, quer sejam programas ou dados do usuário, são gravadas em unidades de armazenamento. O HD é uma unidade de armazenamento
Leia maisMANUAL CFTV DIGITAL - LINHA LIGHT 16 CANAIS 120 FPS / VID 120-LI CONFIGURAÇÃO DO COMPUTADOR 16 Canais - 120 FPS Processador Dual Core 2.0GHZ ou superior; Placa Mãe Intel ou Gigabyte com chipset Intel;
Leia maisO que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional
O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais Laboratório de Sistemas Operacionais Aula 1 Flávia Maristela (flavia@flaviamaristela.com) Tudo o que já vimos antes... Introdução
Leia maisO hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware
1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador
Leia maisSumário. Administração de Banco de dados Módulo 12. Ilustração Backup-Recovery. Recuperação (Recovery) - Definição
Sumário Administração de Banco de dados Módulo 12 1. Administração de SGBDs - Continuação 1.1. Recuperação (Recovery) 1.1.1. Recuperação de sistema 1.1.2. Recuperação da mídia M. Sc. Luiz Alberto lasf.bel@gmail.com
Leia maisANÁLISE COMPARATIVA ENTRE APLICAÇÕES GRATUITAS EM NUVEM
ANÁLISE COMPARATIVA ENTRE APLICAÇÕES GRATUITAS EM NUVEM Pedro Victor Fortunato Lima, Ricardo Ribeiro Rufino Universidade Paranaense UNIPAR Paranavaí Paraná Brasil pedrin_victor@hotmail.com, ricardo@unipar.br
Leia maisCálculo Aproximado do número PI utilizando Programação Paralela
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Cálculo Aproximado do número PI utilizando Programação Paralela Grupo 17 Raphael Ferras Renan Pagaiane Yule Vaz SSC-0143 Programação
Leia maisA VERDADE SOBRE OS SOFTWARES ROBÔS DE LICITAÇÃO
A VERDADE SOBRE OS SOFTWARES ROBÔS DE LICITAÇÃO Tudo sobre esta incrível e polêmica ferramenta de trabalho. IDEngenharia Igor D Azevedo Engº Software WWW.lancesautomaticos.com.br A VERDADE SOBRE OS SOFTWARES
Leia maisPalavras-chave: i3geo, gvsig, Mapserver, integração, plugin. Contato: edmar.moretti@terra.com.br ou edmar.moretti@gmail.com
III Jornada Latinoamericana e do Caribe do gvsig Artigo: Integração do software i3geo com o gvsig Autor: Edmar Moretti Resumo: O i3geo é um software para a criação de mapas interativos para internet qu
Leia maisCISC RISC Introdução A CISC (em inglês: Complex Instruction Set Computing, Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; suporta mais instruções no entanto, com
Leia maisIntrodução aos Sistemas da InformaçãoAula 4 p. 1
Introdução aos Sistemas da Informação Aula 4 Ivan da Silva Sendin ivansendin@yahoo.com FACOM - Universidade Federal de Uberlândia Introdução aos Sistemas da InformaçãoAula 4 p. 1 Software O que é software?
Leia maisPasso 3: Posicionando a Câmera na Prova Didática Teórica ou na Prova de Defesa da Produção Intelectual
Este manual descreve um procedimento para o registro de Concursos Públicos por meio de áudio e vídeo utilizando-se recursos tecnológicos básicos i. A gravação segue o disposto na Resolução 020/09 da UFSM
Leia maisProgramaçã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 maisINDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM...
1 de 30 INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 3.1. ONDE SE DEVE INSTALAR O SERVIDOR BAM?... 4 3.2. ONDE SE DEVE INSTALAR O PROGRAMADOR REMOTO BAM?... 4 3.3. COMO FAZER
Leia maisImagem retirada de documentações de treinamentos oficiais INTEL
O que é Hyper-Threading (HT)? Hyper-Threading (HT) é uma tecnologia existe nos processadores que visa explorar com mais eficiência o uso da CPU, o grande foco desta tecnologia é evitar ociosidade de processamento
Leia maisIFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira
IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários
Leia maisDesenvolvendo Websites com PHP
Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.
Leia maisInfraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli
Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli Conceitos principais Nuvem Local Dados (informações) Profissional Pessoal Procedimento padrão (modelo) Produzir Armazenar Como era... Como
Leia maisEscalonamento no Linux e no Windows NT/2000/XP
Escalonamento no Linux e no Windows NT/2000/XP 1 Escalonamento no Linux Os requisitos do escalonador do Linux eram: Apresentar boa performance em programas interativos, mesmo com carga elevada; Distribuir
Leia maisFUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO Rafael D. Ribeiro, M.Sc,PMP. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br @ribeirord Pesquisa e Propagação do conhecimento: Através da Web, é possível
Leia mais1. Quem somos nós? A AGI Soluções nasceu em Belo Horizonte (BH), com a simples missão de entregar serviços de TI de forma rápida e com alta qualidade.
1. Quem somos nós? A AGI Soluções nasceu em Belo Horizonte (BH), com a simples missão de entregar serviços de TI de forma rápida e com alta qualidade. Todos nós da AGI Soluções trabalhamos durante anos
Leia maisGERAÇÃO DE RELATÓRIOS
UNIOESTE Universidade Estadual do Oeste do Paraná CCET - CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Ciência da Computação Curso de Bacharelado em Ciência da Computação GERAÇÃO DE RELATÓRIOS
Leia maisGoogle Android para Tablets
Google Android para Tablets Aprenda a desenvolver aplicações para o Android De smartphones a tablets Ricardo R. Lecheta Novatec Copyright 2012 Novatec Editora Ltda. Todos os direitos reservados e protegidos
Leia maisComo medir a velocidade da Internet?
Link Original: http://www.techtudo.com.br/artigos/noticia/2012/05/como-medir-velocidade-da-suainternet.html Como medir a velocidade da Internet? Pedro Pisa Para o TechTudo O Velocímetro TechTudo é uma
Leia maisPROPOSTA PARA UM SUPORTE ADEQUADO ÀS REDES LOCAIS NA UFSCar Prof. Néocles Alves Pereira Secretário Geral de Informática
PROPOSTA PARA UM SUPORTE ADEQUADO ÀS REDES LOCAIS NA UFSCar Prof. Néocles Alves Pereira Secretário Geral de Informática 1. Introdução Com o crescimento da UFSCar nos últimos anos, o número de redes de
Leia maisSAM GERENCIAMENTO DE ATIVOS DE SOFTWARE
SAM GERENCIAMENTO DE ATIVOS DE SOFTWARE Modelo de Otimização de SAM Controle, otimize, cresça Em um mercado internacional em constante mudança, as empresas buscam oportunidades de ganhar vantagem competitiva
Leia maisSistemas 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 mais7.Conclusão e Trabalhos Futuros
7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização
Leia maisSão programas de computador utilizados para realizar diversas tarefas É a parte lógica do computador, o que faz o computador realmente funcionar.
São programas de computador utilizados para realizar diversas tarefas É a parte lógica do computador, o que faz o computador realmente funcionar. Quais são eles? Vários outros programas 1 Sistema Básico
Leia maisTaxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575
21 4 Análise É necessária uma análise criteriosa, que busque retornar as questões primordiais sobre o que é realmente preciso para a aquisição de uma plataforma de produção gráfica digital profissional.
Leia maisINTRODUÇÃO BARRAMENTO PCI EXPRESS.
INTRODUÇÃO BARRAMENTO EXPRESS. O processador se comunica com os outros periféricos do micro através de um caminho de dados chamado barramento. Desde o lançamento do primeiro PC em 1981 até os dias de hoje,
Leia maisNo projeto das primeiras redes de computadores, o hardware foi a principal preocupação e o software ficou em segundo plano.
No projeto das primeiras redes de computadores, o hardware foi a principal preocupação e o software ficou em segundo plano. Essa estratégia foi deixada para trás. Atualmente, o software de rede é altamente
Leia mais