Spelling suggestions: "subject:"cistemas dde computador"" "subject:"cistemas dee computador""
51 |
Real-time operating system support for multicore applicationsGracioli, Giovani January 2014 (has links)
Tese (doutorado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia de Automação e Sistemas, Florianópolis, 2014 / Made available in DSpace on 2015-02-05T21:15:28Z (GMT). No. of bitstreams: 1
328605.pdf: 3709437 bytes, checksum: 81e0fb95e092d5a351413aae5a972ac2 (MD5)
Previous issue date: 2014 / Plataformas multiprocessadas atuais possuem diversos níveis da memória cache entre o processador e a memória principal para esconder a latência da hierarquia de memória. O principal objetivo da hierarquia de memória é melhorar o tempo médio de execução, ao custo da previsibilidade. O uso não controlado da hierarquia da cache pelas tarefas de tempo real impacta a estimativa dos seus piores tempos de execução, especialmente quando as tarefas de tempo real acessam os níveis da cache compartilhados. Tal acesso causa uma disputa pelas linhas da cache compartilhadas e aumenta o tempo de execução das aplicações. Além disso, essa disputa na cache compartilhada pode causar a perda de prazos, o que é intolerável em sistemas de tempo real críticos. O particionamento da memória cache compartilhada é uma técnica bastante utilizada em sistemas de tempo real multiprocessados para isolar as tarefas e melhorar a previsibilidade do sistema. Atualmente, os estudos que avaliam o particionamento da memória cache em multiprocessadores carecem de dois pontos fundamentais. Primeiro, o mecanismo de particionamento da cache é tipicamente implementado em um ambiente simulado ou em um sistema operacional de propósito geral. Consequentemente, o impacto das atividades realizados pelo núcleo do sistema operacional, tais como o tratamento de interrupções e troca de contexto, no particionamento das tarefas tende a ser negligenciado. Segundo, a avaliação é restrita a um escalonador global ou particionado, e assim não comparando o desempenho do particionamento da cache em diferentes estratégias de escalonamento. Ademais, trabalhos recentes confirmaram que aspectos da implementação do SO, tal como a estrutura de dados usada no escalonamento e os mecanismos de tratamento de interrupções, impactam a escalonabilidade das tarefas de tempo real tanto quanto os aspectos teóricos. Entretanto, tais estudos também usaram sistemas operacionais de propósito geral com extensões de tempo real, que afetamos sobre custos de tempo de execução observados e a escalonabilidade das tarefas de tempo real. Adicionalmente, os algoritmos de escalonamento tempo real para multiprocessadores atuais não consideram cenários onde tarefas de tempo real acessam as mesmas linhas da cache, o que dificulta a estimativa do pior tempo de execução. Esta pesquisa aborda os problemas supracitados com as estratégias de particionamento da cache e com os algoritmos de escalonamento tempo real multiprocessados da seguinte forma. Primeiro, uma infraestrutura de tempo real para multiprocessadores é projetada e implementada em um sistema operacional embarcado. A infraestrutura consiste em diversos algoritmos de escalonamento tempo real, tais como o EDF global e particionado, e um mecanismo de particionamento da cache usando a técnica de coloração de páginas. Segundo, é apresentada uma comparação em termos da taxa de escalonabilidade considerando o sobre custo de tempo de execução da infraestrutura criada e de um sistema operacional de propósito geral com extensões de tempo real. Em alguns casos, o EDF global considerando o sobre custo do sistema operacional embarcado possui uma melhor taxa de escalonabilidade do que o EDF particionado com o sobre custo do sistema operacional de propósito geral, mostrando claramente como diferentes sistemas operacionais influenciam os escalonadores de tempo real críticos em multiprocessadores. Terceiro, é realizada uma avaliação do impacto do particionamento da memória cache em diversos escalonadores de tempo real multiprocessados. Os resultados desta avaliação indicam que um sistema operacional "leve" não compromete as garantias de tempo real e que o particionamento da cache tem diferentes comportamentos dependendo do escalonador e do tamanho do conjunto de trabalho das tarefas. Quarto, é proposto um algoritmo de particionamento de tarefas que atribui as tarefas que compartilham partições ao mesmo processador. Os resultados mostram que essa técnica de particionamento de tarefas reduz a disputa pelas linhas da cache compartilhadas e provê garantias de tempo real para sistemas críticos. Finalmente, é proposto um escalonador de tempo real de duas fases para multiprocessadores. O escalonador usa informações coletadas durante o tempo de execução das tarefas através dos contadores de desempenho em hardware. Com base nos valores dos contadores, o escalonador detecta quando tarefas de melhor esforço o interferem com tarefas de tempo real na cache. Assim é possível impedir que tarefas de melhor esforço acessem as mesmas linhas da cache que tarefas de tempo real. O resultado desta estratégia de escalonamento é o atendimento dos prazos críticos e não críticos das tarefas de tempo real.<br> / Abstracts: Modern multicore platforms feature multiple levels of cache memory placed between the processor and main memory to hide the latency of ordinary memory systems. The primary goal of this cache hierarchy is to improve average execution time (at the cost of predictability). The uncontrolled use of the cache hierarchy by realtime tasks may impact the estimation of their worst-case execution times (WCET), specially when real-time tasks access a shared cache level, causing a contention for shared cache lines and increasing the application execution time. This contention in the shared cache may leadto deadline losses, which is intolerable particularly for hard real-time (HRT) systems. Shared cache partitioning is a well-known technique used in multicore real-time systems to isolate task workloads and to improve system predictability. Presently, the state-of-the-art studies that evaluate shared cache partitioning on multicore processors lack two key issues. First, the cache partitioning mechanism is typically implemented either in a simulated environment or in a general-purpose OS (GPOS), and so the impact of kernel activities, such as interrupt handlers and context switching, on the task partitions tend to be overlooked. Second, the evaluation is typically restricted to either a global or partitioned scheduler, thereby by falling to compare the performance of cache partitioning when tasks are scheduled by different schedulers. Furthermore, recent works have confirmed that OS implementation aspects, such as the choice of scheduling data structures and interrupt handling mechanisms, impact real-time schedulability as much as scheduling theoretic aspects. However, these studies also used real-time patches applied into GPOSes, which affects the run-time overhead observed in these works and consequently the schedulability of real-time tasks. Additionally, current multicore scheduling algorithms do not consider scenarios where real-time tasks access the same cache lines due to true or false sharing, which also impacts the WCET. This thesis addresses these aforementioned problems with cache partitioning techniques and multicore real-time scheduling algorithms as following. First, a real-time multicore support is designed and implemented on top of an embedded operating system designed from scratch. This support consists of several multicore real-time scheduling algorithms, such as global and partitioned EDF, and a cache partitioning mechanism based on page coloring. Second, it is presented a comparison in terms of schedulability ratio considering the run-time overhead of the implemented RTOS and a GPOS patched with real-time extensions. In some cases, Global-EDF considering the overhead of the RTOS is superior to Partitioned-EDF considering the overhead of the patched GPOS, which clearly shows how different OSs impact hard realtime schedulers. Third, an evaluation of the cache partitioning impacton partitioned, clustered, and global real-time schedulers is performed.The results indicate that a lightweight RTOS does not impact real-time tasks, and shared cache partitioning has different behavior depending on the scheduler and the task's working set size. Fourth, a task partitioning algorithm that assigns tasks to cores respecting their usage of cache partitions is proposed. The results show that by simply assigning tasks that shared cache partitions to the same processor, it is possible to reduce the contention for shared cache lines and to provideHRT guarantees. Finally, a two-phase multicore scheduler that provides HRT and soft real-time (SRT) guarantees is proposed. It is shown that by using information from hardware performance counters at run-time, the RTOS can detect when best-effort tasks interfere with real-time tasks in the shared cache. Then, the RTOS can prevent best effort tasks from interfering with real-time tasks. The results also show that the assignment of exclusive partitions to HRT tasks together with the two-phase multicore scheduler provides HRT and SRT guarantees, even when best-effort tasks share partitions with real-time tasks.
|
52 |
Implementação de um sistema operacional compatível com a especificação ARINC 653Arcaro, Luís Fernando January 2015 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia de Automação e Sistemas, Florianópolis, 2015 / Made available in DSpace on 2015-06-02T04:10:14Z (GMT). No. of bitstreams: 1
333796.pdf: 3550462 bytes, checksum: 7eaaf170fea7fb722e02d0801299ad1b (MD5)
Previous issue date: 2015 / Sistemas de Tempo Real (STRs) são sistemas computacionais que estão submetidos, alem de a requisitos lógicos, a requisitos de natureza temporal. A especificação ARINC 653 descreve a interface funcional a ser oferecida ao software de aplicação e os requisitos temporais a serem atendidos por Sistemas Operacionais (SOs) sobre os quais são executados STRs aviônicos, ou seja, aplicações relacionadas aos sistemas eletrônicos empregados em aeronaves. Uma das principais definições dessa especificação e a utilização de partições com isolamento temporal e espacial, permitindo a execução de múltiplas aplicações com diferentes objetivos e criticalidades numa mesma plataforma de hardware, e garantindo, ainda, que eventuais falhas ocorridas em uma partição não afetem a execução das demais. Este trabalho descreve a implementação de um SO compatível com a especificação ARINC 653 destinado ao treinamento de profissionais e a experimentação de novas aplicações aviônicas, não tendo por objetivo, portanto, a certificação para operação em voo, executado sobre a plataforma de hardware comercialmente conhecida como BeagleBone. Foi desenvolvido ainda um conjunto de ferramentas de configuração destinadas a validação de arquivos de configuração no padrão exigido pela ARINC 653 e a geração de modelos de aplicação para execução no SO. O atendimento as exigências da ARINC 653 pelo SO foi evidenciado através de um conjunto de casos de teste, que servem também como exemplos de utilização e auxiliam, ainda, no processo demigração do SO a outras plataformas.<br> / Abstract: Real-Time Systems (RTSs) are computer systems that are subject to, in addition to logical requirements, temporal requirements. The ARINC 653 specication describes the functional interface that must be oered to the application software and the time requirements that must be met by Operating Systems (OSs) on which avionics RTSs are executed, i.e. applications related to electronic systems used on aircrafts. One of the key definitions of this specification is the use of temporally and spatially isolated partitions, allowing the execution of multiple applications with different objectives and criticality levels onthe same hardware platform, and also ensuring that any failures inone partition do not affect the execution of the others. This work describes the implementation of an ARINC 653 compatible OS aimed for professionals training and test of new avionics applications, and thus does not aim certification for in-ight operation, which is executed on the hardware platform commercially known as BeagleBone. We also developed a set of configuration tools for the validation of ARINC 653 standard configuration files and the generation of application templates to be run in the OS. The compliance of the OS with the ARINC 653 requirements is evidenced through a set of test cases, which also serve as examples of use and are useful in the process of migration of the OS to other platforms.
|
53 |
Sistema embarcado para aumento da autonomia de perfilômetro a laser aplicável ao interior de dutosBorba, Vitor Farias de January 2015 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Mecânica, Florianópolis, 2015. / Made available in DSpace on 2015-09-29T04:06:45Z (GMT). No. of bitstreams: 1
334696.pdf: 3964704 bytes, checksum: 43c28771ec861e119b92c4c72ab804d4 (MD5)
Previous issue date: 2015 / É comum na indústria petrolífera a utilização de dutos para transporte de óleo e gás. Devido ao ambiente hostil em que operam, esses dutos estão sujeitos a avarias como corrosão e amassamentos. Com o objetivo de auxiliar na identificação dessas avarias, foi desenvolvido em trabalhos anteriores um sistema de perfilômetria óptica que utiliza a triangulação cônica a laser e processamento de imagens para medir o perfil geométrico interno de dutos. Esse sistema de medição utiliza cabos para conectar o sensor a um computador, que processa as imagens e armazena os resultados das medições. A utilização de cabos restringe a autonomia de medição para aproximadamente cinquenta metros devido à perda de qualidade do sinal. Essa restrição limita o uso do perfilômetro a pequenos trechos do duto. Este trabalho avalia potenciais alternativas para o aumento da autonomia do perfilômetro, visando a inspeção de dutos de comprimento superior a novecentos metros. A pesquisa realizada indicou o uso de sistemas embarcados como a alternativa mais viável sem que haja o comprometimento das características metrológicas e funcionais do perfilômetro. Uma comparação entre as arquiteturas de sistemas embarcados revelou as possibilidades de (a) realizar o simples armazenamento das imagens, ou (b) o processamento embarcado através de soluções hibridas. As soluções foram desenvolvidas e analisadas experimentalmente para avaliar as características de consumo e desempenho. Esses testes apontaram o uso do sistema embarcado baseado na arquitetura CPU+GPU para processamento como a alternativa mais viável. Por fim, foram destacadas as modificações necessárias a esse sistema para futura implementação no perfilômetro a fim de dotá-lo da autonomia necessária para a aplicação em dutos de comprimento superior a novecentos metros.<br> / Abstract : The use of pipelines for oil and gas transportation is a common industry practice. Due to the hostile environment where they operate, these pipelines are subject to damages such as, corrosion and dents. An optical profilometer, which uses the conical triangulation combined with image processing, was previously developed to assess and quantify the amount of damages by measuring the inner geometry of pipelines. This measurement system uses cables to connect the sensor to a computer, which process the images, compute and saves the results. The use of cables restricts the measurement autonomy to fifty meters due to technical limitations. This restriction limits the use of the profilometer to small portions of the pipeline. This work evaluate potential alternatives to increase the profilometer autonomy, aiming the inspection of pipelines above nine hundred meters. The developed research pointed the use of embedded systems as the most viable alternative without degradation of the metrological and functional characteristics of the profilometer. A comparison between the embedded systems architectures revealed two possibilities: (a) save the images for later processing, or (b) embedded processing these images using hybrid devices. The solutions where developed and experimentally analyzed to evaluate the power consumption and performance characteristics. These tests indicated the use of an embedded system based on CPU+GPU architecture as the most viable alternative. To finalize, the necessary modifications for this system to future implantation in the profilometer where pointed.
|
54 |
Desenvolvimento de um sistema de auxílio auditivo para inclusão de pacientesWeirich, Romano Sabetzki January 2017 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Elétrica, Florianópolis, 2017. / Made available in DSpace on 2017-11-28T03:23:35Z (GMT). No. of bitstreams: 1
348693.pdf: 26285766 bytes, checksum: a3ec105d1ecc1cd5109df9338829e684 (MD5)
Previous issue date: 2017 / A perda auditiva afeta cerca de 360 milhões de pessoas mundialmente. Ela atinge todas as faixas etárias e figura entre as doenças mais onerosas à sociedade. No Brasil, estima-se que 5% da população apresente algum grau de surdez. Com a crescente exposição a níveis de ruído cada vez maiores, a ocorrência de casos de perda auditiva severa vem aumentando em todas as idades. Em crianças, a perda auditiva está vinculada a dificuldades de aprendizado, e em adultos, a problemas ligados às atividades de trabalho e convívio; e em ambos os casos, percebe-se uma influência negativa da perda de sensibilidade auditiva na interação dos afetados em eventos sociais, tais como visitas guiadas e o ato de assistir televisão em grupo, levando ao isolamento e à diminuição da qualidade de vida. O efeito é agravado quando as atividades são realizadas em ambientes ruidosos, que incluem salas de aula, palestras e reuniões. As soluções comerciais disponíveis no mercado e voltadas para este problema não são compatíveis com todas as situações cotidianas vivenciadas pelos usuários. Os produtos dedicados ao uso com dispositivos multimídia não são apropriados nas situações em que o uso envolve a utilização de um microfone por parte do interlocutor, e vice-versa. Nesse contexto, a WaveTech - Soluções Tecnológicas, em parceria com a Acústica Amplivox, propõe o desenvolvimento de um sistema de auxílio auditivo voltado à ambas situações descritas anteriormente. Este documento descreve detalhadamente o fluxo de projeto desde a identificação das dificuldades enfrentadas pelos pacientes até a modelagem e implementação dos componentes de hardware e software embarcado que compõem o sistema. A solução proposta é formada por duas unidades: uma transmissora, que vai conectada à fonte sonora, e uma receptora, que disponibiliza para o usuário o som compreensível e livre de ruído. A transmissão de áudio entre as duas unidades é estabelecida através de um protocolo de comunicação sem fio adequado para todos os casos previstos. Através da realização de uma série de testes, concluiu-se que o protótipo desenvolvido atende a todos os requisitos identificados no início das atividades e que é superior aos concorrentes em termos de funcionalidades e custo. / Abstract : Hearing loss affects around 360 million people worldwide. It makes no distinction between age groups and is among the most economically costly diseases to society. Only in Brazil, it is estimated that 5% of the population presents some degree of hearing impairment. The increasing exposure to high noise levels has increased the occurrence of severe hearing loss at all ages. In children, hearing loss is commonly linked to learning difficulties, and in adults, to social activities and work related problems. In both cases, a negative influence of the auditory sensitivity loss is observed in the interaction of the affected subject in social events such as guided visits and watching television in group, leading to isolation and to an overall decrease in quality of life. The effect is even worse when the activities are conducted in noisy environments, which include classrooms, lectures, and meetings. There are several commercially available products which claim they can solve this problem, but none of them is fully compatible with all daily situations experienced by the targeted users. For instance, products aiming at situations involving multimedia devices are not suitable when the sound source is a speaker using a microphone, and vice versa. In this context, WaveTech Soluções Tecnológicas, a Florianópolis based company has partnered with market leader Acústica Amplivox to propose a hearing aid device focused specifically on the aforementioned problem. This document describes in detail the complete project flow, starting at the identification of the difficulties faced by the patients, and passing through the whole modelling and implementation stages of the embedded hardware and software components comprising the system. The final solution consists of two units: a transmitter, which is connected to a generic sound source, and a receiver, which provides the user with a high quality, noise-free version of the original audio. The communication between the two units is established through a wireless protocol suitable for all cases discussed. A series of functional and performance tests determined that the developed prototype meets all the initial requirements and that it surpasses the competitors in terms of functionality and cost.
|
55 |
Avaliação do uso de agentes no desenvolvimento de aplicações com veículos aéreos não-tripuladosSantos, Fernando Rodrigues January 2015 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia de Automação e Sistemas, Florianópolis, 2015. / Made available in DSpace on 2016-02-09T03:07:41Z (GMT). No. of bitstreams: 1
337435.pdf: 2132858 bytes, checksum: b0132fcf7ffec1eebcd5372ad488fa63 (MD5)
Previous issue date: 2015 / O uso de agentes em aplicações com Veículos Aéreos Não-Tripulados (VANTs) tem sido explorado nos últimos anos, principalmente como alternativa para dotar o veículo de autonomia na realização de suas missões. Este trabalho tem como objetivo desenvolver um modelo de comportamento autônomo para um VANT com o uso de um agente com arquitetura BDI, explorando sua capacidade de reagir rapidamente a mudanças em seu ambiente e de ter objetivos de longo prazo a serem cumpridos até se finalizar uma dada missão. O trabalho também busca avaliar a implementação do agente na plataforma de sistema embarcado de um VANT real, a aeronave do projeto ProVant, além de apresentar uma análise e comparação do sistema proposto, baseado em lógica de predicados, com uma abordagem usual empregando uma programação imperativa, organizada em uma sequencia de comandos e ações.<br> / Abstract : The use of agents in applications with Unmanned Aerial Vehicles (UAVs) has been explored in recent years, mainly as an alternative to provide autonomy to the vehicle in carrying out their missions.This study aims to develop and evaluate a model for a UAV with the use of an agent with BDI architecture, exploring its ability to reactquickly to changes in the environment and while still having goals tobe accomplished even finish a given mission. The proposed model was implemented and embedded in a real UAV system and then compared against a usual approach employing an imperative programming.
|
56 |
AuteteseSoldi, Rita de Cássia Cazu January 2015 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2015. / Made available in DSpace on 2016-04-19T04:22:16Z (GMT). No. of bitstreams: 1
338165.pdf: 3669449 bytes, checksum: 28c27ca451ff6f6183a9f6d02036d480 (MD5)
Previous issue date: 2015 / O número de sistemas embarcados já supera a quantidade de habitantes do nosso planeta e este número continua crescendo em ritmo acelerado. Ademais, o projeto de hardware e software está cada vez mais sofisticado e com requisitos mais rígidos para atender o exigente mercado. As consequências desta sofisticação afetam muito o desenvolvimento de software embarcado. Mesmo representando uma parcela minoritária do sistema embarcado, o software tornou-se responsável por cerca de 80% dos erros encontrados nos sistemas. Teste e depuração de software não é trivial, uma vez que é necessária a inspeção de todo o código fonte para se certificar de que o comportamento não difere das expectativas. Realizar essas atividades em sistemas embarcados é ainda mais desafiador, uma vez que os desenvolvedores precisam descobrir como otimizar o uso dos recursos, pois o teste em si tende a competir com o aplicativo sob teste pelos escassos recursos do sistema. Esta dissertação apresenta uma maneira de ajudar os desenvolvedores no processo de testar e depurar sistemas embarcados. Ela apresenta a Automação da execução de testes de software embarcado (AUTETESE), um ambiente que executa os casos de teste e emula as possíveis configurações do sistema, a fim de tentar encontrar erros na aplicação. Uma vez detectado um comportamento não especificado, o ambiente automaticamente executa a compilação, a depuração e a emulação de acordo com um arquivo de especificação. O AUTETESE é avaliado de maneira quantitativa para os critérios de tentativas realizadas versus a configuração de granularidade, o consumo de tempo para realizar o teste e depuração e o consumo de memória para suportar a execução de testes. Adicionalmente, o ambiente é avaliado de maneira qualitativa em um comparativo com ferramentas e técnicas correlatas. Os resultados mostraram que a estratégia proposta resultou em um ambiente flexível e com grande cobertura dos desafios propostos para atingir a automação de testes de software.<br> / Abstract : The number of embedded systems already exceed the number of inhabitants of this planet and this number continues to grow. Moreover, the design of hardware and software are increasingly sophisticated and more stringent requirements to meet the demanding market. The consequences of this sophistication greatly affect the development of the embedded software development. Even representing a minority of the embedded system, the software became responsible for about 80% of the errors found in the systems.Software testing and debugging is not trivial, once it needs a inspection of the entire source code to make sure that the behavior does not differ from expectations. Perform these activities in embedded systems is even more challenging, since developers need to figure out how to optimize the use of resources because the test itself tends to compete with the application under test for scarce system resources. This work presents a way to help the developers in the process of testing and debugging embedded systems. It features the automatic execution of embedded software testing (AUTETESE), an environment that runs the test cases and emulates the possible system settings in order to try to find errors in the application. Once detected an unspecified performance, the environment automatically performs compilation, emulation and debugging accordingly to the specification file.AUTETESE is evaluated quantitatively for the criteria of attempts versus granularity configuration, the time consumption for testing and debugging, and memory consumption to support the execution of tests. In addition, the environment is evaluated in a qualitative manner in comparison with related tools and techniques. Results show that the proposed strategy resulted in a flexible environment with high coverage to meet challenges posed by automation of software testing.
|
57 |
A framework for predictable hardware/software component reconfigurationReis, João Gabriel January 2016 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Elétrica, Florianópolis, 2016. / Made available in DSpace on 2017-02-28T04:10:39Z (GMT). No. of bitstreams: 1
344671.pdf: 991636 bytes, checksum: 2e9b1460f30d38b6d198a17b08fe6d42 (MD5)
Previous issue date: 2016 / Abstract : Rigid partitions of components or modules in a hardware/software co-design flow can lead to suboptimal choices in embedded systems with dynamic or unpredictable runtime requirements. Field-Programmable Gate Array (FPGA) reconfiguration can help systems cope with dynamic non-functional requirements such as performance and power, hardware defects due to Negative-Bias Temperature Instability (NBTI) and Process, Voltage and Temperature (PVT) variations, or application requirements unforeseen at design time. This work proposes a framework for reconfigurable components whereby the reconfiguration of a component implementation is performed transparently without user intervention. The reconfiguration process is confined in system?s idle time without interfering with or being interfered by other activities occurring in the system or even peripherals performing I/O. For components with multiple implementations, our approach opportunistically and speculatively monitors system load and performance parameters to check when the reconfiguration can start. The framework differs from previous approaches in its syntax and semantics for reconfigurable components which are preserved across the multiple implementations in different substrates and the reconfiguration process that can be split into multiple steps. To quantify the impact of I/O interference on FPGA reconfiguration, we measured the execution time when loading bitstreams containing hardware components implementations from memory to the FPGA reconfiguration interface with multiple peripherals performing I/O in parallel. Moreover, a Private Automatic Branch Exchange (PABX) case study investigated the deployment of reconfigurable components in a scenario with timing constraints. A reconfiguration policy for the PABX components was proposed to deal with the unpredictable number of calls it receives by using reconfigurable hardware resources without degrading voice quality due to reconfiguration. Furthermore, we explored trade-offs between power consumption, execution time, and accuracy in a set of reconfigurable mathematical components.<br> / O particionamento estático de componentes ou módulos ao realizar o co-design hardware/software pode levar a escolhas insatisfatórias em sistemas embarcados com requisitos dinâmicos e imprevisíveis durante tempo de execução. A reconfiguração dinâmica de Field-Programmable Gate Arrays {FPGAs) pode ajudar sistemas a se adaptar em requisitos dinâmicos e não funcionais como desempenho e consumo de energia, defeitos de hardware devido ao fenômeno Negative-Bias Temperature Instability (NBTI) e variações de Processo, Tensão e Temperatura ou ainda requisitos da aplicação que não foram levados em consideração em tempo de projeto. Esse trabalho propõe um framework para componentes reconfiguráveis onde a reconfiguração da implementação de um componente é realizada de maneira transparente e sem a intervenção do usuário. O processo de reconfiguração é confinado no tempo ocioso do sistema sem interferir ou sofrer interferência de outras atividades ou mesmo periféricos realizando operações de entrada/saída. Para componentes com múltiplas implementações, nossa abordagem monitora de maneira especulativa a carga do sistema e contadores de desempenho para escolher o momento em que a reconfiguração deve se iniciar. O framework se difere de trabalhos anteriores devido à sintaxe e semântica para componentes reconfiguráveis que são preservadas nas múltiplas implementações e em diferentes substratos e no processo de reconfiguração que pode ser dividido em diversos passos. Para quantificar o impacto da interferência de entrada/saída na reconfiguração de FPGAs, foi medido o tempo de execução para carregar bitstreams contendo implementações de componentes em hardware da memória para a interface de reconfiguração de FPGA com diversos periféricos realizando operações de entrada/saída em paralelo. Além disso, o estudo de caso de um Private Automatic Branch Exchange (PABX) investigou o uso de componentes reconfiguráveis num cenário com requisitos temporais. Uma política de reconfiguração para os componentes do (PABX) foi proposta para lidar o número imprevisível de chamadas recebidas através de recursos reconfiguráveis sem degradar a qualidade da reprodução da voz devido à reconfiguração. Foram também explorados os trade-offs entre consumo de energia, tempo de execução e exatidão dos resultados num conjunto de componentes implementando operações matemáticas.
|
58 |
Modelo de programação e suporte de execução para aplicações multitarefa em processadores DSP de pequeno porteLinhares, Marcos Vinicius January 2004 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico. Programa de Pós-Graduação em Engenharia Elétrica. / Made available in DSpace on 2012-10-21T21:48:19Z (GMT). No. of bitstreams: 1
206484.pdf: 670423 bytes, checksum: 2758a5e8aab1c87fcc900969a38afd76 (MD5) / Muitas das aplicações de controle com restrições detempo são implementadas pela codifi- cação deprogramas complexos em linguagem assembly, programando timers, manipulando em baixo nível dispositivos periféricos, tarefas e prioridades de interrupção. A maior conseqüência desta abordagem é que o software de controle é produzido por técnicas ad hoc que podem apresentar baixa confiabilidade e alto custo. Para o projeto e implementação de um sistema de controle de tempo real embutido se utiliza,basicamente, de dois tipos de pro- fissionais, o engenheiro de controle e o engenheiro de software, que são especialistas cada um em sua área e que usam suas próprias ferramentas. Para tanto é de extrema valia que ambos troquem informações utilizando uma mesma linguagem. A ferramenta de projeto do engenheiro de controle são os diagramas de blocos funcionais que, mapeados em diagramas de componentes, fornecem ao engenheiro de software as informações necessárias. A simples utilização de blocos funcionais gera um sistema monotarefa, mas pressões do mercado exigem equipamentos que ofereçam maiores funcionalidades a seus clientes e isto representa mais tarefas a embutir no sistema. O modelo monotarefa começa a ser insuficiente, neste caso, para manter as restrições temporais no sistema final. Este trabalho descreveu uma proposta que visa melhorar o processo de construção (projeto e implementação) de sistemas embutidos utilizando o modelo multitarefa. Para tanto, o trabalho consistiu, principalmente, da proposta de um framework multitarefa e o desenvolvimento de um núcleo operacional de tempo real para dar suporte ao framework desenvolvido. Espera-se com este trabalho contribuir para a melhoria dos processos de desenvolvimento de software para sistemas embutidos no contexto do controle e automação.
|
59 |
Proposta de mecanismo de segurança para autenticação e permissão no sistema operacional AuroraMonteiro, Emiliano Soares January 2002 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico. Programa de Pós-Graduação em Ciência da Computação. / Made available in DSpace on 2012-10-19T22:37:29Z (GMT). No. of bitstreams: 0Bitstream added on 2014-09-26T01:16:23Z : No. of bitstreams: 1
189813.pdf: 2078931 bytes, checksum: 4c7815faa27f2922ce87fe0c1ca0f03e (MD5) / Este trabalho está inserido no contexto do Sistema Operacional Aurora, e visa solucionar problemas de segurança associados a ativação e instanciação de objetos. A solução apresentada observa a arquitetura reflexiva do Aurora, sendo implementado como um meta-nível de modo que os aspectos de segurança sobre objetos são mantidos através de mecanismos de reflexão computacional. O objetivo deste trabalho foi o desenvolvimento de classes para tratar a segurança no sistema operacional Aurora, principalmente autenticação e permissão. Foram elaboradas classes e mecanismos de testes das mesmas em laboratório, as quais foram testadas junto com protótipos de outras classes do sistema Aurora que ainda estão em desenvolvimento. Um estudo sobre segurança nos principais sistemas operacionais encontrados hoje, também está aqui descrito, enfocando principalmente dois aspectos, autenticação e controle de permissão, este estudo permite a compreensão de como os dois principais modelos de segurança adotados em sistemas operacionais modernos operam, outros aspectos relativos à segurança no sistema operacional Aurora é tratada em trabalhos futuros.
|
60 |
Um servidor de arquivos para um cluster de computadoresPlentz, Patrícia Della Méa January 2001 (has links)
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico. Programa de Pós -Graduação em Computação. / Made available in DSpace on 2012-10-18T08:56:44Z (GMT). No. of bitstreams: 0Bitstream added on 2014-09-25T19:48:05Z : No. of bitstreams: 1
181838.pdf: 2244045 bytes, checksum: 80fa311ad7dc77c34758a496e5b82160 (MD5) / O objetivo deste trabalho é o de propor um servidor de arquivos para um cluster de computadores derivado do multicomputador Crux [COR99]. Este cluster oferece um ambiente para a execução de programas paralelos organizados como redes de processos comunicantes. A arquitetura do cluster é composta de um determinado número de nós de trabalho e um nó de controle. Os nós de trabalho são interligados por uma rede de interconexão dinâmica reconfigurável conforme a demanda dos programas paralelos. Esse servidor é implementado com processos regulares do sistema operacional Linux, executando em um único nó de trabalho. Processos clientes, executando em outros nós de trabalho, comunicam-se com o processo servidor de arquivos pela troca de mensagens através da rede de interconexão dinâmica.
|
Page generated in 0.0878 seconds