Font Size: a A A

Research And Implementation Of Embedded Multi-threaded Remote Debugger

Posted on:2014-05-20Degree:MasterType:Thesis
Country:ChinaCandidate:S J YinFull Text:PDF
GTID:2268330401967004Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Accompanied by the rapid development of computer hardware and softwaretechnology, embedded products has also been fully integrated into people’s lives andsocial production, embedded systems are omnipresent. Embedded systems are dedicatedcomputer systems, which are designed for specific application environment, andembedded in the controlled device. Derived from the controlled device’s requirementsin space, cost, robustness, stability and real-time to embedded systems, typically theyhave the following characteristics: low CPU frequency, limited peripherals, internal andexternal memory, low power consumption and so on. These features lead to large-scaledevelopment tools, such as compilers and debugger, could not run on the embeddedsystem. Cross-development method is adopted in embedded software development, andcross-debugger is one of the core tools. A good cross-debugging tools can help toimprove the efficiency of embedded software development and reduce developmentcosts.Embedded software debugging process involving multi-level hardware andsoftware modules in the host and target systems, including CPU exception handling,thread management, the operating system kernel, the target debug agent, remotecommunication protocol and the host debugger. And usually different embeddedoperating systems need to implement specific cross-debugger. This article research onthe embedded multi-threaded remote debugger principle and key technology. Based ona new embedded operating system aCoral, design and implement a remote debuggingagent system.This dissertation has researched on the the principle of remote debugging;analysised the internal mechanisms and implementation of GDB RSP Server(debugging agent); analysised the implementation of the Linux kernel’s mechanism,such as ptrace () system call and breakpoint exception; studied aCoral’s kernelframework and basic mechanisms, and its application programming methods; analyziedthe exception handling of the ARM architecture and its related technologies. On thisbasis, this dissertation designed and implemented a remote debugging agent system for aCoral. The system contains two parts: aCoral-kernel debugging mechanism, and RSPdebugging agent. Kernel debugging mechanism part includes: SWI exception handlingmechanism and thread control access. Debug agent portion completed functionsincludes: the host GDB data communications, management debuged thread, parse andexecute debugging command. Finally, a detailed functional test is carried on the system,to verify the validity of the design.This dissertation comprehensively analysised and summarized the interactionprinciple of various hardware and software modules in embedded software debugging,which has a good theoretical value and a great help for understanding softwaredebugging. Meanwhile, this debugging system’s design and implementation details areof practical value, which can provide a valid reference in the future for implementingother new embedded operating’s system debugging subsystem. The debug system haslow implementation cost, can achieve aCoral’s task-level debugging and improveaCoral application development efficiency.
Keywords/Search Tags:Embedded, multithread debugging, remote debugging, aCoral, GDB
PDF Full Text Request
Related items