I would like to recommend a book on embedded entry: Embedded System Design (Chongqing University Press, author Peng ). I have also made some good looks recently. I have summarized some of the embedded knowledge we learned before, as well as the operating system and composition principles, this is a summary of the knowledge learned in this book and a review of the previous knowledge.
I personally think that the learning of embedded systems should be compared with that of computer systems.
For computer systems, we know that their components include software and hardware. The software has operating systems and various applications. Mainstream operating systems include Windows and Linux. Generally, we develop applications on a system. Hardware includes: CPU, memory, disks, registers, and some peripherals, including NICs, graphics cards, and displays (of course, a circuit board is certainly available ). We all know this knowledge.
For an embedded system, its components are software and hardware. The software has operating systems and various applications. Mainstream operating systems include embedded Linux and embedded Windows. The specific generation depends on the CPU and other hardware. Of course, the commonly used operating system is embedded Linux. I don't have to worry too much about the advantages of Linux. The embedded Linux and PC Linux have both similarities and differences. From the root point of view, embedded Linux originated from PC Linux systems. In addition, we need to keep in mind that embedded systems are specific and highly targeted. To put it bluntly, the embedded system is specially developed for a certain type of application, which is highly targeted. We can discard anything that is not necessary, add some things we need. So here, the difference between our embedded Linux operating system and PC Linux system is that we remove some content irrelevant to our own needs, and finally add some necessary things. The operating system mentioned here is an embedded system. Of course, when developing this embedded system, we must develop it on our own computer, and our computer also needs an operating system. That is, the PC operating system. Generally speaking, the operating system of the target machine (that is, the embedded system) is not necessarily related to the host machine (that is, the PC we use. We can also install a Windows system on our computer and then develop an application running on an embedded Linux operating system. This is all possible. Of course, we have different PC operating systems and different development tools.
For the introduction of embedded system hardware, we still need to compare with PC. For embedded systems, we need CPU, memory, circuit board, network transceiver, LCD, keyboard, speakers, and other peripherals. These peripherals are subject to specific requirements. CPU selection is also based on the specific situation. Memory is generally Ram. Disks are generally not used for external storage devices. Flash is used for most storage devices. Because flash is easy to read and has a small size, the cost is not very high. Select the sentence based on the actual situation. Generally, we first select CPU and memory based on specific needs, and then select the Operating System Based on hardware.
My major is computer science and technology. Compared with the study of electronic communication, Guan Gong is indeed playing a big game in front of him. In addition, the system has been learning embedded for less than a month, so there must be something wrong with understanding it. I hope you will propose that everyone will learn from each other.
Comparison between embedded systems and computer systems