• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 61
  • 2
  • Tagged with
  • 64
  • 64
  • 30
  • 23
  • 21
  • 20
  • 18
  • 18
  • 18
  • 16
  • 16
  • 16
  • 11
  • 11
  • 10
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
21

[en] A TOOL FOR REBUILDING THE SEQUENCE OF INTERACTIONS BETWEEN COMPONENTS OF A DISTRIBUTED SYSTEM / [pt] UMA FERRAMENTA PARA RECONSTRUÇÃO DA SEQUÊNCIA DE INTERAÇÕES ENTRE COMPONENTES DE UM SISTEMA DISTRIBUÍDO

PAULO ROBERTO FRANCA DE SOUZA 11 October 2011 (has links)
[pt] Sistemas distribuídos frequentemente apresentam um comportamento em tempo de execução diferente do esperado pelo programador. A análise estática, somente, não suficiente para a compreensão do comportamento e para o diagnóstico de problemas nesses sistemas, em razão da sua natureza nao determinística, reflexo de características inerentes como concorrência, latência na comunicação e falha parcial. Sendo assim, torna-se necessário um melhor entendimento das interações entre os diferentes componentes de software que formam o sistema, para que o desenvolvedor possa ter uma melhor visão do comportamento do sistema durante sua execução. Neste trabalho, apresentamos uma ferramenta que faz a reconstrução das interações entre os componentes de uma aplicação distribuída, oferecendo uma visão das linhas de execução distribuídas e permitindo o acompanhamento das sequências de chamadas remotas e a análise das relações de causalidade. Essa ferramenta também faz a persistência do histórico dessas interações ao longo do tempo, correlacionando-as a arquitetura do sistema e aos dados de desempenho. Assim, a ferramenta proposta auxilia o desenvolvedor a melhor compreender cenários que envolvem comportamentos indevido do sistema e a restringir o escopo da análise do erro, facilitando a busca de uma solução. / [en] Distributed systems often present a runtime behavior different than what is expected by the programmer. Static analysis is not enough to understand the runtime behavior and to diagnoses errors. This difficulty is caused by the non-deterministic nature of distributed systems, because of their inherent characteristics, such as concurrency, communication latency and partial failure. Therefore, it’s necessary a better view of the interactions between the system’s software components in order to understand its runtime behavior. In this work we present a tool that rebuilds the interactions among distributed components, presents a view of distributed threads and remote call sequences, and allows the analysis of causality relationships. Our tool also stores the interactions over time and correlates them to the system architecture and to performance data. The proposed tool helps the developer to better understand scenarios involving an unexpected behavior of the system and to restrict the scope of error analysis, making easier the search for a solution.
22

Coordenação e reconfiguração dinâmica de componentes em uma plataforma de computação paralela / Coordination and dynamic reconfiguration of components in a parallel computing platform

