• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 195
  • 65
  • 55
  • 16
  • 16
  • 8
  • 6
  • 4
  • 4
  • 4
  • 4
  • 4
  • 4
  • 4
  • 2
  • Tagged with
  • 440
  • 440
  • 236
  • 230
  • 105
  • 83
  • 77
  • 72
  • 62
  • 56
  • 54
  • 54
  • 51
  • 49
  • 48
  • 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.
371

Critérios para adoção e seleção de sistemas operacionais embarcados

Moroz, Maiko Rossano 30 November 2011 (has links)
CNPq / Sistemas embarcados são sistemas computacionais projetados para aplicações específicas, os quais estão presentes em praticamente todos os dispositivos eletrônicos atuais. A utilização de um sistema operacional (SO) é uma maneira de simplificar o desenvolvimento de software, livrando os programadores do gerenciamento do hardware de baixo nível e fornecendo uma interface de programação simples para tarefas que ocorrem com frequência. A alta complexidade dos computadores pessoais atuais torna a utilização de um SO indispensável. Por outro lado, sistemas embarcados são arquiteturas limitadas, geralmente com muitas restrições de custo e consumo. Devido às demandas adicionais impostas por um SO, os desenvolvedores de sistemas embarcados enfrentam a crítica decisão quanto à adoção ou não de um SO. Nesta dissertação, apresenta-se uma série de critérios a fim de auxiliar os projetistas de sistemas embarcados na decisão quanto ao uso ou não de um SO. Além disso, outros critérios são apresentados com o intuito de guiar a seleção do SO mais adequado às características do projeto. Adicionalmente, escolheu-se 15 sistemas operacionais para serem analisados de acordo com os critérios apresentados, os quais podem ser utilizados como base para o processo de seleção de um SO. Adicionalmente, a fim de avaliar o impacto da adoção de um SO em um projeto embarcado, apresenta-se um estudo de caso no qual uma aplicação modelo (uma estação meteorológica embarcada) foi desenvolvida em três diferentes cenários: sem um SO, usando um SO de tempo real (µC/OS-II), e usando um SO de propósito geral (uClinux). Uma FPGA e um SoPC foram utilizados para obter uma plataforma flexível de hardware apta para acomodar as três configurações. A adoção de um SO proporcionou uma redução de até 48% no tempo de desenvolvimento; em contrapartida, isto aumentou os requisitos de memória de programa em pelo menos 71%. / An embedded system (ES) is a computing system designed for a specific purpose, present essentially in every electronic device. The use of an operating system (OS) is advocated as a means to simplify software development, freeing programmers from managing low-level hardware and providing a simpler programming interface for common tasks. The high complexity of modern desktop computers makes an OS indispensable; embedded systems, on the other hand, are limited architectures, usually severely cost- and power-constrained. Because of the additional demands imposed by an OS, embedded developers are faced with the crucial decision of whether to adopt an OS or not. In this work, we introduce a set of criteria to help determine whether an OS should be adopted in an embedded design. We then go further and establish a series of rules to help decide which OS to pick, if one should be used. In addition, we present a case study in which a sample application (an embedded weather station) was developed under three different scenarios: without any OS, using the µC/OS-II real-time OS, and using the uClinux general-purpose OS. An FPGA and a SoPC were used to provide a flexible hardware platform able to accommodate all three configurations. The adoption of an OS provided a reduction of up to 48% in development time; on the other hand, it increased program memory requirements in at least 71%.
372

PM-MDA: um método para o desenvolvimento de modelos de plataforma no contexto da MDA

