15 resultados para Memoria transaccional software
em Instituto Politécnico do Porto, Portugal
Resumo:
The recent trends of chip architectures with higher number of heterogeneous cores, and non-uniform memory/non-coherent caches, brings renewed attention to the use of Software Transactional Memory (STM) as a fundamental building block for developing parallel applications. Nevertheless, although STM promises to ease concurrent and parallel software development, it relies on the possibility of aborting conflicting transactions to maintain data consistency, which impacts on the responsiveness and timing guarantees required by embedded real-time systems. In these systems, contention delays must be (efficiently) limited so that the response times of tasks executing transactions are upper-bounded and task sets can be feasibly scheduled. In this paper we assess the use of STM in the development of embedded real-time software, defending that the amount of contention can be reduced if read-only transactions access recent consistent data snapshots, progressing in a wait-free manner. We show how the required number of versions of a shared object can be calculated for a set of tasks. We also outline an algorithm to manage conflicts between update transactions that prevents starvation.
Resumo:
Remote Laboratories or WebLabs constitute a first-order didactic resource in engineering faculties. However, in many cases, they lack a proper software design, both in the client and server side, which degrades their quality and academic usefulness. This paper presents the main characteristics of a Remote Laboratory, analyzes the software technologies to implement the client and server sides in a WebLab, and correlates these technologies with the characteristics to facilitate the selection of a technology to implement a WebLab. The results obtained suggest the adoption of a Service Oriented Laboratory Architecture-based approach for the design of future Remote Laboratories so that client-agnostic Remote Laboratories and Remote Laboratory composition are enabled. The experience with the real Remote Laboratory, WebLab-Deusto, is also presented.
Resumo:
Com o crescente aumento da Teleradiologia, sentiu-se necessidade de criar mais e melhores softwares para sustentar esse crescimento. O presente trabalho pretende abordar a temática da certificação de software e a sua marcação CE, pois para dar entrada no mercado Europeu todos os Dispositivos Médicos (DM) têm de estar devidamente certificados. Para efetuar a marcação CE e a certificação serão estudadas normas e normativos adequados para marcação de DM ao nível Europeu e também dos Estados Unidos da América. A temática da segurança de dados pessoais será também estudada de forma a assegurar que o dispositivo respeite a legislação em vigor. Este estudo tem como finalidade a certificação de um software proprietário da efficientia sysPACS, um serviço online abrangente, que permite a gestão integrada do armazenamento e distribuição de imagens médicas para apoio ao diagnóstico.
Resumo:
O presente relatório possui o propósito de apresentar o estágio curricular desenvolvido na empresa “Santa Casa da Misericórdia de Felgueiras”, iniciado a 1 de maio de 2013, englobando horas de aprendizagem e consolidação de conhecimentos adquiridos no percurso académico. A realização do presente estágio está enquadrada no protocolo celebrado entre a “Santa Casa da Misericórdia de Felgueiras” e a Associação de Politécnicos do Norte, cumprindo desta forma o art.º 2 e 3 do Regulamento de Estágios Curriculares da Associação de Politécnicos do Norte (APNOR). A realização do estágio, bem como a realização deste relatório, é o produto final de meses de experiência laboral, pesquisa bibliográfica e de reflexão, de um ano curricular. Com a realização deste estágio e do relatório permitiu-me concluir acerca de como é elaborada a gestão hospitalar e a sua importância no contexto empresarial. A gestão contribui com o fornecimento de informações económicas nos diferentes usuários como: Gestores, Governo, Sindicato, Funcionários.
Resumo:
ISCAP 9 e 10 de Maio de 1997
Resumo:
STRIPPING is a software application developed for the automatic design of a randomly packing column where the transfer of volatile organic compounds (VOCs) from water to air can be performed and to simulate it’s behaviour in a steady-state. This software completely purges any need of experimental work for the selection of diameter of the column, and allows a choice, a priori, of the most convenient hydraulic regime for this type of operation. It also allows the operator to choose the model used for the calculation of some parameters, namely between the Eckert/Robbins model and the Billet model for estimating the pressure drop of the gaseous phase, and between the Billet and Onda/Djebbar’s models for the mass transfer. Illustrations of the graphical interface offered are presented.
Resumo:
As aplicações de Gestão ou Faturação são uma presença indispensável hoje em dia. Tendo o seu início nas aplicações “MS-DOS” em modo de texto, estas aplicações acompanharam a evolução dos sistemas operativos adotando um ambiente gráfico de forma natural. Se há poucos anos apenas as empresas com volumes de negócio significativo possuíam software de faturação, este foi sendo adotado por cada vez mais empresas e pequenos negócios. As alterações legislativas introduzidas desde 2011 conduziram a uma adoção generalizada por parte de pequenas e microempresas. O mercado de aplicações de gestão está saturado pelos grandes produtores de software nacionais: Primavera, Sage, etc. Estas aplicações, tendo sido construídas para PMEs (Pequenas e Médias Empresas) e mesmo grandes empresas, são excessivamente complexas e onerosas para muito pequenas e microempresas. O Modelo de negócio destes produtores de software é primordialmente a venda de Licenças e contratos de Manutenção, nalguns casos através de redes de Agentes. Este projeto teve como objetivo o desenvolvimento de uma Aplicação de Faturação, de baixo custo, simples e cross-platform para ser comercializada em regime de aluguer em Pequenas e Micro Empresas.
Resumo:
Este trabalho académico surge no âmbito da realização da dissertação do Mestrado em Engenharia e Gestão Industrial. Tem como objetivo a melhoria da gestão do Departamento de Infraestruturas, numa empresa de produção de motores elétricos para a indústria automóvel, através da análise, implementação e melhoria de um software de gestão de manutenção, de forma a aumentar a eficiência do Departamento. Este estudo foi desenvolvido durante um estágio curricular na empresa Globe Motors Portugal Lda, localizada em Vila do Conde. Para sua sustentação, foi efetuada uma análise funcional, suportada por um Software de gestão de manutenção, de forma a perceber qual a importância que o mesmo tem no funcionamento do Departamento de Infraestruturas. Pretendeu-se compreender quais as vantagens e desvantagens da sua utilização. Posteriormente, implementou-se uma nova versão deste software, analisando-se os pontos fortes e as oportunidades de melhoria, de forma a tornar o Departamento de infraestruturas mais eficiente, através da utilização desta renovada ferramenta de trabalho. Como objetivo último, pretendeu-se à melhoria da organização e gestão do Departamento de infraestruturas, contribuindo para um desenvolvimento de toda a empresa, uma vez que comungamos a ideia de que só é possível ser competitivo, num mercado altamente exigente, através de processos eficientes, possibilitando a redução de custos a todos os níveis.
Resumo:
The recent technological advancements and market trends are causing an interesting phenomenon towards the convergence of High-Performance Computing (HPC) and Embedded Computing (EC) domains. On one side, new kinds of HPC applications are being required by markets needing huge amounts of information to be processed within a bounded amount of time. On the other side, EC systems are increasingly concerned with providing higher performance in real-time, challenging the performance capabilities of current architectures. The advent of next-generation many-core embedded platforms has the chance of intercepting this converging need for predictable high-performance, allowing HPC and EC applications to be executed on efficient and powerful heterogeneous architectures integrating general-purpose processors with many-core computing fabrics. To this end, it is of paramount importance to develop new techniques for exploiting the massively parallel computation capabilities of such platforms in a predictable way. P-SOCRATES will tackle this important challenge by merging leading research groups from the HPC and EC communities. The time-criticality and parallelisation challenges common to both areas will be addressed by proposing an integrated framework for executing workload-intensive applications with real-time requirements on top of next-generation commercial-off-the-shelf (COTS) platforms based on many-core accelerated architectures. The project will investigate new HPC techniques that fulfil real-time requirements. The main sources of indeterminism will be identified, proposing efficient mapping and scheduling algorithms, along with the associated timing and schedulability analysis, to guarantee the real-time and performance requirements of the applications.
Resumo:
O objetivo deste trabalho é o desenvolvimento de frameworks de testes automáticos de software. Este tipo de testes normalmente está associado ao modelo evolucionário e às metodologias ágeis de desenvolvimento de software, enquanto que os testes manuais estão relacionados com o modelo em cascata e as metodologias tradicionais. Como tal foi efetuado um estudo comparativo sobre os tipos de metodologias e de testes existentes, para decidir quais os que melhor se adequavam ao projeto e dar resposta à questão "Será que realmente compensa realizar testes (automáticos)?". Finalizado o estudo foram desenvolvidas duas frameworks, a primeira para a implementação de testes funcionais e unitários sem dependências a ser utilizada pelos estagiários curriculares da LabOrders, e a segunda para a implementação de testes unitários com dependências externas de base de dados e serviços, a ser utilizada pelos funcionários da empresa. Nas últimas duas décadas as metodologias ágeis de desenvolvimento de software não pararam de evoluir, no entanto as ferramentas de automação não conseguiram acompanhar este progresso. Muitas áreas não são abrangidas pelos testes e por isso alguns têm de ser feitos manualmente. Posto isto foram criadas várias funcionalidades inovadoras para aumentar a cobertura dos testes e tornar as frameworks o mais intuitivas possível, nomeadamente: 1. Download automático de ficheiros através do Internet Explorer 9 (e versões mais recentes). 2. Análise do conteúdo de ficheiros .pdf (através dos testes). 3. Obtenção de elementos web e respetivos atributos através de código jQuery utilizando a API WebDriver com PHP bindings. 4. Exibição de mensagens de erro personalizadas quando não é possível encontrar um determinado elemento. As frameworks implementadas estão também preparadas para a criação de outros testes (de carga, integração, regressão) que possam vir a ser necessários no futuro. Foram testadas em contexto de trabalho pelos colaboradores e clientes da empresa onde foi realizado o projeto de mestrado e os resultados permitiram concluir que a adoção de uma metodologia de desenvolvimento de software com testes automáticos pode aumentar a produtividade, reduzir as falhas e potenciar o cumprimento de orçamentos e prazos dos projetos das organizações.
Resumo:
A integração contínua é uma prática no desenvolvimento de software que já existe há algum tempo mas ainda não é muito conhecida nem usada. Esta prática no desenvolvimento de software surgiu com a programação extrema e tem evoluído ao longo dos últimos anos, adaptando-se às novas tecnologias. O estudo aqui apresentado pretende essencialmente mostrar a real importância e o valor acrescido que a integração contínua pode trazer a um projeto de desenvolvimento de software. O trabalho aqui exposto surge no âmbito de um projeto interno, realizado pelo autor na empresa Konkconsulting, cuja finalidade se prende com o conhecimento mais aprofundado da integração contínua e com o levantamento das necessidades e criação de soluções, de modo a conseguir a sua utilização nos produtos que irão ser desenvolvidos pela empresa. Nesta dissertação, é proposto um conjunto de ferramentas para responder às necessidades imediatas da empresa na implementação de integração contínua num dos seus projetos. Estas ferramentas devem ser de simples e de fácil utilização, de modo a ajudar os programadores durante os desenvolvimentos e responder às necessidades da utilização da integração contínua em um projeto a ser desenvolvido pela empresa, mas ao mesmo tempo, podendo ser facilmente incorporadas em futuros projetos.
Resumo:
Actualmente e cada vez mais, são concebidos e utilizados programas de cálculo automático de Engenharia na realização de projectos de edifícios, que proporcionam aos engenheiros uma possibilidade avançada e rápida de execução, simulação e análise de edifícios para estruturas complexas e de elevada dimensão. Contudo, será necessário que os resultados deverão ser fiáveis de modo a não existirem consequências no comportamento real da estrutura a longo prazo. O presente relatório de estágio, refere-se à verificação aos estados limites de utilização (tensões, fendilhação e deformação) segundo o Eurocódigo 2, de uma estrutura porticada em betão armado, nomeadamente de um pórtico central pertencente a essa mesma estrutura recorrendo ao programa de cálculo automático da Autodesk o Robot Structural Analysis Professional 2014. O objectivo principal do presente trabalho consiste na comparação de resultados referente aos estados limites últimos e de utilização, pelos diferentes módulos de dimensionamento Required e Provided Reinforcement presentes no programa Robot. É destacado no final do relatório, considerando uma disposição de armadura optada analiticamente para o pórtico, uma análise comparativa de resultados referente aos estados limites de utilização entre o comando Typical Reinforcement do módulo Provided Reinforcement e por expressões analíticas. Refere-se contudo que, o procedimento do método analítico teve como base de cálculo uma aplicação desenvolvida para a verificação de elementos de betão armado aos estados limites de utilização segundo o Eurocódigo 2, com o nome de XD-Conserv tendo sido também comparado os resultados finais do mesmo.
Resumo:
A crescente evolução dos dispositivos contendo circuitos integrados, em especial os FPGAs (Field Programmable Logic Arrays) e atualmente os System on a chip (SoCs) baseados em FPGAs, juntamente com a evolução das ferramentas, tem deixado um espaço entre o lançamento e a produção de materiais didáticos que auxiliem os engenheiros no Co- Projecto de hardware/software a partir dessas tecnologias. Com o intuito de auxiliar na redução desse intervalo temporal, o presente trabalho apresenta o desenvolvimento de documentos (tutoriais) direcionados a duas tecnologias recentes: a ferramenta de desenvolvimento de hardware/software VIVADO; e o SoC Zynq-7000, Z-7010, ambos desenvolvidos pela Xilinx. Os documentos produzidos são baseados num projeto básico totalmente implementado em lógica programável e do mesmo projeto implementado através do processador programável embarcado, para que seja possível avaliar o fluxo de projeto da ferramenta para um projeto totalmente implementado em hardware e o fluxo de projeto para o mesmo projeto implementado numa estrutura de harware/software.
Resumo:
Computação gráfica um campo que tem vindo a crescer bastante nos últimos anos, desde áreas como cinematográficas, dos videojogos, da animação, o avanço tem sido tão grande que a semelhança com a realidade é cada vez maior. Praticamente hoje em dia todos os filmes têm efeitos gerados através de computação gráfica, até simples anúncios de televisão para não falar do realismo dos videojogos de hoje. Este estudo tem como objectivo mostrar duas alternativas no mundo da computação gráfica, como tal, vão ser usados dois programas, Blender e Unreal Engine. O cenário em questão será todo modelado de raiz e será o mesmo nos dois programas. Serão feitos vários renders ao cenário, em ambos os programas usando diferentes materiais, diferentes tipos de iluminação, em tempo real e não de forma a mostrar as várias alternativas possíveis.