Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

How to carry out embedded linux getting started Learning Planning

2025-01-18 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >

Share

Shulou(Shulou.com)06/02 Report--

This article will explain in detail how to start learning planning for embedded linux. The content of the article is of high quality, so the editor will share it with you for reference. I hope you will have some understanding of the relevant knowledge after reading this article.

Embedded linux getting started Learning Planning

How to understand embedded system

◆ embedded system is user-oriented, product-oriented and application-oriented. It must be combined with specific applications in order to have vitality and more advantages. Therefore, the meaning of the above three aspects can be understood in this way, that is, the embedded system is closely integrated with the application, it has a strong specificity, and must be reasonably reduced and utilized according to the actual system requirements.

◆ embedded system is the product of the combination of advanced computer technology, semiconductor technology and electronic technology and the specific applications of various industries, which determines that it must be a technology-intensive, capital-intensive, highly decentralized and innovative knowledge integration system. Therefore, to get involved in the embedded system industry, there must be a correct positioning. For example, Palm has more than 70% of the market in PDA because it is based on personal consumer electronics, focusing on graphical interface and multi-tasking management, while Wind River's Vxworks is used on Mars because of its high real-time performance and high reliability.

◆ embedded system must tailor the software and hardware according to the application requirements to meet the requirements of the function, reliability, cost and volume of the application system. Therefore, if we can establish a relatively general hardware and software foundation, and then develop a system to meet various needs, it is a better development model. The core of the current embedded system is often a micro-kernel with only a few K to dozens of K, which needs to be expanded or reduced according to the actual use, but due to the existence of the micro-kernel, this expansion can be carried out very smoothly.

In fact, embedded system itself is a very extensive term, any control system with embedded characteristics combined with the product can be called embedded system, and sometimes it is difficult to give an accurate definition. Now when people talk about embedded systems, to some extent, they refer to the hot embedded systems with operating systems in recent years. This paper also uses this point of view in the analysis and prospect.

Generally speaking, the architecture of embedded system can be divided into four parts: processor, memory, I / O and software (because the application software and operating system of most embedded devices are closely integrated, we do not distinguish them here, which is also the biggest difference between embedded system and Windows system).

ARM+LINUX route, focusing on embedded Linux operating system and its application software development goals:

(1) master the structure and principle of mainstream embedded microprocessors (initially defined as arm9)

(2) must master an embedded operating system (initially determined as uclinux or linux, version to be determined)

(3) We must be familiar with the embedded software development process and do at least one embedded software project.

The advantages of engaging in embedded software development are:

(1) at present, people in this field are very scarce at home and abroad. The barriers to entry in this field are high, so it is difficult for non-professional IT personnel to enter the field; on the other hand, it is because the field is relatively new and is growing so fast that most people have unconditional access.

(2) different from enterprise computing and other application software, the work intensity of embedded talents is usually lower (but the income is not low).

(3) if you want to start your own business one day, embedded software is not as easy to be pirated as application software. Hardware design is generally customized by other companies (this is called "OEM": OEM), it is general-purpose hardware, we just design software and become our own products.

(4) where the interest lies, this is the most important.

The disadvantages of embedded software development are:

The main results are as follows: (1) the entry starting point is high, and the techniques used are often difficult. If the software and hardware foundation is not good, especially the operating system-level software is not deep, it may not be suitable for this trip.

(2) the number of enterprises in this area is much less than that of enterprise computing enterprises.

(3) A few companies often require people with a master's degree or above to engage in embedded systems, mainly based on the difficulty of embedded systems. But most companies do not have this requirement, as long as they have experience.

(4) the support of the platform is strong, and it is hard to change the platform.

The origin of interest:

1, the concept of success is different, not wasted this life, is my success.

2. Like to think and challenge logical thinking.

3. Like C.

C is a language that can give full play to the limits of thinking. Some aspects of the spirit of C can be summarized as follows:

Trust programmers.

Don't stop programmers from doing what needs to be done.

Keep the language short and lean.

One way to do an operation.

Makes it run fast enough, although it is not guaranteed to be portable.

4. Like low-level development and hate vb class development tools (not that vb is bad).

5, the development prospect is good, suitable for starting a business, do not want to be an engineer when they are going to die.

Methods and steps:

1. Basic knowledge:

Purpose: to be able to understand the working principle of hardware, but focus on embedded software, especially operating system-level software, which will be my advantage.

Subject: digital circuit, computer composition principle, embedded microprocessor structure.

Assembler language, Candlestick +, compiling principle, discrete mathematics.

Data structure and algorithm, operating system, software engineering, network, database.

Methods: although there are many subjects, they are relatively simple, and most of them have been mastered. You may not learn all of them, but you can take electives according to your needs.

Major books: the C++ programming language (there has been no time to read), data structures-C2.

2. Learn linux:

Objective: to master the linux system deeply.

Methods: use linux- > linxu system programming development-> driver to develop and analyze the linux kernel. Take a deep look at it first, and then focus on the principle. After watching it several times, look at the situation analysis and take a deep look at the comparison. The two books cross each other, and the depth is the outline, and the emotion is the eye. The analysis is version 0.11, which is suitable for learning. Finally, go deep into the code.

Major books: complete analysis of the linux kernel, advanced programming for the unix environment, in-depth understanding of the linux kernel, scenario analysis, and source generation.

3. Learn embedded linux:

Objective: to master the embedded processor and its system.

Methods: (1) embedded microprocessor structure and application: direct arm principle and assembly, do not repeat x86.

(2) embedded operating system class: ucOS/II is simple, open source, and can be used for entry. Then in-depth study of uClinux.

(3) you must have a development board (arm9 or above) and have the conditions to participate in training (make rapid progress and be able to make some friends).

Major books: Mao Dezao's "embedded system" and other arm9 manuals and arm assembly instructions.

4. in-depth study:

A, digital image compression technology: mainly should master MPEG, mp3 and other coding and decoding algorithms and technologies.

B, communication protocol and programming technology: TCP/IP protocol, 802.14 Blueprint GPRS, GSM, CDMA and so on.

C, network and information security technology: such as encryption technology, digital certificate CA and so on.

D, DSP technology: Digital Signal Process,DSP processor realizes digital signal processing algorithm through hardware.

Description: too many details are not specified and can be adjusted according to the actual situation. The key point is 1 and 3, and you don't have to do it exactly in order. The reason for learning caterpillar is that C++ is not only a language, a tool, but also an art, a culture, a philosophy, but not something to show off. For the linux kernel, it is also necessary to learn programming and read some good code.

Note: to learn to lift a lot, there is a strong foundation, a lot of things can be seen simply. To be a qualified programmer, you must be proficient in at least one programming language and have good logical thinking. We must combine theory with practice.

Don't just delve into technology. although it's hard to squeeze out time, leave some room to improve other hobbies, such as the universe, sketching, machinery, management, psychology, games, and sci-fi movies. There are still some things that you don't want to do but have to do!

On how to start the embedded linux learning plan to share here, I hope that the above content can be of some help to you, can learn more knowledge. If you think the article is good, you can share it for more people to see.

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Internet Technology

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report