Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore

Detalhes bibliográficos
Autor(a) principal: Gonçalves, Raphael Gomes
Data de Publicação: 2015
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/1822/51393
Resumo: Dissertação de mestrado integrado em Engenharia Eletrónica Industrial e Computadores
id RCAP_2167d965fff318906e2f59611036a874
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/51393
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicoreSistema operativoRTOSMulticoreSMPARMSistemas embebidosOperating systemEmbedded systemsEngenharia e Tecnologia::Outras Engenharias e TecnologiasDissertação de mestrado integrado em Engenharia Eletrónica Industrial e ComputadoresVivemos numa era onde a aposta na tecnologia multicore é cada vez maior. Motivado pelo facto das arquiteturas singlecore terem atingido o limite da viabilidade do aumento do desempenho à custa do aumento da frequência de relógio, tornouse portanto inevitável a migração para as arquiteturas multicore. Naturalmente, esta também atingiu os dispositivos embebidos, que cada vez mais procuram incluir novas e mais complexas funcionalidades e simultaneamente reduzir o consumo energético. Contudo, o desenvolvimento de software (bare-metal) para este tipo de arquiteturas não é uma tarefa simples, muito porque a mudança de paradigma sequencial para paralelo não é trivial. Garantir requisitos como o time-to-market torna-se essencial num mercado cada vez mais competitivo, e por isso, recorre-se à utilização de sistemas operativos para simplificar e acelerar o desenvolvimento das aplicações. Os sistemas operativos que suportam multicore seguem sobretudo duas filosofias: AMP (Asymmetric Multiprocessing) e SMP (Symmetric Multiprocessing). A primeira abordagem caracteriza-se por apresentar um enorme overhead de memória, já que consiste na replicação da imagem do kernel pelos diferentes cores. Por sua vez, a segunda abordagem, como requer a inclusão de sincronismo no acesso aos recursos partilhados, pode comprometer o cariz de tempo-real do sistema. Neste sentido, a presente dissertação consiste no desenvolvimento de um sistema operativo de tempo-real (RTOS) baseado em microkernel e com suporte SMP. O conjunto de funcionalidades obrigatórias de um RTOS será implementado a partir da análise de três soluções existentes de referência (FreeRTOS, μC-OS/II, μTKernel). O suporte SMP será cuidadosamente desenhado para minimizar a necessidade de sincronismo, bem como garantir a escalabilidade da solução.We live in the age where the applications of the multicore technology are growing. Motivated by the fact that the singlecore architecture has reached the limit of increasing performance at the expense of increasing clock frequency, the migration for multicore architecture became inevitable. Naturally, this reached the embedded field that increasingly sought to include new and complex functionalities and simultaneously reduce the power consumption. However, the software development, in bare-metal, for this architecture is not simplistic task, since the change from sequential paradigm to parallel is not trivial. Guaranteening time-to-market requirements, becomes essential in a market that is more and more competitive, and for this, we resort to the utilization of operating systems to simplify and accelerate the application development. Operating systems that support multicore , have essencially two philosophies: AMP (Asymmetric Multiprocessing) and SMP (Symmetric Multiprocessing). The first approach is characterized by presenting a huge memory overhead, since it has a replicated image of the kernel in all cores. In turn, the second approach requires the inclusion of synchronize mechanisms in access of shared resources, that may compromise the real-time nature of the system. In this sense, the present dissertation consists of the development of one realtime operating system (RTOS) based in microkernel and with SMP support. All obligatory functionalities of RTOS will be implemented based on the analyses of three existing reference solutions (FreeRTOS, μC-OS/II, μTKernel). The SMP support will be carefully designed to minimize the necessity of synchronization, as well as ensuring the scalability of the solution.Tavares, AdrianoUniversidade do MinhoGonçalves, Raphael Gomes20152015-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/1822/51393por201867150info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-07-21T12:25:51Zoai:repositorium.sdum.uminho.pt:1822/51393Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T19:20:10.147109Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
title Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
spellingShingle Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
Gonçalves, Raphael Gomes
Sistema operativo
RTOS
Multicore
SMP
ARM
Sistemas embebidos
Operating system
Embedded systems
Engenharia e Tecnologia::Outras Engenharias e Tecnologias
title_short Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
title_full Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
title_fullStr Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
title_full_unstemmed Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
title_sort Desenvolvimento de um µkernel SMP de tempo-real para plataformas ARM multicore
author Gonçalves, Raphael Gomes
author_facet Gonçalves, Raphael Gomes
author_role author
dc.contributor.none.fl_str_mv Tavares, Adriano
Universidade do Minho
dc.contributor.author.fl_str_mv Gonçalves, Raphael Gomes
dc.subject.por.fl_str_mv Sistema operativo
RTOS
Multicore
SMP
ARM
Sistemas embebidos
Operating system
Embedded systems
Engenharia e Tecnologia::Outras Engenharias e Tecnologias
topic Sistema operativo
RTOS
Multicore
SMP
ARM
Sistemas embebidos
Operating system
Embedded systems
Engenharia e Tecnologia::Outras Engenharias e Tecnologias
description Dissertação de mestrado integrado em Engenharia Eletrónica Industrial e Computadores
publishDate 2015
dc.date.none.fl_str_mv 2015
2015-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1822/51393
url http://hdl.handle.net/1822/51393
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv 201867150
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799132663793057792