G.E.R.T : a go-based toolkit for embedded applications
Author(s)
Coroneos, Yanni (Yanni E.)
DownloadFull printable version (3.638Mb)
Alternative title
Golang Embedded Run-Time
Other Contributors
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
Advisor
Frans Kaashoek.
Terms of use
Metadata
Show full item recordAbstract
Embedded systems are becoming increasingly complicated due to the emergence of SOCs (system-on-a-chip) with multiple cores, dizzying amounts of peripherals, and complicated virtual memory systems. Unfortunately, performant embedded systems for SOCs are still largely written in either bare-metal C or userspace C because high-level languages running in userspace can have too much latency. This thesis proposes a new system called G.E.R.T, the Golang Embedded Run-Time, for multi-core ARM processors. GERT is a modified version of the Go runtime for bare-metal operation on multi-core ARMv7a SOC's. It is used to evaluate the effectiveness of using a high-level, type-safe, and garbage collected language for embedded applications. G.E.R.T provides the multiprocessor support and basic memory abstractions of a typical embedded toolkit while also enabling the user to leverage the language features of Go in order to develop concurrent embedded programs that are easier to reason about than similar ones written in C.
Description
Thesis: M. Eng., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2017. This electronic version was submitted by the student author. The certified thesis is available in the Institute Archives and Special Collections. Cataloged from student-submitted PDF version of thesis. Includes bibliographical references (page 51).
Date issued
2017Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology
Keywords
Electrical Engineering and Computer Science.