Sales, Juliano Efson Norberto January 2012 (has links)
SALES, Juliano Efson Norberto. Coordenação e reconfiguração dinâmica de componentes em uma plataforma de computação paralela. 2012. 144 f. Dissertação (Mestrado em ciência da computação)- Universidade Federal do Ceará, Fortaleza-CE, 2012. / Submitted by Elineudson Ribeiro (elineudsonr@gmail.com) on 2016-07-11T17:31:37Z No. of bitstreams: 1 2012_dis_jensales.pdf: 3112116 bytes, checksum: e6dad36307eb52f19a718046ca764535 (MD5) / Approved for entry into archive by Rocilda Sales (rocilda@ufc.br) on 2016-07-18T15:42:23Z (GMT) No. of bitstreams: 1 2012_dis_jensales.pdf: 3112116 bytes, checksum: e6dad36307eb52f19a718046ca764535 (MD5) / Made available in DSpace on 2016-07-18T15:42:23Z (GMT). No. of bitstreams: 1 2012_dis_jensales.pdf: 3112116 bytes, checksum: e6dad36307eb52f19a718046ca764535 (MD5) Previous issue date: 2012 / Long running applications are very common in High Performance Computing (HPC) domains. During the execution of this kind of application, some improvements or corrections can be identified and applied without making invalid the data that has been processed. In these cases, the ability to make changes in a parallel program during execution is considered useful. Dynamic reconfiguration is the term used to describe this technique, which can be implemented using different alternatives, like architecture description languages (ADL). An ADL allows a the specification of a software based on exogenous conectors to combine and define data types and protocols for orchestrating the interaction between components. This research has the goal of designing an ADL and implementing a configuration interpretation environment for the HPE component-based parallel computing platform. The main purpose of this language is to provide the ability to specify exogenous connectors and support dynamic reconfiguration. Case studies evaluate the performance of the component interpretation developed by the ADL, as well as validate the actions of dynamic reconfiguration. The results are an evidence that the overhead in the interpretation process for realistic problem instances is acceptable, in such a way that, when used wisely, the connectors can be used even in production scenarios. In some cases, the interpretation weight can be disregarded. The reconfiguration experiments are also deemed satisfactory, making the simplicity of the mechanism the major draw of the solution. / Nos domínios da Computação de Alto Desempenho (CAD), são comuns aplicações com tempo de execução de longa duração. Durante a execução de uma aplicação dessa natureza, podem ser identificadas melhorias ou correções nos algoritmos em execução que não invalidam o processamento previamente realizado. Neste cenário, a capacidade de realizar modificações em tempo de execução se mostra de grande utilidade. A esta técnica chamamos reconfiguração dinâmica, a qual, dentre outros meios discutidos ao longo do trabalho, pode ser implementada a partir do uso de linguagens de propósito específico como as linguagens de descrição de arquitetura (ADL). Uma ADL permite a especificação de um sistema de software a partir da construção de conectores exógenos com a função de combinar e definir os formatos de dados e protocolos nas interações de componentes. Este trabalho de pesquisa tem como objeto o projeto de uma ADL e a implementação de um ambiente de interpretação de configuração para a plataforma de componentes paralelos HPE (Hash Programming Environment). Essa linguagem tem como principal propósito oferecer a capacidade de especificar conectores exógenos e suporte à reconfiguração dinâmica. Estudos de caso avaliam o desempenho da interpretação dos componentes desenvolvidos pela ADL, como também validam as operações de reconfiguração dinâmica. Os resultados mostram sobrecarga considerada aceitável no processo de interpretação, para instâncias realísticas de problemas, de forma que, quando utilizado com prudência, os conectores podem ser utilizados até mesmo em cenários de produção. Em alguns casos, o peso da interpretação chega a ser desprezível. Os ensaios de reconfiguração também se mostram satisfatórios para os requisitos apresentados, sendo um dos principais diferencias da solução, a simplicidade de uso do mecanismo.
23

Contratos formais para derivação e verificação de componentes paralelos / Formal contracts for derivation and verification of parallel componentes

