Bare Machine Computing on ARM devices

Author/Creator

Author/Creator ORCID

Date

2013-06-18

Department

Towson University. Department of Computer and Information Sciences

Program

Citation of Original Publication

Rights

Copyright protected, all rights reserved.
There are no restrictions on access to this document. An internet release form signed by the author to display this document online is on file with Towson University Special Collections and Archives.

Subjects

Abstract

This thesis extends on-going Bare Machine Computing (BMC) research at Towson University. BMC applications run on a bare machine without any operating system, kernel, or other centralized support. Many complex applications were designed and implemented on x86 processor using BMC concept. This research consists of applying BMC concept to pervasive devices and their underlying architecture. In particular, it investigates implementing bare machine computing on ARM processors, which are commonly used in many systems including: smart phones, GPS, sensor networks, tablets, gaming and multimedia electronics. Applying BMC concept to pervasive devices poses many challenges. Some of these are addressed in this dissertation. To investigate these issues, a graphics application running on x86 PC is transformed to run on an ARM device. A transformation methodology is developed to map x86 applications to ARM processor. This process addresses many design issues including: boot program, loader, device drivers for ARM and its development environment. It was discovered that ARM architectures are more BMC friendly than x86 processors as they are most commonly used in handheld devices and embedded systems. The transformation process identified that majority of the code can be mapped to run on ARM with minor modifications. It also notes that it is possible to write parts of the program that can run on pervasive devices. The dissertation further explored construction of a simple temperature sensor device to run on bare ARM board with buzzer, graphics and touch screen. This study resulted in understanding the BMC application development process on ARM processors. It also discovered that it is possible to write software for one type of architecture and transform it to run on another with minimal code changes. That is, it addresses the heterogeneity that exists in today's pervasive devices and proposes a BMC paradigm to solve their design issues. The dissertation concludes that it is possible to write common software that runs on many pervasive devices.