Soares, Inali Wisniewski 07 December 2012 (has links)
Esta tese propõe um método denominado PM-MDA para o desenvolvimento de Modelos de Plataforma (Platform Model - PM) no contexto da abordagem Model Driven Architecture (MDA). O método PM-MDA tem como foco o desenvolvimento de projetos de Software embarcado baseados em Sistemas Operacionais em Tempo Real (Real-Time Operating System - RTOS). Adicionalmente, este estudo define um perfil UML 2.0 para modelagem da aplicação e plataforma de software embarcado denominado Profile for modeling Application and Platform of Embedded Software (PROAPES) que é usado no método PM-MDA. Tal perfil define um conjunto de estereótipos para descrever genericamente Modelos de Plataforma e Modelos Independentes de Plataforma (Platform Independent Model - PIM). Além disso, são definidas extensões desse perfil, tal como o perfil PROAPESX que permite a modelagem de PMs para versões do RTOS X Real-Time Kernel e hardware associados. Além disso, o perfil PROAPES possibilita vincular um PIM a um PM, permitindo que esses modelos sejam inseridos como atributos de entrada em uma Transformação de Modelos. No contexto da MDA, esse perfil constitui-se em um metamodelo de plataforma (um metamodelo de uma família de plataformas similares) para a construção de modelos de plataforma. Desse modo, um PM é usado como parte fundamental para o desenvolvimento de software embarcado na abordagem MDA, fornecendo meios de obter independência de plataforma. Em abordagens atuais de MDA, as transformações de modelos empregam implicitamente os modelos de plataforma. Como os interesses referentes à plataforma não são separados dos interesses referentes às transformações de modelos, para cada plataforma requerida deve existir uma ou mais transformações de modelos correspondentes que são configuradas especificamente para aquela plataforma. O resultado são processos de transformações de modelos difíceis de serem automatizados. No domínio de sistemas embarcados, o uso de MDA é ainda mais importante devido à heterogeneidade de plataformas e à complexidade destes sistemas. O método PM-MDA, que faz uso do perfil PROAPES, visa sistematizar o processo de criação e disponibilização de modelos de plataforma separados do processo de transformação de modelos, possibilitando a geração de processos de transformações de modelos eficientes e adaptáveis. / This thesis proposes a method called PM-MDA for the development of Platform Models in the context of Model Driven Architecture (MDA). The PM-MDA method focuses on the development of embedded software projects based on Real-Time Operating Systems (RTOS). Additionally, this study defines a UML 2.0 Profile for Modeling Application and Platform of Embedded Software (PROAPES), which is used in the PM-MDA method. Such profile defines a set of stereotypes to generically describe Platform Models (PMs) and Platform Independent Models (PIMs). Further, extensions are defined in this profile, e.g. the PROAPESX profile, allowing the modeling of PMs into versions of the X RTOS Real-Time Kernel and associated hardware. In its turn, the PROAPES profile enables the link of a PIM to a PM, allowing these models to be entered as input attributes in a Model Transformation. In the context of MDA, this profile is a platform metamodel for building PMs, i.e., a metamodel of a family of similar platforms. In this way, a PM is used as a fundamental part in the development of embedded software in the MDA approach by providing means of obtaining platform independence. In current MDA approaches, model transformations implicitly employ PMs. As the concerns regarding the platform are not separated from the concerns related to model transformations, for each required platform there must be one or more corresponding model transformations that are configured specifically for that platform. This results in model transformation processes that are expensive and difficult to be automated. In some application domains such as embedded systems, the use of MDA is more motivating because of the heterogeneity of platforms and the complexity of these systems. The PM-MDA method, which makes use of the PROAPES profile, aims to systematize the process of creating and providing platform models separated from the model transformation process, enabling the generation of efficient and adaptable model transformations.
373

Análise de sistemas operacionais de tempo real para aplicações de robótica e automação / Analysis of real time operating systems for robotics and automation applications