Marcilon, Thiago Braga January 2012 (has links)
MARCILON, Thiago Braga. Contratos formais para derivação e verificação de componentes paralelos. 2012. 156 f. Dissertação (Mestrado em ciência da computação)- Universidade Federal do Ceará, Fortaleza-CE, 2012. / Submitted by Elineudson Ribeiro (elineudsonr@gmail.com) on 2016-07-12T18:10:13Z No. of bitstreams: 1 2012_dis_tbmarcilon.pdf: 1474623 bytes, checksum: e61fb07d3a835088ff5a53d4eb684f2d (MD5) / Approved for entry into archive by Rocilda Sales (rocilda@ufc.br) on 2016-07-22T12:39:34Z (GMT) No. of bitstreams: 1 2012_dis_tbmarcilon.pdf: 1474623 bytes, checksum: e61fb07d3a835088ff5a53d4eb684f2d (MD5) / Made available in DSpace on 2016-07-22T12:39:34Z (GMT). No. of bitstreams: 1 2012_dis_tbmarcilon.pdf: 1474623 bytes, checksum: e61fb07d3a835088ff5a53d4eb684f2d (MD5) Previous issue date: 2012 / The use of cloud computing to offer High Performance Computing (HPC) services has been widely discussed in the academia and industry. In this respect, this dissertation is included in the context of designing a cloud computing platform for the development of component-based parallel computing applications, referred as cloud of components. Many important challenges about using the cloud of components relate to parallel programming, an error-prone task due to synchronization issues, which may lead to abortion and production of incorrect data during execution of applications, and the inefficient use of computational resources. These problems may be very relevant in the case of long running applications with tight timelines to obtain critical results, quite common in the context of HPC. One possible solution to these problems is the formal analysis of the behavior of the components of an application through the cloud services, before their execution. Thus, the users of the components may know if a component can be safely used in their application. In this scenario, formal methods becomes useful. In this dissertation, it is proposed a process for specification and derivation of parallel components implementation for the cloud of components. This process involves the formal specification of the components behavior through contracts described using the Circus formal specification language. Then, through a refinement and translation process, which takes the contract as a start point, one may produce an implementation of a component that may execute on a parallel computing platform. Through this process, it becomes possible to offer guarantees to developers about the components behavior in their applications. To validate the proposed idea, the process is applied to contracts that have been described based on two benchmarks belonging to the NAS Parallel Benchmarks, widely adopted in HPC for evaluate the performance of parallel programming and computing platforms. / A aplicação de nuvens computacionais para oferecer serviços de Computação de Alto Desempenho (CAD) é um assunto bastante discutido no meio acadêmico e industrial. Esta dissertação está inserida no contexto do projeto de uma nuvem computacional para o desenvolvimento e execução de aplicações de CAD baseadas em componentes paralelos, doravante denominada nuvem de componentes. Um dos principais desafios na sua utilização consiste no suporte à programação paralela, tarefa bastante suscetível à erros, pois tais erros podem levar, ao longo do desenvolvimento, a problemas de sincronização de processos, que podem causar abortamento da execução e a produção de dados incorretos, bem como a problemas relacionados ao uso ineficiente dos recursos computacionais. É importante que tais problemas sejam tratados no caso de aplicações de longa duração cujo respeito a um cronograma para obtenção de resultados é crítico, aplicações estas bastante comuns no contexto de CAD. Uma possível solução para tais problemas consiste na verificação do comportamento e das propriedades dos componentes na nuvem, antes que seja feita a sua execução, tornando possível que os usuários dos componentes da nuvem saibam se um componente pode ser utilizado com segurança em sua aplicação. Nesse cenário, o uso de métodos formais surge como uma alternativa atraente. A contribuição desta dissertação consiste em um processo de derivação e verificação de propriedades de componentes na nuvem. Tal processo envolve a especificação formal do comportamento dos componentes por meio de contratos descritos pela linguagem Circus. Então, através de um processo de refinamento e tradução tendo como ponto de partida o contrato, chega-se à implementação de um componente para execução sobre uma plataforma de computação paralela. Através desse processo, torna-se possível oferecer garantias aos desenvolvedores em relação ao comportamento dos componentes no contexto de suas aplicações. Para a prova de conceito, o processo é aplicado sobre a especificação "papel-e-caneta" de dois benchmarks do NAS Parallel Benchmarks, IS e CG, bastante difundidos na área de CAD.
24

[en] MONITORING THE EXECUTION ENVIRONMENT OF DISTRIBUTED SOFTWARE COMPONENTS / [pt] MONITORANDO O AMBIENTE DE EXECUÇÃO DE COMPONENTES DE SOFTWARE DISTRIBUIDOS

EDUARDO FONSECA DE ANDREA 06 October 2009 (has links)
[pt] Sistemas de componentes têm como característica possibilitar a construção de aplicações através da composição de artefatos de software disponíveis. Interações podem ocorrer entre diversos componentes que podem estar distribuídos em diversas máquinas. À medida que aplicações distribuídas aumentam de tamanho, as interações existentes entre os diversos nós que a compõem vão se tornando mais complexas. Assim, torna-se importante para essas aplicações a existência de uma forma de monitorar as interações entre os componentes, com o intuito de identificar falhas e gargalos de processamento e comunicação no sistema. Este trabalho apresenta uma arquitetura capaz de oferecer mecanismos extensíveis para coleta de informações do ambiente de execução desses sistemas, e das interações realizadas entre os seus componentes. São implementadas formas de publicação dessas informações obtidas e testes comparativos para quantificar como a arquitetura desenvolvida onera o desempenho da aplicação. / [en] Component-based systems are characterized by the construction of applications through the composition of available software artifacts. Interactions may occur between different components that can be distributed through several machines. As distributed applications increase in size, the interactions between the various nodes that comprise them become more complex. Therefore it is important for distributed component systems to monitor the interactions between components in order to identify failures and bottlenecks in processing and communication. This dissertation presents an architecture capable of offering extensible mechanisms for monitoring the execution environment of distributed components, and the interactions between their components. It also presents a flexible mechanism for publication of the collected information, and some comparative test to measure the performance penalty imposed by the infrastructure to the application.
25

Reuso de componentes para interfaces com realidade virtual apoiado pelo ambiente GaCIV.

