Hardware Assisted Breakpoints in the Linux Kernel for LEON SPARC - WILKINS, DAVID (My University, 2020)
Embedded systems can be found in a wide variety of applications ranging from performing simple tasks in a dish washer, to handling critical operations in satellites. There are many different operating systems to choose from when designing such a system. The Linux kernel is open source and a popular alternative for embedded systems. It has a large and active community and supports many different architectures. LEON SPARC is a series of processor cores developed by Cobham Gaisler based on the SPARC v8 architecture. They are especially designed for System on Chip (SoC) solutions which are commonly used in embedded systems.A number of LEON processor cores are fault-tolerant allowing them to be used in space applications. This, and many other applications, creates a high demand for testing and debugging. SPARC is one of the architectures supported by Linux. This support is maintained by Gaisler and other SPARC developers. Gaisler is interested in extending the debugging option on Linux for SPARC by implementing support for hardware assisted breakpointing. This thesis report provides an implementation of hardware assisted breakpoints in the Linux Kernel for LEON SPARC. In addition, a GDB patch was created to provide a use case for the new kernel support.
Keywords: Linux kernel; SPARC; LEON; Gaisler; hardware assisted breakpoints; watchpoints; embedded systems; debugging