- : The primary role of Boot Loader is to execute Linux Kernel. Most of the Boot Loader has the debug feature, such as download hex/binary, set breakpoint, step execution, disassemble ..etc At the early stage of the development, Linux kernel (and file system) is downloaded manually by using boot loader. In the final application, boot loader(or subset of boot loader) is used to load (from ROM/Flash or HDD) and execute Linux kernel||
- : In-Circuit Emulator / There are several types of ICEs. Traditional type require special CPU - so called evachip - which provides not only basic debug feature but also very rich hardware debug feature such as hardware breakpoint(e.g. data access break), pc trace,profiling, realtime RAM monitor ...etc The problems of traditional type are 1) it is becoming difficult to follow higher frequency 2.it is becoming difficult to adapt to finer pitch package 3. the price is expensive. JTAG based ICE is becoming more popular||
- JTAG ICE
- : JTAG was originally designed for boundary scan. It allows to read/write internal registers via limited number of pins(typically 5 pins). It is becoming popular to use JTAG interface and use DCU(Debug control Unit) inside the cpu. JTAG ICE provide very basic debug feature such as run-control, mem/reg view/edit, download ..etc||
- : eXecution In Place / Usually Linux kernel is executed on RAM in order to get best performance. XIP is, however, the technique that Kernel is executed on ROM. XIP has the advantage of fast boot and smaller RAM usage while it has the disadvantage of slower performance.