Rafael Vidal Aroca 31 October 2008 (has links)
Este trabalho apresenta um estudo sobre sistemas operacionais de tempo real (RTOS) utilizados na implementação da infraestrutura de controle digital para sistemas mecatrônicos, mas serve também como referência para outros sistemas que possuam restrições de tempo. Além de ter um caráter experimental, onde foram medidos e analisados dados como o pior tempo de resposta dos sistemas e a latência para tratamento de interrupções, este trabalho de pesquisa ainda contempla a implementação e uso de RTOS em situações práticas, bem como contempla a construção de uma plataforma geral de pesquisa que servirá de base para futuros trabalhos no laboratório de mecatrônica. Os sistemas analisados neste trabalho foram o VxWorks, QNX, Linux, RTAI, Windows XP, Windows CE e \'mü\'C/OS-II. Outro produto gerado durante este trabalho foi um Live CD para auxiliar na implementação e ensino de conceitos e sistemas de tempo real. / This work presents a study about real time operating systems (RTOS) that are utilized as infrastructure to create digital control systems for mechatronics systems, and also for systems that have critical time constraints. Parameters like worst case response time and interrupt latency were measured for each operating system. This research project also covers the implementation and use of RTOS in practical situations. A general research platform for robotics and real time research was also developed and will be used for future works in the Mechatronics Laboratory. The tested systems were VxWorks, QNX, Linux, RTAI, Windows XP, Windows CE and \'mü\'C/OS-II. Another product released during this work was a Live CD to aid the implementation and teaching of real time systems and concepts.
374

Modelos e algoritmos de cabeamento de redes telefonicas / Models and algorithms for the phone network cabling problem

Ferber, Daniel Felix 08 September 2007 (has links)
Orientador: Arnaldo Vieira Moura / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-09T20:48:39Z (GMT). No. of bitstreams: 1 Ferber_DanielFelix_M.pdf: 2571168 bytes, checksum: 373e2b3bb3f1ca3735beb4c4303dc5d9 (MD5) Previous issue date: 2007 / Resumo: O principal objetivo deste trabalho é a elaboração de heurísticas para auxiliar no projeto de cabeamento de redes telefônicas. O cabeamento será tratado desde os armários de distribuição até as caixas terminais. O auxílio de uma ferramenta computacional especializada no projeto de novas redes telefônicas abre caminhos para a minimização de custos e também reduz sensivelmente o tempo de planejamento. Inicialmente, estuda-se o problema para se obter uma especificação minuciosa, acompanhada de um modelo matemático. Com estas informações, desenvolve-se diferentes estratégias para algoritmos baseados na heurística GRASP, e compara-se os resultados experimentais obtidos / Abstract: The main goal of these studies is the design of heuristics to support the planning of wire cabling on a phone network. The cabling will be handled from the central distribution point to terminal boxes. The assistance of a computational tool specialized in the design of phone networks raises new opportunities for cost reduction and decreases considerably the time spent designing the network. The problem is first studied in order to achieve a detailed specification with a mathematical model. Based on this information, several different strategies are laid out based on a heuristic called GRASP and the experimental results are compared. / Mestrado / Otimização Combinatoria / Mestre em Computação
375

Detecção e recuperação de intrusão com uso de controle de versão / Intrusion detection and recovery with revision control systems

Cavalcante, Gabriel Dieterich 05 May 2010 (has links)
Orientador: Paulo Lício de Geus / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-16T05:27:31Z (GMT). No. of bitstreams: 1 Cavalcante_GabrielDieterich_M.pdf: 3073328 bytes, checksum: aeb145421a7f9c0c3d3ac872eb9ac054 (MD5) Previous issue date: 2010 / Resumo: Existe uma grande quantidade de configurações presentes em sistemas atuais e gerir essas configurações é um trabalho árduo para qualquer administrador de sistema. Inúmeras configurações podem ser definidas para uma só máquina e as combinações entre elas implicam de forma significativa no seu desempenho. A partir do momento que um sistema em pleno funcionamento pára de funcionar, algo em sua estrutura pode ter mudado. Este cenário é comum no processo de desenvolvimento de software onde o código fonte pode deixar de compilar ou ainda uma funcionalidade pode se perder. Controladores de versão são usados para reverter o estado do código para uma data anterior, solucionando o problema. Verificadores de Integridade são utilizados para detectar estas mudanças, porém não possuem mecanismos específicos para recuperação. Este estudo propõe e implementa uma arquitetura integrada que combina verificação de integridade e mecanismos de recuperação. Foram executados testes para determinar a sobrecarga total deste método, além de estudos de caso para verificar a sua eficiência de recuperação / Abstract: Current computer systems have a huge number of configurations that are hard to manage. The combinations of system configurations can impact on performance and behavior. From the moment that a system stops working correctly it is remarkable that something has changed. That is in common in software development, where changes made by the programmer may result in some features no longer working or the project not compiling anymore. Revision control systems can recover a previous state of the source code through revision mechanisms. Integrity checking is used to catch file modifications, however this technique does nothing toward recovering those files. This study proposes and implements an integrated architecture that combines integrity checking and restoring mechanisms. Tests were executed in order to measure the load imposed by the solution. In addition, analysis of three case studies shows the efficiency of the adopted solution / Mestrado / Segurança de Computadores
376