Albertin, José Carlos Lazzari 25 August 2003 (has links)
Made available in DSpace on 2016-06-02T19:05:20Z (GMT). No. of bitstreams: 1 DissJCLA.pdf: 1360789 bytes, checksum: bb209c7235c8538625fb792962b07d1e (MD5) Previous issue date: 2003-08-25 / This work presents the GaCIV Computational Environment (Configurable Templates for Development of Virtual Reality Interfaces) for building interfaces with non-immersive Virtual Reality for applications in different domains. This new version supports software component reuse, allowing project of friendlier interfaces with virtual reality, with usability and praticity. / A Realidade Virtual (RV) permite que a interação humano-computador possa ocorrer de maneira mais natural e intuitiva, já que o usuário pode transmitir o conhecimento que ele possui do mundo real para o mundo virtual. Isso beneficia a usabilidade do sistema pois o usuário, ao sentir-se dentro de um ambiente que se pareça com o mundo real, pode se situar melhor perante as atividades que ele quer realizar, através da navegação no mundo virtual e a interação mais natural com objetos virtuais. Este trabalho apresenta o Ambiente Computacional GaCIV (Gabaritos Configuráveis para elaboração de Interfaces com realidade Virtual) que propõe a elaboração de interfaces com RV de maneira simples e direta, dando suporte ao reuso de componentes para interfaces com RV, gerando repositórios de componentes para interfaces com RV.
26

C-CORE : uma Ferramenta de programação para construção e reuso de componentes.

Souza Neto, Raphael Marcilio de 24 May 2005 (has links)
Made available in DSpace on 2016-06-02T19:05:25Z (GMT). No. of bitstreams: 1 DissRMSN.pdf: 1736895 bytes, checksum: 08004f2bb011a8d73cc8d4f96e47491d (MD5) Previous issue date: 2005-05-24 / Financiadora de Estudos e Projetos / The Software Development contains several activities that are not always supported by tools that aid the Software Engineer and automate great part of his activities. Different researches have been accomplished and many resources have been spent aiming to construct tools that support the Software Development Process. Among these tools, stand out those that support project and implementation activities, and that are integrated with tools that support other activities of the software construction process. With those tools, it can be obtained a larger consistence of the results that are produced along the whole software development cycle. Another important point of the development process is related to obtain a software with better quality and less cost. One of the areas that is highlighted in the software production with quality and less cost, is those that researches the software components reuse. Thus, the Software Component Oriented Programming Tools integrated with modeling tools that aim mainly to improve the software productivity based on reuse is standing out. Motivated by these ideas, this work presents a tool denominated C-CORE, that supports the project and implementation of components and their applications integrated with other modeling tool, denominated MVCASE. / O Desenvolvimento de Software compreende diversas atividades que nem sempre são suportadas por ferramentas que auxiliam o Engenheiro de Software e automatizam grande parte de suas atividades. Diferentes pesquisas têm sido realizadas e muitos recursos têm sido gastos com o objetivo de construir ferramentas que apóiam o Processo de Desenvolvimento de Software. Dentre essas ferramentas, destacam-se aquelas que oferecem apoio às atividades de projeto e implementação, e que são integradas com ferramentas que auxiliam outras atividades do processo de construção de software. Com essas ferramentas, pode-se obter uma maior consistência dos artefatos produzidos ao longo de todo o ciclo de desenvolvimento de software. Outro ponto importante do processo de desenvolvimento relaciona-se com a obtenção de software com melhor qualidade e menor custo. Uma das áreas que vem se destacando na produção de software com qualidade e menor custo é a que pesquisa o reuso de componentes de software. Assim, vem ganhando destaque as ferramentas de programação orientadas a componentes de software integradas com ferramentas de modelagem que visam principalmente a produtividade de software baseada no reuso. Motivados por estas idéias, este trabalho apresenta uma ferramenta de suporte ao projeto e implementação de componentes e suas aplicações, denominada C-CORE, integrada com outra ferramenta de modelagem, denominada MVCASE.
27

Componentes para manipulação de objetos multimídia utilizando o padrão MPEG-7.

