Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/88668

Registo completo
Campo DCValorIdioma
dc.contributor.advisorPinto, Sandropor
dc.contributor.authorRocha, Francisco Manuel Barretopor
dc.date.accessioned2024-02-07T16:08:50Z-
dc.date.available2024-02-07T16:08:50Z-
dc.date.issued2023-01-09-
dc.date.submitted2022-12-
dc.identifier.urihttps://hdl.handle.net/1822/88668-
dc.descriptionDissertação de mestrado em Engenharia Eletrónica Industrial e Computadorespor
dc.description.abstractOs sistemas embebidos apresentam uma enorme heterogeneidade, incluindo desde pequenos controladores, para sistemas inteligentes operados a bateria até sistemas de computação de alto desempenho em automóveis. Definitivamente, os sistemas embebidos cresceram exponencialmente nos últimos anos, aumentando o seu nível de complexidade numa multiplicidade de indústrias. Tal facto, aportou naturalmente uma consolidação de várias camadas de critícidade sobre a mesma plataforma. Para proporcionar um aumento de isolamento e segurança, a indústria começou a recorrer às capacidades da tecnologia de virtualização. A tecnologia de virtualização permitiu a consolidação e o isolamento de múltiplos subsistemas numa mesma plataforma. Hipervisores, também designados de monitores de máquinas virtuais, são responsáveis pela gestão dos recursos de hardware para as mesmas. No entanto, os hipervisores tradicionais não foram desenhados para garantir requisitos de tempo-real e para as restrições embebidas. Nesse sentido, tanto a indústria com a academia direcionaram esforços para uma nova arquitectura de virtualização, os chamados hipervisores de partição estática. Um exemplo destes hipervisores é o Jailhouse que aloca estáticamente o hardware no momento de inicialização. No entanto, este hipervisor exige que o sistema operativo Linux o inicialize, o que se traduz em desvantagens em termos de tempo de arranque e segurança. Para abordar a maioria dos problemas do Jailhouse, o nosso grupo de investigação desenvolveu o Bao. Bao é um hipervisor estático que não apresenta qualquer dependência externa. Este mesmo hipervisor já implementa a partição da cache de modo a mitigar as interferências causadas pela contenção da partilha da mesma entre máquinas virtuais. Contudo, existem outros pontos de contenção na hierarquia de memória. Assim, a primeira parte desta dissertação concentra-se sobre a implementação de um mecanismo para regulação da largura da banda de memória, cujo o objectivo é o isolamento temporal do controlador DRAM. O mecanismo implementado irá ser avaliado para identificar o nível de capacidade de redução de interferência na DRAM. A segunda fase desta dissertação, explora os possíveis casos de ”side-channel” através do uso de DMAs para avaliar os casos de interferência a nível da plataforma e não apenas ao nível do CPU.por
dc.description.abstractEmbedded systems range from tiny controllers in batery-operated smart devices to high-performance computing systems in cars. Therefore, embedded systems have grown exponentially in recent years in various industries, and this has lead to increased complexity, that naturally pushed towards consolidation of several layers of criticality on the same platform. To provide increasing isolation and security, industry started to leverage the capabilities of virtualization technology. Virtualization technology enable the consolidation and isolation of multiple subsystems onto the same platform. Hypervisors, also called as Virtual Machine Monitors are responsible for managing the hardware resources for different virtual machines (VMs). However, traditional hypervisors are not designed for real-time requirements and embedded con straints. This lead academia and industry to work towards a new virtualization architecture, the so called static partitioning hypervisors. These hypervisors statically allocate hardware resources. An example of a static partitioning hypervisor is Jailhouse, which statically allocates hardware at initialization time to the different VMs. However, this hypervisor requires the Linux operating system to bootstrap itself, leading to several bottlenecks in terms of boot time and security. To address most of the issues of Jailhouse, our research group has developed Bao. Bao is a static hypervisor that does not have any external dependencies. The Bao hypervisor already implements cache partitioning to mitigate interference caused by the contention in the shared cache between guests. How ever, there are other points of contention downstream of the memory hierarchy. So the first part of this dissertation focuses on implementing a mechanism to regulate VM memory bandwidth, where the goal is the temporal isolation of the Dynamic Random Access Memory memory controller. The implemented mechanism will be evaluated to identify the extent to which the mechanism helps solve the interference problems in the DRAM. The second phase of the dissertation explores possible cases of side-channels through the use of Direct Memory Accesss to evaluate cases of interference at the platform level and not just at the Central Processing Unit level.por
dc.language.isoengpor
dc.rightsopenAccesspor
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/por
dc.titleMitigating platform-level memory interference on a static partitioning hypervisorpor
dc.typemasterThesiseng
dc.identifier.tid203513924por
thesis.degree.grantorUniversidade do Minhopor
sdum.degree.grade17 valorespor
sdum.uoeiEscola de Engenhariapor
dc.subject.fosEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informáticapor
Aparece nas coleções:BUM - Dissertações de Mestrado
DEI - Dissertações de mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
Francisco Manuel Barreto Rocha.pdfDissertação de mestrado10,28 MBAdobe PDFVer/Abrir

Este trabalho está licenciado sob uma Licença Creative Commons Creative Commons

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID