Presentation av examensarbete för högskoleingenjörsexamen
| Titel: | RISC-V Thread Isolation Using Zephyr RTOS |
| Respondent: | GUSTAV MIDÉUS och ANTONIO MORALES |
| Dag, Datum och Tid: | Fredag 2020-06-05 kl 09.00 |
| Plats: | Webb-möte (online-möte) med uppkoppling via Zoom: se denna länk |
| Opponenter: | (max 3 st), kontakta respondenter för opponering på rapport. |
| Examinator: | Anders Sjögren, handledare Johan Montelius |
| Språk: | Muntligt på svenska, presentationsbilder på engelska/svenska (frågor kan ställas på engelska). |
| Anmälan: | Anmälan för lyssnarnärvaro behövs ej för besökare. "Aktiva lyssnare" anmäler sig till as@kth.se senast en dag i förväg. |
Abstract
Many embedded systems lack a memory management unit (MMU) and thus often also lack protection of memory. This causes these systems to be less robust since the operating system, processes, and threads are no longer isolated from each other. This is also a potential security issue and with the number of embedded systems rapidly increasing as a result of the rise of Internet of Things (IoT), vulnerabilities like this could become a major problem. However, with a recent update to the RISC-V processor architecture, a possibility to isolate regions of memory without an MMU was introduced. This study aims to identify problems and possibilities of implementing such memory protection with RISC-V.
Based on a study of literature and documentation on memory protection and the RISC-V architecture, a prototype was designed and implemented to determine potential problems and evaluate performance in terms of execution time and memory cost. The developed prototype showed a working implementation of memory protection for the memory regions with RISC-V. The evaluation of the prototype demonstrated an increase in context switch execution time and memory usage. The results indicate that the implemented memory protection comes with an increased cost in performance with a constant factor and a small memory overhead. Therefore, it is recommended that implementations that wish to implement memory protection with RISC-V on smaller embedded systems where time and memory may be crucial takes the overhead in consideration. Further research and testing is needed to identify optimizations that could improve the performance as well as discover security flaws.
Keywords
RISC-V, memory protection, embedded systems, thread isolation, RTOS, IoT