Um middleware para execução de processos estruturados em grades computacionais / A middleware for execution of structured processes in computer grids

Cicerre, Fábio Rodrigo de Lima 12 July 2007 (has links)
Orientadores: Luiz Eduardo Buzato, Edmundo Roberto Mauro Madeira / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-16T20:16:50Z (GMT). No. of bitstreams: 1 Cicerre_FabioRodrigodeLima_D.pdf: 1417286 bytes, checksum: 642d37f1cb522ec4a356bbb4e9b55b96 (MD5) Previous issue date: 2010 / Resumo: O conceito de grade surgiu com a necessidade crescente de se aproveitar recursos computacionais disponíveis em uma ou mais organizações para resolver problemas que exigem compartilhamento de dados e um grande poder de processamento. Uma grade computacional tem como objetivo principal permitir a execução distribuída e paralela de tarefas em recursos compartilhados. Uma grade é constituída de infra-estrutura física, composta de uma ou mais redes autônomas de computadores, e de um sistema de suporte (middleware), que provê serviços de gerenciamento de informações sobre os recursos da grade, controle de acesso e execução de tarefas sobre esse recursos e mecanismos de comunicação. Atualmente existem diversos sistemas que suportam a execução de tarefas independentes em uma grade computacional, mas poucos consideram a execução de processos de workflow, que permitem a definição de dependência explícita de dados e controle entre tarefas, o que impede um melhor aproveitamento de recursos, escalabilidade, desempenho de execução e recuperação automática de processos com manutenção de consistência. O sistema Xavantes, proposto e descrito nesse trabalho, procura suprir essas deficiências, tendo como principal objetivo suportar a execução distribuída de processos de workflow em máquinas heterogêneas, em uma ou mais organizações autônomas e dinâmicas, provendo um middleware que forneça uma melhor escalabilidade, desempenho e confiabilidade para a execução de aplicações em grades computacionais / Abstract: The grid concept has emerged from the increasing necessity of using available computational resources in one or more organizations in order to solve problems that require data sharing and large processing power. The main goal of a computational grid is to allow the distributed and parallel execution of tasks in shared resources. A grid is composed of a physical infra-structure, with one or more autonomous networks of computers, and a middleware, which provides services of information management about the grid resources, access control and tasks execution in these resources and communication mechanisms. Nowadays, there are some systems that support the execution of independent tasks in a computational grid, but only ones consider the execution of workflow processes, which allow the explicit definition of data and control dependencies among tasks, and this restricts a better use of available resources, scalability, execution performance, and automatic recovery of processes with the correct consistency maintenance. The Xavantes system, proposed and described in this work, is designed to reduce these deficiencies, having as its main goal the supports to the distributed execution of workflows in heterogeneous resources of one or more autonomous and dynamic organizations, providing a middleware that delivers a better scalability, performance and reliability to the application execution in grid computing / Doutorado / Sistemas Distribuídos e Redes de Computadores / Doutor em Ciência da Computação
377

Gerente de distribuição do ambiente Xchart em J2EE : sistemas reativos distribuidos na tecnologia Xchart / Distribution manager of the Xchart runtime environment in J2EE

Neves Junior, Carlos 26 September 2005 (has links)
Orientador: Hans Kurt Edmund Liesenberg / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-05T04:28:35Z (GMT). No. of bitstreams: 1 NevesJunior_Carlos_M.pdf: 1230174 bytes, checksum: d583db28ad2a79922429fb1cc37e40ca (MD5) Previous issue date: 2005 / Resumo: O objetivo do presente trabalho é o desenvolvimento do Gerente de Distribuição do ambiente de execução Xchart. O ambiente Xchart, tal como definido na tecnologia de mesmo nome, a Tecnologia Xchart, é composto por um conjunto de ferramentas que apóiam o desenvolvimento de gerenciadores de diálogo de interfaces de usuário. A especificação destes gerenciadores de diálogo é modular e com semântica prevendo a execução concorrente de seus componentes, o que permitiria a distribuição de tais componentes por uma rede de computadores. Xchart também dá nome à linguagem visual empregada na especificação e captura do controle de diálogo destas interfaces, e o fato de Xchart ser uma variante de Statecharts permite que a linguagem seja utilizada em um domínio maior, o domínio de sistemas reativos distribuídos. O Gerente de Distribuição é o componente do sistema de execução de Xchart que fornece os recursos para a execução concorrente e distribuída destes sistemas reativos. O atual trabalho implementa este componente e o sistema de execução de Xchart com tecnologias disponíveis na plataforma Java 2 Platform, Enterprise Edition (J2EE). J2EE é uma especificação de plataforma para desenvolvimento de aplicações corporativas distribuídas que oferece uma série de recursos tais como serviço de nomes e diretório, sistema de entrega de mensagens e mecanismos para controle de concorrência como gerenciamento de transações atômicas. O emprego de J2EE no desenvolvimento do ambiente Xchart visa reduzir o esforço de implementação destas funcionalidades típicas de sistemas distribuídos, além de aproveitar outros benefícios da linguagem JavaTM como a independência de plataforma / Abstract: The aim of the current project is the development of the Distribution Manager of the Xchart runtime environment. The Xchart environment as defined by the Xchart technology is composed by a set of tools that supports the development of dialogue managers of user interfaces. The specification of these dialogue managers is modular and describes the concurrent execution of these components, which allows a potential distribution of these components over a computer network. Xchart is also the name of the visual language used to specify and capture the dialogue control of user interfaces, and since Xchart is a variant of Statecharts, it can be applied in a major domain: the domain of the distributed reactive systems. The Distribution Manager is the component of this Xchart runtime system that provides the resources for concurrent and distributed execution of these reactive systems. The current project implements this component and the Xchart runtime system using available technologies of the Java 2 Platform, Enterprise Edition (J2EE). J2EE is a specification of platform for development of distributed enterprise applications that offers a set of resources like naming and directory services, message service and a concurrency control mechanism based on atomic transaction management. Some of the benefits on using J2EE technology for the development of the Xchart environment are the reduction of the efforts typically required by the implementation of regular distributed systems algorithms and also the platform independence model provided by Java / Mestrado / Sistemas de Computação / Mestre em Ciência da Computação
378

Framework de Kernel para um sistema de segurança imunologica

