Friday, March 18, 2011

Embedded systems and how to construct an embedded system

Most of the Linux system running on the PC platform, however, Linux is also available in embedded systems and reliable work.

This paper describes an overview of the embedded system, as well as the demonstration of a commercial embedded Linux application to system problems. Embedded systems--those than Moses also old to control equipment of computers, or embedded system, almost the same computer itself early in our surrounding. In the communication field, these embedded system as early as the late 1960s, he or she is used to control the telephone exchange of electronic machinery and is referred to as "stored program control control" system "computer" in the fashion not common; the so-called stored procedures are those that put a program and routing information in memory. Store the control logic instead of the hardware that is in the concept of a real breakthrough, nowadays, we believe that this kind of mechanism for granted. For each application, the computer is to be made out (in short, these computers are application-oriented). the press today's standards, they have strange private instruction and main calculation engine integrated i/o device, like a mutant people. Microprocessor by providing a compact and inexpensive and can take a large system like building blocks that use CPU engine changed this situation; it is based on using a bus-hook together different peripherals are built to strict hardware architecture and provides a simplified programming of general purpose programming model. Together with the hardware, the software has also made progress. initially, only a few simple development tools available for creating and debugging software. each project running software is usually based on how warp doodling. because the compiler often have many errors and a lack of decent debugger, these software almost always use assembly language or macro language to write software building blocks used and standard library programming ideas until the mid-1970s to pop up. For embedded systems and "shelf"-independent operating system (OS) in the late 1970s began to appear. many of the them are written in Assembly language and can only be used to write the microprocessor. when these microprocessors become obsolete when they use the OS also doom with Pro-only in the new processors from the new write once to run today, many of these early system just became fuzzy memories of people, there are people who can remember MTOS? when C language appears, the OS can use an efficient, stable and portable way to write this way on the use and operation of a direct appeal since it hosts people abandoned when the microprocessor is able to protect their software investment hopes. sounds, a bit like the commercial marketing of a legendary story written using C OS has become a standard today in summary, the software reusability has been accepted and is very well. In the early 1980s, my favourite OS is an operating system; perhaps as long as Wendon 150 dollars, you can obtain one c source code library. it is a development kit that can be viewed by choosing the number of components to build their own OS---the entire process is like dining from Chinese food menu, you can for example as. from a library of more than one feasible option list, select the task scheduling and memory management scheme. Many embedded systems of commercial operating systems in the 1980s was flourishing. (Wendon) this original stew has developed into a commercial operating system this modern stew. today already have dozens of commercial operating systems to choose from-a number of competing products, such as VxWorks, pSOS, Neculeus and WindowsCE. Many embedded systems there is no operating system, only one control rings. effects very simple embedded systems, this may have been enough. However, as on the complexity of embedded system, an operating system is important, because otherwise, would enable (control) software complexity becomes unreasonable. Sadly, reality does have some complicated another formidable embedded systems, and they are becoming more complex because of their designers insist that their systems do not require the operating system. Gradually, more and more embedded systems need to be connected to some network, hence the need for embedded system is a network protocol stack (support); and even in many of the hotel door handles have a connection to the network of the microprocessor. The network stack is added to a control loop is only used to implement simple embedded systems brings complexity may be enough to arouse the desire for an operating system. In addition to a variety of commercial operating systems, there are many other private holding the operating system., many are graffiti-written, like Cisco IOS, etc of the company; some are from another operating system, rewriting, like many network products are derived from the same version of Berkeley UNIX operating system, because the latter has full network support capacity; but there are also the OS based on the public domain, such as the source to KA9Q PhilKarn. As a candidate of embedded operating systems, Linux has some compelling advantages: it can be ported to multiple different structure of CPU and hardware platforms, good stability, performance, and develop the ability to upgrade more easily. Development tools--breaking the barriers of traditional emulator when developing embedded systems are extremely critical of the various available tools-just like any business, good tool helps quickly and satisfactorily completed tasks; in embedded system at different stages of development, you might want to use different tools. Traditionally, developing embedded systems preferred tool is the emulator. This is a relatively expensive equipment, General plug to a microprocessor and its bus between circuit, thereby allowing the developer to monitor and control all the input and output the microprocessor of the activities and behaviors in together, there may be some difficulties, and because of their intrusive,On the back may cause unstable performance; despite this, they can bus level a system of clear what is happening and eliminate the depiction of many hardware and software interface to the bottom of the guess work. In the past, some projects rely on it--often in the development cycle stages--as the main debug tools. However, as soon as the preparation of the software is capable of supporting a string-type oral, a lot of debugging without ICE, use a different approach to completing the. Similarly, the majority of the new generation of embedded system adopts quite like a cookbook of microprocessor design; communications work in the startup code often have to make the string-type oral work as soon as possible, this means that developers can not ICE can make good progress; to get rid of the ICE, reducing development costs. once string-type oral can work together, will be used to support the increasingly complex development tools-related (software)-GNUC compiler based LINUX; the latter as a GNU toolset, and source-level debugger gdb work together, provides the development of an embedded Linux system with all the software tools, the following is a new hardware development a new embedded LINUX system to use typical debugging tools and the sequence of steps: 1: write or transplantation a startup code (discussed in detail later); 2: write code in a string-type oral a string on the output, like "Hello, World!" (In fact, I prefer human invention, on the phone said the first sentence "Watson, comehereIneedyou"); 3: transplantation gdb target code to be able to work on a string-type oral-this will allow to another computer that is running gdb program Linux host session; you just have to tell gdb is string-type oral debug the target program; gdb by string-type oral and your test computer gdb target code session and gives all C source level of debug information you can also use this ability to (communication) additional code downloaded to RAM or Flash. 4: use gdb to implement the remaining until LINUX kernel began to take over all hardware and software of the initialization code. 5: once the Linux kernel startup, the string-type oral becomes a Linux console port and can use its facilities for subsequent development process-and then use the debug version of gdb kernel kgdb. This step is often not necessary if you have a network connection, for example, 10BaseT, you might want it to work immediately. 6: If your target platform running Linuxkernel is fully functional (i.e.: without the deletion of a function), you can use gdb or its graphical alternatives such as xgdb to debug your application process. Real-time--is it true? rash, most of the system is not the case. Embedded system has often been mistakenly said to do real-time systems, but most of them do not have the real-time characteristics. Real-time performance is just the opposite. Real-time stricter definition should be a hard real-time: in a very short period of time (in milliseconds), and in response to a sure way to handle the event. Now, many hard real-time functionality is increasingly concentrated in the DSP or ASIC design, through the appropriate hardware, such as FIFO, DMA or other specialized hardware. On most systems, with 1 to 5 MS response time for real time should be sufficient. Of course, another loose requirements are acceptable, for example: Windows98 processing monitor crashes, the interrupt request must be processed within 4 microseconds, representing 98% of all cases; and in 20 microseconds, the situation of 100%. These liberal real-time requirements can be easily reached. achieving their process involves a number of discussion, including switching and interrupt latency, task selection and scheduling. Switching operating system once become a hot topic, however, since most of the CPU on this point deal comparatively satisfactory and the CPU speed is now changing fast enough, switching is now no longer a major concern. Immediate strictness of requirements should normally be represented by an interrupt routine or the kernel of the scene-driven functions to handle to ensure that the behavior of consistency when interrupt occurs, processing the amount of time spent in the break, interrupt latency, in large part, by the interrupt priority and other temporary shielding the disruptive software decisions. (Live system) interrupt must be efficiently design and arrangements to ensure that you meet the requirements of the time, just like in other OS as in IntelX86 processor series, this work can be expanded real-time Linux handle. (Real-time Linux, namely: RTLinux, see http://www.rtlinux.org/). in essence, it provides a Linux as its background tasks while running interrupt processing Scheduler. (ThisessentiallyprovidesaninterruptprocessingschedulerthatrunsLinuxasitsbackgroundtask) key (critical) interrupt can not rest for Linux known access services (handling) and therefore, you have control of the critical time. such an approach provides real-time level and time restricted more lenient basic Linux level between interface and provides a similar with other embedded operating system for real-time processing framework. ultimately, in order to meet the real-time performance requirements, using the real-time performance of key (critical) code snippets isolate and efficient arrangements, and on the outcome of that code and in a more general way (perhaps at the process level) for further processing. Embedded systems--define a view: If an application has no user interface, so that the user cannot directly interact with it, then it is embedded systems-this of course is too simplistic. elevator control system is an embedded system, but there is aSelect household interface: floor button and display elevator arrived several layers of indicator-for those who connect to the embedded systems network, if the system contains a use to monitor and control the Web server, the interface difference even more blurred. a better definition it should be emphasized in the system of important features or major purposes. Since Linux can provide one for embedding function in basic kernel and you want the user interface elements, so Linux has a strong common characteristics.

No comments:

Post a Comment