Font Size: a A A

Design And Realization Of Embedded LINUX/Boot Loader System Driver On The ARM9 Platform

Posted on:2008-06-10Degree:MasterType:Thesis
Country:ChinaCandidate:J ZhangFull Text:PDF
GTID:2178360242460031Subject:Computer applications and technology
Abstract/Summary:PDF Full Text Request
Embedded operating system is an important branch in the area of operating system. Embedded system is a special computer system of application-centered, computer-based, and hardware-software-tailored, which is suitable for the systems strict in the function, reliability, cost and power consumption. High real-time performance is its fundamental requirement and it also requires codes as few as possible, operating speed as fast as possible and reliability as high as possible. Embedded Linux is a special Linux operating system which is applied in the specific occasions. Its development and research is a hotspot in the area of operating system nowadays. Compared with other embedded operating systems, it has some unique advantages: firstly, the hierarchical structure and completely open kernel; secondly, the strong network supporting function; thirdly, an entire set of tool chains; finally, the characteristic of broad hardware support. Because of these unique advantages of Linux, a growing number of enterprises and scientific research institutions have focused on the development and research of embedded Linux. Therefore, the prospect of development and application of embedded Linux is also very wide.Fiscal Cash Register refers to electronic cash registers and electronic devices, which meet the requirement of the GB 18240-2003 standard and have the function of tax control at the same time. Once it starts working, it will automatically collect the information of each transaction, record management data of taxpayers, and respectively generate and register management data, according to different tax categories, tax items, and tax rates set by the initialization of different machines. In addition, it can also summarize and process the collected operating data, and then store them in the internal tax control components in an encryption manner safely and reliably. While recording the management data of taxpayers, it will print out corresponding invoices and tax control codes to identify the invoices. High-grade Fiscal Cash Register is mainly used for the taxpayers who have a certain scale and fixed management place in the industries of commercial, service and entertainment and so on. Apart from the functions of general tax control cash registers, it also requires some business features and the special demands for tax control function. However, it is the characteristic of demand that determines the structure of system software and hardware.The work of the paper is an important component of the High-end Fiscal Cash Register Project developed by Livelihood Science and Technology Development Co. Ltd. of Jilin Province, and the promotion of Fiscal Cash Register is also an important part of National Golden Tax Project, which itself is of high practical value. The development of the project will form an operating system platform of the Fiscal Cash Register product line to enrich the function of the Fiscal Cash Register products greatly. The author's main task is to complete transplantation of Linux system and development of related driver on the high-end Fiscal Cash Register. The author's work mainly includes the following components:Firstly, the author introduces the composition and basic structure of the hardware system. The hardware platform of the products adopts high-performance 32-bit processors, which makes them much stronger competitiveness. CPU adopts AT91RM9200 processor whose kernel is ARM920T provided by the company called ATMEL. At the same time, on this platform, embedded ARM Linux based on version 2.4 kernel is introduced.Secondly, the author introduces the function and transplantation course of the software called U-BOOT. U-BOOT is used as the guiding and loading procedure in the project, which takes charge of self-inspecting the machine when started up and loading the operating system, in order to complete transplantation of Linux system on the high-grade Fiscal Cash Register. By the operation of U-BOOT guiding and loading, Linux will be activated and start running.BootLoader is the first step in the development of embedded system software, and combines the operating system and the hardware platform, which is of great importance in the follow-up software development and even in the whole development for embedded systems. During the process of transplantation, the developers have to know about the related hardware besides the structure and work process. Then, U-BOOT is currently much more popular and powerful BootLoader, which can support multiple architectures.Meanwhile, for embedded Linux systems, the simplest development environment only needs host machine, target board and serial links. The host machine runs the terminal simulation program called Minicom to watch or control serial ports. And the communication protocol between Minicom and target board adopts Kermit protocol.Finally, the author's another emphasis of work is the design and implementation of device driver on Linux platform. The author has developed the LCD device driver and network device driver on Linux platform, upon analyzing general composition, key data structure and concrete realization process of Linux device driver.Device driver is the interface between the operating system kernel and the machine hardware, and it shields the details of hardware from applications, which allows applications to operate hardware devices like ordinary files. It is also a part of kernel, and its main functions are as followings: initialization and release of devices; transmission of data from kernel to hardware and reading data from the latter; reading data from applications to device documents and sending back data requested by applications; detection and processing mistakes of devices. Frame Buffer is a kind of driver interface, appearing on Linux version 2.2.xx and later, which abstracts display equipment as frame buffer device zone. When modular driver of AT91RM9200 LCD is programmed, LCD driver has to be removed from the kernel at first and several key functions should be paid attention to at the same time.The architecture of Linux network driver can be divided into four levels from top to bottom respectively: protocol interface layer, network device interface layer, device driver functional layer providing the actual function and network equipment and media layer. And it is the chief work to implement the third layer to satisfy our own requirements of function during the design of network drivers. In Linux, all the network equipments are abstracted as an interface, which provides a set of operations for all the equipments. The data structure called struct device is used to express the operation of network devices in the kernel, that is, network device interface.After an almost year development of the project, the issue has been finished and the designated kind of products have been already market-oriented. As for the future development of the embedded system technology, with the development of the processor technology, that is, the higher demand of applications making the embedded design from 8/16-bit to the more powerful 32-bit MCU, it should have extremely great prospects. To add the operating system in embedded devices will greatly simplify the application design, protect the quality of software effectively and shorten the development cycle.
Keywords/Search Tags:Realization
PDF Full Text Request
Related items