官术网_书友最值得收藏!

Chapter 3. C Compiler, Device Drivers, and Useful Developing Techniques

In the previous chapter, we saw how to use the serial console to manage our developer kits and how it can be used to manage the bootloader too. Also, we introduced some device drivers to communicate with the host through a USB cable, and we installed a Debian OS, which is a collection of files in a filesystem, the main and the first filesystem that our embedded systems mount and boot.

In this chapter, we will focus our attention on the C compiler (with its counterpart, the cross-compiler). You will also learn when to use the native or cross-compilation and the differences between them.

Then, we'll see some kernel stuff used later in this book (configuration, recompilation, and the device tree). We'll also look a bit deeper at the device drivers, how they can be compiled, and how they can be put into a kernel module (that is kernel code that can be loaded at runtime). This is because starting from the next chapter, we'll present different kinds of computer peripherals, and for each of them, we'll try to explain how the corresponding device driver works, starting from the compilation stage through the configuration until the final usage. As an example, we'll try to implement a simple driver in order to give you some interesting points of view and some simple advice about kernel programming (which is not covered in this book!).

We will present the root filesystem's internals and spend some words about a particular root filesystem that can be very useful during the early developing stages – the network filesystem. As the final step, we'll propose the usage of an emulator in order to execute a complete target machine's Debian distribution on a host PC.

This chapter still is part of the introduction to this book. Experienced developers who already know these topics well may skip this chapter, but my suggestion is to read the chapter anyway in order to discover which developing tools will be used in the book and, maybe, some new technique to manage your programs.

主站蜘蛛池模板: 聂拉木县| 乐业县| 文成县| 玛纳斯县| 抚顺市| 大关县| 潮安县| 海盐县| 扶绥县| 双鸭山市| 武邑县| 桓台县| 清原| 三亚市| 法库县| 井研县| 中宁县| 莆田市| 旺苍县| 大竹县| 宁德市| 阳东县| 和硕县| 吕梁市| 吴江市| 汶上县| 家居| 阿城市| 兴义市| 海门市| 盐山县| 昌黎县| 延寿县| 吐鲁番市| 介休市| 资溪县| 卓资县| 浑源县| 紫阳县| 衡山县| 舞钢市|