Some practical suggestions for studying embedded Linux systems

Source: Internet
Author: User
Tags website server
Article Title: some practical suggestions for studying embedded Linux systems. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open source.

It is very popular to learn how to develop and transplant embedded Linux. Various articles and training courses flood the streets of bookstores. I also took the road and went through a long period of exploration. I finally got started one day, but it really ruined a lot of money and time. As a poor person, I want to write down my feelings for your reference.

Key Point 1: experiment is more important than reading books (Multi-encoding, less book reading)

We must first build an x86 experimental environment.

Build an experimental environment with old computers (the computer city sold inventory on weekends and there was a new one.

Host: a PC (capable of running redhat linux, you can check the file, with Nic and soft drive ).

Target machine: an old PC motherboard With a nic, a soft drive, and power supply.

Attachment: Cross-network cable and cross-string Cable

Enough, no more than 3 thousand yuan (already satisfying ).

Download all the software from the website.

No matter what arm ppc mips is, read the documentation later.

Second focus: gnu c Compilation

Installing redhat linux on a PC includes development tools.

Familiar with linux configuration commands.

Practice C Programming in linux and compile multiple programs.

If you are bored, compile a dozen examples of C language textbooks to familiarize yourself with the GNU Compiler. Www.gnu.org

Including gcc make ld objdump ar and other GNU toolkit

Third, focus: Program/load the realtime linux kernel to the target board for running.

1. Download rt-linux, uclinux, or any non-redhat linux source code, which must include compiling the project makefile and for x86 PC.

2. Modify and configure the program, and change the standard console port of rtlinux to serial port instead of vga and keyboard.

3. Compile the embedded linux kernel in the redhat linux environment.

Use a program such as mkboot (or a tool in the Code) to copy the compiled kernel execution file and locate the disk boot area.

4. Use this floppy disk to boot on the target PC motherboard.

Configure the target PC motherboard on the serial port of the PC host. The effect is the same as that of the redhat linux terminal console.

In the future, it will become increasingly difficult and persistent.

The fourth key is to compile the driver that runs the network card.

Download and compile the NIC driver source code

Network Communication between the host and the target.

Don't think too much about it, just ping it.

The fifth key is to use tftp to download the execution file from the PC host to the target machine.

Sixth focus: gnu gdb remote online debugging (network port debugging)

Seventh key Real-time kernel learning/Modification

Analyze and debug/destroy the source code of the kernel according to the article/book.

Scheduling, message, storage, file, process, thread, mutex, etc.

Run it separately. You just need to understand the kernel functions.

Eighth key TCP/IP Learning

Download a simple web server (http server)

Learn, understand, and compile, load, and run the program.

The PC motherboard target machine is regarded as a website server, and then the web server is accessed in the network hosts of the PC host.

If you are interested, load your photo to the html webpage of the target machine.

Analysis of the ninth key NIC Driver

Measure the test taker's knowledge about the PCI bus principle and try to write the NIC Driver to filter Ethernet packets. Tracks and processes special packets.

Tenth key USB and FLASH file system exercises. (Skip)

You can analyze and modify the source code of the USB and FLASH file systems.

Make sure to analyze the source code and check the FLASH model online.

11th key router experiments.

Analyze the source code of zebra and buy another Nic.

Try to analyze nat rip and other protocols to convert your PC-board target machine into a simple router.

Future labs will be conducted based on the industry,

For example, mini-GUI (Graphical Programming), DVR (hard disk recorder), or IP Vedio WebTV server.

You can have fun for a few years. Of course, you 'd better do some experiments on the ground before looking for a job.

In one sentence, do not just look at it.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.