Figueira, Leandro Donaires 18 June 2007 (has links)
Made available in DSpace on 2016-06-02T19:05:25Z (GMT). No. of bitstreams: 1 DissLDF.pdf: 1886677 bytes, checksum: dc37e62087bd48b0ae6005924f0c8b99 (MD5) Previous issue date: 2007-06-18 / Financiadora de Estudos e Projetos / This work presents a layer for the manipulation of media based on the multimedia content description interface, MPEG-7. This layer realizes some parts of the MPEG-7 MDS (Multimedia Description Schemes), and being built by components, makes a base for the implementation of any application that has media manipulation requisites that range from the simplest ones to a database multimedia system. In this last case, it can be a system that have many operations being executed in a database, like multimedia data mining and indexing by low level features, all supported by MPEG-7. This layer was built to unify the necessities on manipulating media of many applications, integrating them and acting as a mediator. It provides interfaces so that the insertion of media together with their semantic annotation is possible, along with queries based on these semantic metadata derived from these annotations. A simplified model for the semantic annotation and queries for the ease of use of these interfaces was proposed, being the annotations and queries made in a similar manner. Finally, this layer allows the exporting of the query metadata on the format used by MPEG-7 for interchange between systems. / Este trabalho apresenta uma camada de manipulação de mídias baseada no padrão de descrição de dados multimídia MPEG-7. Esta camada realiza algumas partes dos MDS (Multimedia Description Schemes) do padrão MPEG-7, e através de sua construção por componentes, forma uma base para a implementação de quaisquer aplicações que tenham requisitos de manipulação de mídias, desde as mais simples até um sistema de banco de dados multimídia. Nesse último caso, pode ser um sistema que execute as várias operações possíveis em um banco de dados, como mineração de dados multimídia e indexação por características de baixo-nível, tudo apoiado sobre o padrão. Esta camada foi feita com a intenção de unificar as necessidades de manipulação de mídias por várias aplicações, integrando-as e agindo dessa forma como mediadora. Ela provê interfaces para que sejam feitas inserções de mídias junto com as anotações semânticas, além de consultas sobre elas através desses metadados semânticos provindos das anotações. Foi proposto um modelo simplificado de anotação e consulta semântica para a fácil utilização dessas interfaces, sendo que tanto as anotações como as consultas são feitas de maneira semelhante. Finalmente, essa camada possibilita que seja feita a exportação dos metadados da consulta no formato usado pelo padrão MPEG-7, para intercâmbio de dados com outros sistemas.
28

Uma abordagem de reengenharia interativa orientada a características para sistemas embutidos legados

Ramos, Marcelo Augusto 28 October 2007 (has links)
Made available in DSpace on 2016-06-02T19:05:27Z (GMT). No. of bitstreams: 1 1694.pdf: 901058 bytes, checksum: e514a96a13b1c36a4d60a8b5b7008adb (MD5) Previous issue date: 2007-10-28 / To reduce costs, to minimize risks, to anticipate deadlines and to optimize resources of new product designs it is recommended, whenever possible, to reuse artifacts of existing successful similar products. However, these artifacts must be of easy adaptation to meet the requirements of the new products with a few or no need of re-design or re-coding. This work describes a feature oriented iterative reengineering approach to concomitantly achieve both the revitalization of embedded legacy systems and the incremental creation of a core of reusable artifacts, to support the development of other similar systems, members of a product family. Such systems are generally small and pass through frequent maintenances to support the evolution of the hardware they integrate, accelerating the natural software degradation process. The accomplishment of a reengineering process can extend the life cycle of these systems, improving their structural properties for a better adaptation to changes. Agile principles and techniques are applied throughout the process, providing continuous interactions with the customer and deliveries of executable and tested partially modernized versions in short and frequent intervals, with documentation in appropriate level and prepared for future modifications. Software Product Line techniques are used for the domain modeling and for the design of generic software components. Its activities are accomplished without the need of code freezing or duplication and allow maintenances and interruptions at anytime, without prejudice of the enhancements already developed in all previously ended iterations. A case study is presented to exemplify the proposed approach in a real environment and to evaluate its results. / Para reduzir custos, minimizar riscos, antecipar prazos e otimizar recursos de projetos de novos produtos recomenda-se, sempre que possível, a reutilização de artefatos de produtos similares e bem sucedidos existentes. Porém, esses artefatos devem ser de fácil adaptação para que satisfaçam aos requisitos desses novos produtos com pouca ou nenhuma necessidade de re-projeto ou de re-codificação. Este trabalho descreve uma abordagem de reengenharia iterativa orientada a características para realizar concomitantemente a revitalização de sistemas embutidos legados e a criação incremental de um núcleo de artefatos reutilizáveis, para apoiar o desenvolvimento de outros sistemas similares, membros de uma família de produtos. Tais sistemas são geralmente pequenos e sofrem constantes manutenções para apoiarem a evolução do hardware que integram, acelerando o processo natural de degradação do software. A realização de um processo de reengenharia pode prolongar a vida útil desses sistemas, melhorando suas propriedades estruturais para uma melhor adaptação a mudanças. Princípios e técnicas ágeis são aplicados ao longo de todo o processo, provendo interações contínuas com o cliente, entregas de versões executáveis testadas e parcialmente modernizadas em intervalos curtos e freqüentes, com documentação em nível apropriado e preparadas para modificações futuras. Técnicas de Linha de Produtos de Software são utilizadas para a modelagem de domínio e para o projeto de componentes genéricos de software. Suas atividades são realizadas sem a necessidade de congelamentos ou duplicações de código e permitem que manutenções e paralisações ocorram a qualquer instante, sem prejuízo das melhorias já desenvolvidas nas iterações previamente concluídas. Um estudo de caso é apresentado para exemplificar a aplicação da abordagem proposta em um ambiente real e para avaliar os seus resultados.
29

