Ami uses modularization to defeat Award, and structural design affects the traditional software field

Source: Internet
Author: User

I have been away from ASUS for more than two months. Today I suddenly recall some things in ASUS. Although I do not like Asus's cultural atmosphere, I am a little proud of having worked in ASUS BIOS.
When I first entered Asus, the bios I saw was a very different face-Ami. I usually use a lot of computers, and it is very common to deal with bios, but the domestic BIOS is still mostly award, and I do not know that there is Ami. I was even more surprised when I knew that AMI was the main bios of Asus channel (which was called by ASUS and pasted with my own brand of products. Because Asus's main board is the world's first, the total annual shipment is more than the total of the three major manufacturers behind him. What are the BIOS of these main boards actually using a strange Ami? A few months later, when I was able to integrate into the Asus BIOS project development, I gradually realized that AMI was amazing.
Traditional software development fields, including large assembly language systems such as bios and some underlying C software projects, will require a lot of compilation preprocessing, that is, macros, then, use ifdef and other methods to manage the compilation process. For example, in C language, write a config file and define some compilation preprocessing:
# Define worker la_cpu 1
# Define intel_cpu 0
Include this config file in the program and use # ifdefined (XXX) to control the different code that should be compiled when different CPUs are used. In general, this is very useful, but in large programs, this kind of compilation preprocessing is used a lot, sometimes a config file needs to put hundreds of such compilation preprocessing to guide the compilation work, in this case, the programmer must know in detail the situation of each compilation preprocessing, which is actually not guaranteed. Therefore, it is often the case that the code is modified repeatedly and the results are the same. It is often because the compiler misses this code because a parameter is defined as 0.
Of course, Ami BIOS also adopts this method, but the main module control is not completed by compilation and implementation. Ami has developed a complete set of its own tools to achieve perfect module control. According to the function, he divides all the code into independent modules. For example, this module is used to initialize the Intel 915 chip and that module is used to control super Io. In this way, a new motherboard BIOS should be formed, as long as I know the chips used on the motherboard and what functions need to be implemented, I can use tools to select the corresponding modules and combine them. For example, Asus new P5GL-MX motherboard using intel915 + ich6 chipset, CPU with 775 interface, with ics954123 clock controller, with WINBOND super Io, to have overclock function, so I only need to select the general basic module, intel915 beiqiao module, ich6 nanqiao module, ics954123 overclock module, and huabang super Io module, and the Intel CPU microassembly that supports the 775 interface can form a rough bios, and then slightly modify some places to make it compatible with your own motherboard. If you use the award project (the award project code is not public to the Chinese mainland and I have never seen it), study every compilation preprocessing parameter.
The biggest benefit of modularity lies in code assembly and code maintenance. Obviously, many codes that serve different functions are stored in the same file and controlled by compilation parameters, so project maintenance, it has to be allocated as a file. Suppose there is a file used to control the initialization of the CPU, which requires all the CPUs that may be used, including AMD K6, amd K7, amd K8, Intel P4, Intel simith, and so on, then the maintenance personnel of this file is a super genius who is familiar with the initialization process of all these CPUs. If the code is controlled separately, synchronization may occur because all the code is in the same file, which is very annoying! However, the modular Management of AMI solves this problem, because all functions are divided into different modules, and the owner of each module can only be an expert in a field, it is not difficult to become an expert in this small field. During Asus, you can receive this email all day: xxxmodule check in. Well, you can change the new module on the server to update the project you are responsible, it must have been solved by someone.
I also want to talk about Asus. Asus is well known, but in the bios, Asus has been using an AMI bios that is much more expensive than award, because Asus's product update speed is extremely fast, it is often because new products come out one by one, and Asus has strict requirements on product quality. The fast development and easy maintenance features of modular AMI BIOs are just right for Asus.
It is said that many foreign computer manufacturers have switched to AMI over the past few years, and some domestic manufacturers seem to have this trend. The brand-new ami bios has changed the unique structure of award. It can be seen from this that the structured design is not only eye-catching in the new technology, but also quietly changing the traditional field.
I also heard that intel has replaced BIOS with EFI, hoping that ASUS and AMI can withstand this challenge.

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.