## page was renamed from EmbeddedLinuxSimmonsQuestions ## page was renamed from EmbeddedLinuxFragen #format rst #language de Questions for the textbook **Chris Simmonds, Mastering Embedded Linux Programming, Packt Publishing 2015** , April 2016 Chapter 1: Starting Out ======================= Pages 1 to 12. 1. Why does your TV run Linux? (6 item points) #. What hardware conditions must be given to run Linux? #. What skills do you need to start a Linux project? #. What are the main players? #. Name the "four elements" #. What do you know about Open-Source licenses? #. Beagle Bone Black. Write down the main technical data. #. What is Qemu? How can I use it? #. For which purpose do you need the uml-utilities? Chapter 2: Learning About Toolchains ==================================== Pages 13 to 39. 1. Which components are in the standard GNU toolchain? #. Compare native and cross toolchains. #. What are the capabilities of the target CPU, which are essential for the toolchain? #. What reports the command ``gcc -dumpmachine``? #. Which C libraries do you know? #. Which alternatives do you know to get a toolchain? #. Create a toolchain using crosstool-ng! #. Follow the istructions in the "Anatomy of a toolchain" section. #. How do you cross-compile a program? #. How do you compile a program which uses the GNU autotools? Chapter 3: All about bootloaders ================================ Pages 41 to 68. 1. Describe the three phases of booting. #. Which information is passed from bootloader to kernel? #. What is a "device tree"? #. From which technology are the device trees derived? #. Device tree basics XXX add a device tree example here which should be explained (reg, phandles, interrupts, include files, compiling a DT) #. Which bootloaders do you know? (which is the most widely used?) #. Describe the steps needed to compile and install U-Boot. .. Omitted: Porting U-Boot to a new board (p. 61) .. Omitted: KConfig and U-Boot (p. 62) #. Describe how to use U-Boot? Cover the following items: - Environment variables - Boot image format - Loading images from cards and network - Start the Linux kernel #. How can you automated the boot process? #. Which are the board specific U-Boot files? #. How to build the Barebox bootloader? Chapter 4: Porting and configuring the kernel ============================================= Pages 69 to 94. 1. When was the Linux project started? #. Which three main jobs has the kernel? #. Describe the structure of *user space* and *kernel space* and how they interact. #. How does kernel version numbering work? What kernel version do you use? #. What are *mainline*, *stable* and *long-term* kernels? #. How is the kernel licensed? Can you run proprietary (closed) applications in user space? #. Questions about the kernel sources 1. How many files has the current kernel for your board? #. How does the kernel configuration work? #. How do you run ``menuconfig`` for cross-compilation? #. How do you configure the kernel with a default configuration for the BBB? #. How do you compile a zImage or uImage? #. Which information is displayed when you compile the kernel? How can you display all commands to the output? #. How do you compile the device trees? #. How do you compile and install modules? #. What does the kernel need after it has started? #. How does the initialization of user space work? #. How are the kernel log messages organized? Which messages are displayed if the log level is set to 7? #. What is the kernel command line and where is it described? Chapter 5: Building a root filesystem ===================================== Pages 95 to 128. Chapter 6: Selecting a build system =================================== Pages 129 to 157. Chapter 8: Introducing Device Drivers ===================================== Pages 197 to 227. Chapter 12: Debugging with GDB ============================== Pages 295 to 321. Chapter 14: Real-time programming ================================= Page 353 to 373.