Desenvolvimento de componentes para sistemas cooperativos.

Santos, Helen de Freitas 06 August 2001 (has links)
Made available in DSpace on 2016-06-02T19:05:48Z (GMT). No. of bitstreams: 1 DissHFS.pdf: 2904580 bytes, checksum: ce1d71d9cbe4ea5332da7da1272f4cd8 (MD5) Previous issue date: 2001-08-06 / Computer Supported Cooperative Work (CSCW) is a multidisciplinary field that looks for appropriate studies to promote cooperation among groups of people involved in an common task to make use of a computational support to facilitate this cooperation. Besides studying several computation ways to facilitate the cooperative activities, the design, software development and implementation of the support computational are also object of study of CSCW. The cooperative activity support has a great importance because these activities involving a group of people are larger amount that individual ones to the compliment of a common purpose. Within this sense, this research introduces a collection of identified cooperative components through the utilization of a component-based software development methodology. / Trabalho Cooperativo Suportado por Computador (CSCW - Computer Supported Cooperative Work) é um campo multidisciplinar que busca o estudo de formas adequadas para promover a cooperação entre grupos de pessoas envolvidas na realização de uma tarefa comum, utilizando-se de um suporte computacional para facilitar essa cooperação. Além de estudar as diversas maneiras da computação facilitar as atividades cooperativas, o projeto, a implementação e a implantação do suporte computacional para auxiliar as várias formas de cooperação também são objeto de estudo de CSCW. O suporte à atividade cooperativa é de grande importância uma vez que, para o cumprimento de um objetivo comum, as atividades envolvendo um grupo de pessoas são em maior quantidade que as atividades individuais. Neste sentido, este trabalho apresenta um conjunto de componentes cooperativos identificados a partir da utilização de uma metodologia para desenvolvimento de software baseado em componentes.
30

CSK: uma abordagem para estruturação de kernel de tempo real em componentes.

Correia, Lúcio José Herculano 27 May 2004 (has links)
Made available in DSpace on 2016-06-02T19:06:02Z (GMT). No. of bitstreams: 1 DissLJHC.pdf: 911507 bytes, checksum: 0af483c56c4aeb6304f9100fe71cccb9 (MD5) Previous issue date: 2004-05-27 / Financiadora de Estudos e Projetos / Generally, operating systems offer a set of services through primitives that are used on demand by applications. Similarly, software components implement and provide services through well-defined interfaces, which are reused in different software projects of a problem domain. Based upon this similarity, it is researched the reuse of software components in real time operating systems projects. It is presented CSK (Computer Structured Kernel) approach for structuring a real time kernel with software components. The approach is divided in two phases. In the first one software components are built from the legacy code and documentation of a preexisting kernel. In the second one, that kernel is rebuilt by reusing the produced components. A case study applies CSK to real time kernel Virtuoso. / Sistemas operacionais em geral oferecem um conjunto de serviços através de primitivas, as quais são utilizadas sob demanda pelas aplicações. Similarmente, componentes de software implementam e disponibilizam serviços através de interfaces bem definidas, sendo reutilizados em diferentes projetos de software de um domínio de problema. Baseado nesta similaridade, é pesquisado o reuso de componentes de software na área de tempo-real, nos projetos de sistemas operacionais. É apresentada uma abordagem para a estruturação de kernels de tempo-real utilizando componentes de software, denominada CSK (Component Structured Kernel). Esta abordagem é dividida em duas grandes fases. Na primeira fase, constroem-se os componentes a partir do código legado e da documentação de um kernel já existente. Na segunda fase é feita a reestruturação do kernel, através do reúso de componentes. Um estudo de caso aplica a abordagem CSK ao kernel Virtuoso.

Page generated in 0.1139 seconds