Carbone, Martim d'Orey Posser de Andrade 23 June 2006 (has links)
Orientador: Paulo Licio de Geus / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-07T00:53:39Z (GMT). No. of bitstreams: 1 Carbone_Martimd'OreyPosserdeAndrade_M.pdf: 997778 bytes, checksum: 199d19777ac058e5c7dcecaa5c43639f (MD5) Previous issue date: 2006 / Resumo: O crescimento alarmante da quantidade e da sofisticação dos ataques aos quais estão sujeitos os sistemas computacionais modernos traz à tona a necessidade por novos sistemas de segurança mais eficientes. Na natureza, há um sistema biológico que realiza esta tarefa com notável eficácia: o sistema imunológico humano. Este sistema é capaz de garantir a sobrevivência de um ser humano por décadas, além de ser capaz de aprender sobre novas ameaças e criar defesas para combatê-Ias. Sua eficácia, somada à semelhança entre o cenário da segurança biológica e o da segurança computacional, motivou a criação do projeto Imuno, cujo objetivo é a construção de um sistema de segurança para computadores baseado nos princípios do sistema imunológico humano. Após o estudo inicial, a modelagem conceitual do sistema e a implementação de protótipos restritos de certas funcionalidades do sistema Imuno, este trabalho tem como objetivo avançar rumo à construção de um sistema de segurança imunológico completo, de escopo geral. Para isso, torna-se necessária a implementação de uma framework em nível de sistema operacional, que suporte as funcionalidades relacionadas à prevenção, detecção e resposta que serão utilizadas por este sistema de segurança. Projetada para o kernel Linux 2.6, esta framework é composta por algumas frameworks pré-existentes, como Lima Security Modules (LSM), Netfilter, Class-based Kernel Resource Management (CKRM), BSD Secure Levels (SEClvl) e UndoFS, ajustadas de acordo com os requisitos levantados para a framework; e somadas a uma nova arquitetura de ganchos multifuncionais. Esta arquitetura expande a infraestrutura nativa dos ganchos LSM, tornando-os flexíveis e genéricos o bastante para serem utilizados com outras funcionalidades de segurança além de controle de acesso, como detecção e resposta, além de poderem ser controlados do espaço de usuário em tempo real. Um protótipo foi implementado para a versão 2.6.12 do Linux e submetido a testes, visando avaliar tanto o impacto de desempenho gerado como também o seu comportamento em um cenário de ataque simulado. Os resultados destes testes são expostos no final deste trabalho, junto com as conclusões gerais sobre o projeto e propostas de extensão / Abstract: The alarming growth in the quantity and the sophistication of the attacks that threaten modem computer systems shows the need for new, more efticient security systems. In nature, there is a biological system that accomplishes this task with a remarkable efticiency: the human immune system. Not only this system is capable of assuring the survival of a human being for decades; it is also capable of learning about new threats and creating defenses to fight them. Its efticiency, combined with the similarity that exists between the biological and the computer security problems, has motivated the creation of the Imuno project, whose goal is the construction of a computer security system based on the principIes of the human immune system. After initial studies, the system's conceptual modeling and the implementation of prototypes of certain Imuno functionalities, this project's goal is to advance towards the construction of a complete, general scope immune security system. In order to accomplish that, the implementation of an operating system leveI framework that supports the prevention, detection and response security functionalities to be used by such a system is necessary. Designed for the 2.6 Linux kernel, this framework is composed of several pre-existing frameworks, such as Linux Security Modules (L8M), Netfilter, Class-based Kernel Resource Management (CKRM), BSD Secure Levels (8EClvl) and UndoFS, adjusted according to the framework requirements; and supplemented by a new multifunctional hook architecture. This architecture expands L8M's native hook infrastructure, making them flexible and generic enough to be used by other security functionalities beyond access control, such as detection and response, and also capable of being controlled from userspace in real-time. A prototype has been implemented for Linux version 2.6.12 and submitted to various tests, aiming to evaluate the performance overhead it creates and its behavior in a simulated attack situation. These tests' results are shown at the end of this document, along with a general conclusion about the project and extension proposals / Mestrado / Mestre em Ciência da Computação
379

Open Source Strategy – The Case of Nokia

Khan, Shamayel January 2010 (has links)
The commercial mobile phone industry is a relatively new one. Starting out in the 1980s, it has proliferated in both numbers and in terms of technology. The last decade saw a sharp increase in both the number of subscribers and the amount of services which was offered by mobile devices. In order to keep up with this fast evolution of the industry, phones have started to get much more complicated and ‘smarter’ due to the software which is used to run these phones. Multi touch screen menus, High Definition video playback, multi megapixel cameras and a plethora of connectivity options are just some of the features a consumer takes for granted in his/her new mobile device. In order to provide these services to the user the software inside the phone has gotten complex to the scale of becoming its own Operating System much akin to the Operating Systems used on personal computers. These mobile operating systems contain millions of lines of software code and cost a lot of money to maintain and develop. Moreover having a popular operating system benefits the organization as it draws in many developers who can write applications which run on this operating system and also develop services which are specific to the operating systems. Having these services generate revenue for the network operators who get to bill the consumers for using the services or for the data which has been transferred to and from these mobile phones via the operator’s network. Nokia’s dominant market share in the smartphone market entails that it holds a near 40% share with its smartphone operating systems. Gradually the company has been moving towards opening up its previously proprietary operating systems to the public in the form of Open Source Software, where everyone is able to view, share, distribute and contribute to the software code. This strategy change has been taking place over the last couple of years and continues under an overall change of direction and focus which is taking place in the company. This thesis work relates as to what exactly is the current placement of Nokia in the economic and mobile devices market and how the company has been adapting to the challenges it has been facing at the hands of both old and new rivals who have been coming with innovative ideas in order to topple over Nokia from its throne of being the biggest mobile phone maker in the world. The thesis first looks at exactly what is Open Source Software. From there it gradually moves to do comparisons between closed and Open Source Software in order to give the reader an idea as to what are the pros and cons of each. In the second half of the thesis a snapshot of the current market situation and competitors is given in order to understand the environment in which Nokia has been working and developing its strategy in. Later on the thesis goes in depth about the decisions, their triggers and their implications with regards to Nokia and the use of Open Source Software as a strategy in this changing environment.
380

Definition and evaluation of spatio-temporal scheduling strategies for 3D multi-core heterogeneous architectures / Définition et évaluation des stratégies d’ordonnancement spatio-temporel pour les architectures 3D multicore hétérogènes

Khuat, Quang Hai 16 March 2015 (has links)
Empilant une couche multiprocesseur (MPSoC) et une couche de FPGA pour former un système sur puce reconfigurable en trois dimension (3DRSoC), est une solution prometteuse donnant un niveau de flexibilité élevé en adaptant l'architecture aux applications visées. Pour une application exécutée sur ce système, l'un des principaux défis vient de la gestion de haut niveau des tâches. Cette gestion est effectuée par le service d'ordonnancement du système d'exploitation et elle doit être en mesure de déterminer, lors de l'exécution de l'application, quelle tâche est exécutée logiciellement et/ou matériellement, quand (dimension temporelle) et sur quelles ressources (dimension spatiale, c'est à dire sur quel processeur ou quelle région du FPGA) pour atteindre la haute performance du système. Dans cette thèse, nous proposons des stratégies d'ordonnancement spatio-temporel pour les architectures 3DRSoCs. La première stratégie décide la nécessité de placer une tâche matérielle et une tâche logicielle en face-à-face afin que le coût de la communication entre tâches soit minimisé. La deuxième stratégie vise à minimiser le temps d'exécution globale de l'application. Cette stratégie exploits la présence de processeurs de la couche MPSoC afin d'anticiper, en temps-réel, l'exécution d'une tâche logicielle quand sa version matérielle ne peut pas être allouée sur le FPGA. Ensuite, un outil de simulation graphique a été développé pour vérifier le bon fonctionnement des stratégies développées et aussi nous permettre de produire des résultats. / Stacking a multiprocessor (MPSoC) layer and a FPGA layer to form a 3D Reconfigurable System-on- Chip (3DRSoC) is a promising solution giving a high flexibility level in adapting the architecture to the targeted application. For an application defined as a graph of parallel tasks running on the 3DRSoC system, one of the main challenges comes from the high-level management of tasks. This management is done by the scheduling service of the Operating System and it must be able to determine, on the fly, what task should be run in software and/or hardware, when (temporal dimension) and where (spatial dimension, i.e. on what processor or what area of the FPGA) in order to achieve high performance of the system. In this thesis, we propose online spatio-temporal scheduling strategies for 3DRSoCs. The first strategy decides, during the task scheduling, the need for a SW task and a HW task to communicate in face-to-face so that the communication cost between tasks is minimized. The second strategy aims at minimizing the overall execution time of the application. It exploits the presence of processors in the MPSoC layer in order to anticipate, at run-time, the SW execution of a task when its HW version cannot be allocated to the FPGA. Then, a graphical simulation tool has been developed to verify the proper functioning of the developed strategies and also enable us to produce results.

Page generated in 0.0931 seconds