For the preface: Who is the reader of this article?
Not used to reading English materials non-Linux masters
The sound card is not connected to the optical drive, and it is not connected to the Internet. As long as there is a problem.
Develop embedded operating system
Now the built-in ODL (Only Disk Linux) is a kernel section, and those articles do not introduce this content. I'm doing
After completing the finishing information.
By The Way, want to be a Linux master? You need to master Keernel Compile, XConfigrater
, LinuxConfig, Samba four warefur, you can always find a large number of related materials in the last three, but kernel compilation
I have to smash all in English.
The author takes time, collects and organizes a lot of information, after 18 hours before children's holiday, give the little penguin this
Gift.
The author believes that the most complete Chinese information in Kernel compilation (will constantly translate supplement), this is
Where is the industry?
Why do you want to put online? First of all, the information is too difficult to find this, and the article will help the Linux enthusiasts. its
Take it, take it on the network.
Welcome to this article, please quote casually, this is in line with Linux free software, but don't forget to mention me.
The name, even if I pay for my hard work.
There is less information between kernels, please add and modify content in this article, but don't delete too much, the author column
Table should join your name, let us work hard to turn it into hundreds of pages. OK, make a friend, I am jade
Yu An, Email: Ziboyuyuan@263.net
table of Contents
Preface
Chapter 1 Basis of Nuclear Compilation
Introduction to the first quarter
Second section core version
Section III Compilation Cause
Section 4 Preparation Work
Chapter II Process
The first section is compiled
The second section configuration kernel {core content}
1. Code maturity level
2 .. Processor Types and Features
3. Support for modules
4. Basic choice
5. Plug and play support
6. Block equipment support
7. Network Options
8. Telephone support
9. Support for SCSI equipment
10.I2O interface adapter
11. Network equipment support
12. Configure amateur radio broadcasts
13. Infrared support
14.ISDN's file system
15. Old CD-ROM Type (optical drive of non-IDE interface)
16. Character device
17.USB support
18. File system
19. Console driver
20. Sound card driver
21. Keernel Hacking
Section 3 compile the kernel
Section 4 to enable the kernel
Appendix: LILO analysis
Chapter 3 Application of Nuclear Compilation
First section embedded Linux technology
Section 2 Your linux has more (and practical results)
Conclude
references
Preface
In recent years, Linux has a big way, so that the user who is dissatisfied with the Windows blue screen is eager to try, and the result is found that Linux installation is not
And Windows is convenient, the interface is not as friendly, the configuration is not easy, the software is not easy, and the software is rich in Windows.
So that you will try it.
In fact, Linux has two advantages of Windows unparalleled: network applications and embedded technologies, which is the most future
Have the direction of the future. At the same time, this topic is an important component of the in-embedded Linux operating system device to theoretically design.
Minute.
If you need to get involved in these two aspects, you must have a deep understanding of the kernel. Of course, you can start from the source code, but premise
It is a professional knowledge such as program design and operating system. Otherwise, you will use the ready-made Linux kernel from
Compile the kernel. Unfortunately, the information on kernel compilation is lacking. The above two reasons have written this paper
Be necessary. I can be confident that this is the most detailed Chinese information in the most detailed kernel compilation. It is worth mentioning that in the process of collecting translation materials, I get the operating system, program design, hardware equipment,
The knowledge of all parties such as network communications, greatly broadening the field of view, and truly learned.
Thanks to all people who contribute to Linux, thank all Linux Chinese websites to promote Linux in China.
Make unremitting efforts, they are the source of me to collect information.
Special thanks to my instructors - Professor Guan Bang and Dr. Gao Bin, are their hard work to make me successfully completed
Graduation Project.
Western Electric University: Li Yuyuan 2001/6/1
Remarks: # ---------- After the heel
## ---------- There is more details
Note ------ Practice results
Chapter 1 Basis of Nuclear Compilation
Introduction to the first quarter
The kernel is the core of an operating system, which is responsible for managing the process, memory, equipment driver, files, and
The network system determines the performance and stability of the system. It is like IO under DOS. Sys and msdos. Integration of sys, I
They can call these two files in the core of DOS. Linux also has its core, usually in the root directory, one called VM
Linuz file. We use this file to control our entire PC, including peripheral equipment and hard disk, CD-
ROM, sound card, etc. Simply put, the core is the operating system itself. No, it is like an unattended home, no
Some people will maintain this movement. A stable home requires a very useful owner that can be interrupted:
The brain also needs a very efficient core, which is the operating system. Therefore, the core is maintained throughout the system.
The essential.
An important feature of Linux is the disclosure of its source code, all kernel source programs can be in / usr / src /
Looking down under Linux, most of the applications are also designed with GPL, you can get the corresponding source process
code. Any software engineer can join the code you think of excellent, thereby triggeting a clear
The advantage is the rapid rise of Linux repair vulnerabilities and the utilization of the latest software technology. The kernel of Linux is this
The most direct representative of some characteristics.
Imagine, what does the source of the kernel do? First, we can understand how the system is
work. Through the password source code, we can understand the system's working principle, which is simply in Windows.
Night. Second, we can make the system, the measurement, and customize the system that is suitable for you.
Rebate the kernel. What is the situation under Windows? I believe that many people are more and more huge windows.
Inexplicably. Again, we can modify the kernel to meet your needs. what does this mean? No
Wrong, it is equivalent to developing an operating system, but most of the work is already done, what you have to do is
To increase and implement the features you need. Under Windows, unless you are a core technician of Microsoft, otherwise it will not
I am thinking about it.
First introduce the option to compile the core, I hope to eliminate the mysterious feelings of the kernel.
1. Code maturity level
2 .. Processor Types and Features
3. Support for modules
4. Basic choice
5. Plug and play support
6. Block equipment support
7. Network Options
8. Telephone support
9. Support for SCSI equipment
10.I2O interface adapter
11. Network equipment support
12. Configure amateur radio broadcasts
13. Infrared support
14.ISDN's file system
15. Old-type CD-ROM type (optical drive of non-IDE interface)
16. Character device
17.USB support
18. File system
19. Console driver
20. Sound card driver
21. Keernel Hacking
Second section core version
Since Linux's source program is completely disclosed, anyone can modify and release it for the kernel as long as the GPL is followed. The development of Linux is a market model (Bazaar, with cathedral - church model - corresponding
To ensure that these disorderly development processes can be performed in an orderly manner, Linux uses a double tree system. A tree is stable
Stable Tree, another tree is a nonstal stable tree or developing a tree (developm
ENT Tree). Some new features, experimental improvements, etc. will be carried out in the development tree. If in the development tree
The improvement of doing can also be applied to stabilization trees, then after the test is tested in the development tree, the same will be performed in the stable tree.
improvement of. Once the development tree has been sufficiently developing, the development tree will become a new stable tree. The number of developments is reflected
In the version number of the source program; the form of the source program version is x.y.z: For stable trees, Y is an even number;
When the tree, Y is better than the corresponding stable tree (so, odd). OK is to check in as "root",
Then CD to / USR / SRC. Uname -r This instruction will display the version. Update of the kernel version can be accessed TTP: //www.kernel.org/>. Section III Compilation Cause As a free software, Linux has been continually updated with the support of the majority of enthusiasts. New core revision The old kernel's bug has increased many new features. If the user wants to use these new features, or want to The system is systematically customizes a more efficient, more stable kernel, requiring the kernel. Typically, the updated core will support more hardware, with better process management capabilities, run faster, more stable. Type, and generally fix many vulnerabilities found in the old release, and often select the system kernel for the upgrade update. The need for Linux users. In order to properly set the kernel compilation configuration option, only the code required by the system is compiled, the general master There are four considerations below: --- ourselves to customize the built kernel run faster (with less code) --- System will have more memory (the kernel section will not be swapped into virtual memory) --- Unexpected function compiling into the kernel may increase the vulnerability utilized by the system attacker --- Compile some function to module mode to be slower than compiled into the kernel The above is for mature Linux kits, such as Redhat Linux, my purpose is to build an embedded Linux operating system. Preparation is also the way. Section 4 Preparation Work The first part of the new version kernel gets and updates The official website published by the Linux kernel version is < Http://www.kernel.org/>, the major FTPs in China can generally To find some version of the kernel. There are two forms of the release of the new version of the kernel, one is a complete kernel version, The other is a patch file, ie patch. The complete kernel version is relatively large, such as Linux-2.4.0-Test8.tar.b Z2 is 18m more. The complete kernel version is generally .tar.gz (.tgz) file or .bz2 file, both It is a file using Gzip or BZIP2 to compress and need to be unzipped when used. Patch file is relatively small, general Only dozens of k to hundreds k, very little will exceed 1m. But the Patch file is for a specific version, you need to find it. The corresponding version can be used. Compile the kernel requires root privileges. Copy the inner copy to / usr / src / under the upgrade (Take the Linux-2.2.16Tar.gz of 2.2.16), command is #CP Linux-2.2.16Tar.gz / USR / SRC First look at the content of the current / usr / src, note that there is a Linux symbolic link, it points to a similar to Linux -2.2.14 (corresponding to the current list of kernel version numbers used). First delete this link: #CD / USR / SRC #RM -F Linux Now extract the downloaded source program file. If the downloaded .tar.gz (.tgz) file, use the command: #tar -xzvf linux-2.2.16tar.gz If downloaded is .bz2 file, such as Linux-2.2.16Tar.bz2, use command # bzip2 -d Linux-2.2.16tar.bz2 #tar -xvf linux-2.2.16tar Now let's take a look at the content under / usr / src, I found that now has a directory called Linux, it is needed. The source program of the upgrade to the version of the kernel. Remember the link named Linux? The reason why the link is used It is to prevent the original version kernel source process to cover the source program of the original version of the core when the kernel is upgraded. Now also need deal with: #mv Linux Linux-2.2.16 #LN -s Linux-2.2.16 Linux If you also downloaded a Patch file, such as PATCH-2.2.16, you can perform Patch operation (below, Patch- 2.2.16 is already in the / usr / src directory, otherwise you need to copy the file to / usr / src first): #PATCH -P0 The second part prepares the master board and related hardware instruction manual In fact, it is not too detailed. Just know which type of hardware belongs to your hardware. For example: there is a SCSI card, Then you have to know the name of this card, there is a CD-ROM, you know which brand of this CD-ROM drive is standard. The quasi-Ide / ATAPI interface, or another exclusive interface card? Or, whether the host version supports Triton chip (through There are often more than 586 computers that can help us, making it clear and easy. Therefore, no matter what manual you have, ready. Even now, it will still be used in the future (X-W The manual of the card is displayed when Indow System is displayed). The third part checks the IRQ setting of the sound card and its species If you are equipped with a sound card, in addition to knowing the type of the card (for example, Sound Blaster), you need to know this card. IRQ address. In general, the IRQ address of the Luga is 5 or 7 and the IO address is 220. DMA is L, but sometimes The same sound card may have different settings. Because in the later option, you will be filled in these numbers. Part IV Compilation Core Hardware Demand When compiling the core, make sure your RAM is preferably 8MB above, otherwise it may be very slow and there are many problems, remember to check See if swap is open (with free instructions). In addition, it is best not to overclock, otherwise it is likely to happen. 11 The error makes the core stopped, and the compilation core is like the compiler, it is only because There are too many programs that make up the core, so we can be careful as possible. Chapter II Process Overview of compiled processes: Compilation start ----- make mrproperty; check the required connection Configure core Compilation core Edit /etc/lilo.conf Restart the new core Restart the machine Discover and repair the fault (see my article carefully, there should be not much problem) The first section is compiled The first command that usually run is: #CD / USR / SRC / Linux #make mrproperty This command ensures that there is no incorrect target in the source code directory .o file and the mutual dependence of the file. If you use just downloaded The complete source program package is compiled, and this step can be omitted. And if these source programs have been used multiple times, they use these source programs. So, you should first run this command. Make sure the ASM, Linux, and SCSIs such as / usr / include / directory are the kernel source code to which you want to upgrade. it They have chained the real, the computer architecture (for the PC, using the system knot for the PC The real include subdirectory required for I386). Such as: ASM pointing / usr / src / linux / include / asm -i386 and so on. If there is no such link, you need to manually create, follow the steps below: # cd / usr / include # rm -r ASM Linux SCSI # ln -s / usr / src / linux / include / ASM-i386 ASM # ln -s / usr / src / linux / include / linux linux # ln -s / usr / src / linux / include / SCSI SCSI This is a very important part of the configuration. Remove the ASM, Linux and SCSI links under / usr / include links The new link points to the directory of the same name in the new kernel source code directory. These header files contain a guarantee core The important header files needed correctly on the system. Also, I also created a name in the "more" place under / usr / src. One of the reasons for linking for Linux. Once all things, go to / usr / src / linux. Now you may want to stop reading the document file, actually If you have some special hardware, or several optical drive drives need you to do it yourself, they usually do this, when When booting, these drivers will give a warning, which does not work less as usual, reading the extension is .txt .h. C file. Usually I found them with common and easy configuration. If you don't want to take risks, you don't have to do it. Remember you Moiler can unwave the TAR file (or install the .rpm file again) to restore the file before recovering. The second quarter configuration kernel core content The next core configuration process is more cumbersome, but the appropriate configuration is directly related to the running Linux running, It is necessary to understand the settings of the option. Configuring the kernel can use one of the following commands as needed: #make config (Based on the most traditional configuration interface of the text, not recommended) #make menuConfig (Based on the configuration interface of the text menu, the character terminal is recommended, you must have NCURSE S-DEV and TK4-DEV libraries) #make Xconfig (Recommended User Based on Graphics Window Mode) #make oldconfig (If you only want to modify some small places on the basis of the original kernel configuration, you will save a lot of trouble. ) If you can't use XWindow, you will use make menuconfig. Although the interface is better than the above Point, there is much better than make config. When you select the appropriate configuration, there are three options, which represent the meaning of each other as follows: Y - compile this function into the kernel N-- Do not compile this function into the kernel M - compile this function into modules that can be dynamically inserted into the kernel during need. There is a bracket before every option, but some of the brackets are angry brackets, and there is a cracker. Space When the key is selected, it can be found that in the middle brackets, or "*", and the anglene brackets can be empty, "*" and "m". This means that the items corresponding to the former are either, either compile into the kernel; the latter will choose the same, can be compiled Piece. The content of parentheses is to select an item in several options. During compiling the kernel, the most annoying thing is that this step is working, it is unclear how to choose these Options. In fact, most of the options can use their default values, only small parts need to be different depending on the user. Need to choose. The principle of choosing is partial function code that will be far from other parts of the kernel and not often used. Translation becomes the loadable module, which facilitates the reduction of the length of the kernel, reducing the memory of kernel consumption, simplifies the corresponding The impact of the kernel during the environment; there is no need to choose the function; close and often used by the kernel The component code is compiled directly into the kernel. The following is an introduction to the options. 1. Code Maturity Level Options Code Mature Level There is only one: prompt for development and / or ibPlete code / drivers, if you want to test the functionality that is still in the experimental phase, such as KHTTPD, IPv6, etc., you must choose Y. Otherwise, it can be selected as N. In the world of Linux, there are many people to develop support for Driver and strengthen its core every day. However, some Driver has not yet entered a stable stage. But the author welcomes everyone else to test these Driver and propose some BUGS. This question is to say, some Drive is still testing, ask if you want to select these DRI VE or support code. If you typed Y, some things will appear in the test to give you a choice. (Like Java's program code and PCI Bridge), Type N. 2. Processor Type and Features processor type and features #processor family (386, 486 / CX486, 586 / K5 / 5X86 / 6X86, Pentium / K6 / TSC, PPRO / 6X8 6MX) [PPRO / 6X86MX] ----- - Select the processor type, default is PPRO / 6X86MX. It will be optimized for each CPU, let it run fast. In general, there is no significant impact on the correct CPU (especially the choice 386, which may be small, but its speed may slow down). So, it is best to know which kind of your CPU is. However, if your GCC compiler is 2.7.0. Then only 3 86 or 486 can be selected. #High Memory Support ------ The maximum number of memory supported by the kernel is default to 1G. You can support 4G, 6.4g, usually not available. #Math emulation ------ This interrogation requires a L1NUX core analog math floating point assembly. If there are 486dx, AMD, and Pentium machines, this option is not to be selected because they have built-in floating point arithduates. The coordinator is the pet in the 386 era, and now it is no longer available. However, for those who have built floating point computers, this option will not make the built-in floating point assembled. But it will increase the core about 45KB. #Mttr (Memory Type Range Register) Support ------ Select this option to manage the / proc / mtrr file for MTRR for x server. At the same time, it is used to start the special features of Pentinum Pro and Pentinum II. If you are not using this CPU, you will choose N, otherwise it is just make the kernel. #SYMMETRIC MULTI-Processing Support ------ Symmetric multi-process support. Unless there are multiple CPUs, it will not be selected. 3. Loadable Module Support support for modules. First, learn about the knowledge about the module. The module is like some things you specially inserted into the core. If there is a small network and sometimes you want to use (but not often), maybe you want to compile the NIC into a module. Using this module, the machine must run and access modules under / libs, meaning the driver (IDE, SCSI, etc.), NF S support network cards), file system (usually EXT2 but can also be NFS) and core type (It is best that ELF) must be compiled in the kernel and cannot be a module. The module only works when the core boot is only, and the driver (to network) is accessed, and the file system is installed. These files must be compiled within the core, otherwise the startup partition will be installed. If you install a startup partition and network, you need a network system file, and a network card compiled. Why use modules? Modularization makes the core more concise, it reduces the core release of a large amount of protected space. The installation and unloading of the module is used for repeatable allocation. If you turn on the machine with more than 90% of the time to use a module, compile it. Using this type of module is a waste of memory. Remember, the core is running in the protection space, but the module is not. So, I don't often use my device, compile it into EXT2, IDE, and ELF. The NIC has been using the network card, such as A.out, Java, Floppy, ISO9960, MSDOS, Minix, VFAT, SMB, NFS, SMCULTRA (Ethern etcard), Serial, Printer, Sound, PPP, etc. . Many of them are just in this or that a few minutes. Strictly said that this will make the core increase a lot and reduce its execution speed. At this time, we can compile these drivers into one - one module. When you need to use the insmod instruction to join the core, you can also remove it from the core when you need it, or use it. LSMOD looks at the modules currently loaded. There are three items: #enable loadable module support ------ This item should be required unless you are ready to compile all the required content. #Set Version Information On All Module Symbols ------ Usually, after we update the core version, the module is re-compiled. This option allows you to use the previous module without updating the compilation module. You can don't choose it. But if you choose Y, follow it, you must have a Genksyms program (available with the WHEREIS directive to see if this program). #Kernel module loader ------ Let the kernel have the ability to load the required module when starting, suggesting. Note: The fs of Partition upon Mount, Device Driver, remember to compile R into Kernel, can't make it Modules. Please don't exaggerate to in order to completely modulate, I forget to enter the EXT2FS and IDE DIRVER Compiler in Kernel. 4. General Setup Ordinary Properties Settings This part is very content, usually using the default settings. Here are some options that are often used: #Networking Support ------ Network Support. Because in Linux, there is a virtual network device (1OKBAC K), you can simulate the entire network. Moreover, - some programs need it. Must, no NIC also suggest you choose. Note: Select N, then 7. (Networking Options Network Options) and 11. (NetWork Device Support Network Device Support) will not appear. #LIMIT MEMORY TO LOW 16MB ------ Most people this option N. In addition to the host board, there is no way to process more than 16MB of memory, or more than 16MB of memory but often have some very strange problems. At this time, you can try this option. Some motherboards are not very good to over 16MB of memory, usually these are old motherboards. Also, in the description file, it is mentioned that if the memory exceeds 64MB, use LILO plus some parameters to Linux core (example: MEM = 80m), and add Cache on your motherboard to 512K. In this way, the overall efficiency can be improved. #PCI Support ------ PCI support. If the card of the PCI is used, it is certain. #PCI BIOS Support ------ Host board has a PCI interface. If so, you must answer Y. PCI is the main interface of the 586 computer (also on the 486 motherboard), this interface allows you to insert a so-called PCI display card or a PCI's network card, etc. This interface is the main trend of the computer, so if there is a PCI slot. You can choose Y. In addition to some old but old but supports PCI, you can hang the core because of this option because this option is allowed. #PCI Access Mode (BIOS, Direct, Any) [Any] ------ Sets the way Linux probes the PCI device. Choose "BIOS", Linux will use BIOS; select "Direct", Linux will not pass BIOS; select "Any", Linux will directly detect PCI devices, if fails, use BIOS. #Support for Hot-Pluggabel Devices ------ hot-swappable device support. Support is not too good, you can not choose. # PCMCIA / Cardbus Support ------ PCMCIA / Cardbus support. There is a PCMCIA. #PCI bridge optimization (exPerimental) ------ In some support BIOS, it can make access speed accelerate, suggestions are Y. # Backward-compatible / proc / pci ------ Device is compatible, look at Help yourself. #System V IPC If you want to compile DOSEMU (DOS Simulator), this option must be selected. It is a function library that allows each program (Process) and can exchange data from each other, and some system calls, no, a lot The program will not be executed. #Bsd process accounting ------ #sysctl support ------ Unless you have less memory, you should start this feature, enable this option, the kernel will be 8K, but you can let you change the kernel directly The parameters do not have to reboot. #Keernel support for a.out binaries ------ a. The OUT execution file is an old ancient executable code for comparative early UNIX systems. Linux was originally also using this code to execute the program, until the executable code of the ELF format, more Yu more program code becomes an ELF code with the advantages of the ELF format. It will be necessary to completely replace A. OUT format of executable code. However, because many programs have not been replaced, I have to choose Y, wait for a day, all the programs become ELF's world, then disable. #Kernel support for Linux / Intel Elf Binaries ----- By, this is the above, because the current GCC-2.7.0 has supported ELF, if this is not selected, it may be used Quite a larger program cannot be executed. Note: Compiling modules into ELF and compile support ELF binary. Do not compile appropriate support '' gotcha '' is wise, if the machine structure is Pentium or 486 you will get an efficient code, but a 386 core will run in 32-bit compatible clone; a Pentium core will not. For most machines, an emergency start disk is made, preferably compiled at 386, and 386 does not run the core compiled under Pentium. In addition, you must pay attention to Modules at the same time, otherwise, when you use INSMOD to load A.out / ELF Modules when you use Insmod to load A.out / ELF Modules, there is a CATCH / 22 situation. If your system is mainly ELF and you will only need to use A.out, you can compile A.out support to modules, otherwise you'd better put it directly into the kernel. If you haven't entered the ELF century, you can directly support the ELF when C Ompiler Kernel. #Keernel support for java binaries ---- This is a product that is doing tests, but if you want to write a program about Java, I hope it can run on Linux machines. Then, you can choose to make it a module or directly into the core. #Power Management Support ------ Power Management Support. ## Advanced Power Management BIOS Support ------ Advanced Power Management BIOS Support. This is usually used on a laptop, if you have APM's BIOS, support power-saving equipment (with battery), then you can choose this, the average person is N to avoid Some problems that may happen. There are 8 options. #Parallel port support ------ serial port support. 5. Plug and Play Configuration Plug and Play Support Linux For Plug and Play, you are not as good as Windows, so in some cases, you will have conflicts with other devices (I / O, DMA, IRQ, etc.). This option has no effect on the PCI device, because they are born to PNP devices. . #Plug and play support ------ Select "Y", the kernel will automatically configure plug and play device. It turns out that PNP has this meaning. # Isa plug and play support ------ Select "Y", the kernel will automatically configure the iSA bus's ready-to-use device. 6. Block Devices block equipment supports this to choose your own device: #NORMAL PC FLOPPY DISK Support (config_blk_dev_fd) [Y / M / N /?] ------ Ordinary PC floppy support. #ENCED IDE / MFM / RLL Disk / CDROM / TAPE / FLOPPY Support ------ Select "Y", the kernel will provide support for enhanced IDE hard drives, CDROM, and tape drives. When the hard disk is not done, the general IDE card and BIOS can only support hard drives that are less than 540 MB. Not only that, only two hard drives can only be supported. But today's hard drive is not moving 1GB, this year's mainstream is 30 ~ 50g, and often more than one two hard drives. As such, the new motherboard begins to support the enhanced IDE boundaries to support 540MB of hard drives. So, if your IDE interface is enhanced, please select Y, the options for the eight part IDE interface appear, which speeds up your IDE interface and do some of the chips. But if your hard drive or disc is all SCSI interface, then select N to skip the following options. # uSE OLD Disk-Only Driver on Primary Interface ------ is usually selected N. Because we have its new Drivers available. The meaning of this option means that if your IDE interface is very old and old. Then, you can use this Drives to drive the old IDE interface (you can load two hard drives; or a hard drive, a CD). Today's popular enhanced IDE has two interfaces that can be connected to four hard drives. We will have Driver to support it later. #Include IDE / atapi CDROM Support ------ If you want the core to support the optical drive of the IDE / ATAPI, select Y. If there is a CD-ROM, but it is attached to the interface card, you must pick up the cable on the exclusive interface card; or receive the sound card, then this option also needs to choose N, then we will have non-IDE CD-ROM drive The label makes us choose. The current optical drive is usually the IDE / ATAPI, so this option is usually Y. #Support Removable IDE Interfaces (PCMCIA) ------ This option is all whose people are all N unless you have PCMCIA, this is usually what you get on your laptop. PCMCIA is an organization that is previously designed memory modules. But now they have set a standard for PC Cards and is widely used on a computer 1APT AP. Not only have the so-called PCMCIA hard drive, but even network cards, SCSI cards, etc., but most people do not need this option. After this option is selected, the following is the LINUX core to fix or strengthen it. # CMD640 Chipset Bugfix / Support ----------86 and 586 The host boards are all chips with CMD640, which is the combination of Neptune chips and SIS chips. However, this chip has its shortcomings, in many cases, it will cause the data loss and errors. If you choose this, Linux core will be careful about these errors and correct it. Moreover, it opens support for the two IDE interfaces. However, in its description file, if your motherboard does not have a PCI interface, only the VESA bus interface, you want to have this feature, you must pass some parameters to the core (IDEO = CMD640_VLB). If you are not sure, choose Y. # Cmd640 enhanced support ------ Generally, for the access speed of the hard disk, there is a so-called PIO MODES value setting. Today's IDE interface and BIOS should detect the correct hard disk PIO mode value. . The higher the value of this value indicates the speed of the hard disk. However, some host boards of B10S are still legged, and they cannot catch a relatively high Pio Mode value. In this way, it cannot play the efficiency of the entire hard disk. This setting tells the reader: If your IDE interface is the CMD640-based interface, your BIOS does not catch the correct Pio mode value, then this option can automatically find the correct Pio Mode value of the hard disk. # RZ1000 ChipSet Bugfix / Support ---- This option is just like the CMD640 in front. However, its chip is the RZ1000 chip, which is a chip mainly based on Neptune chip, while a target, there are many main boards of 486 and 586 are using it. You can check the manual of the motherboard or the instructions of the IDE interface card. The file mentioned on the file, selecting this will reduce some speed, but the data can be 100%. #Intel 82371 PIIX (Triton I / II) DMA Support ------ For 586 Pentium Computer Memory Access DMA and saves your CPU time. When there is no DMA, you need to consume a lot of CPU time when you have any DMA. In this way, the CPU is occupied, and it does not fully exert its efficacy. Later, after the DMA came, the hard disk reads by Triton or other chip with the IDE interface that supports the DMA, and communicates directly with them, and saves a lot of CPU time, but this must be supported by your hard drive and host board. The chip of the DMA IDE interface, saves a lot of CPU time directly with them. But this must be your hard disk and host boards to support DMA Mode simultaneously. ## otER IDE chipset support ------ If this option is selected, the following six other chips or labels will appear for you to choose from. * NOte: most of these also require special kernel boot paraaeters ALI M14xx support DTC-2278 support Holtek HT65608 support PROMISE DC4030 support QDI QD6580 support UMC 8672 support above the six brands of chips used in accordance with the hardware, but they have a common Features is to pass some parameters to the core. If you can't find your chip, then it doesn't matter. These options are only optimized for these chips. ## Additional Block Devices Other block devices #Loopback Device Support ------ Most people this option is N because there is no need. The meaning of this option means that one file can be hung into a file system. If you want to burn the disc, then you can see if this file meets the contents of the IS09660 file system before you burn a file, whether you comply with your needs. Moreover, this file system can be protected. However, if you want to do this, you must have the latest Mount programs, version is above version 2.5X. And if you want to protect this file system, you must have DES.1.tar.gz. Note: This is not related to the network. #Multlnle devices driver support ----- This option allows the entire hard disk partition into a single-unique block device, you must have MD035. TGZ this program. And keep your hard drive backup before doing this because it is still in the test phase. The average person is selected for this option. #RAM Disk Support ------ If the RAMDRIVE program under DOS should be able to understand the meaning of this option. It can use memory as a hard disk to access, like a general hard disk, you can format it, or put some files in front. Then, when you shut down these data, it will go. If RAM is large enough, you can consider playing this option, but the average people do not need. #Xt hard disk support ------ Supports XT's antique hard drive, this is something IBM computer era, if you have this old and old hard drive. So you can make it core or have a module. Most people this options are selected n. #Compaq smart2 support ------ #Mulex DAC960 / DAC1100 PCI RAID Controller Support ---- RAID image. #Logical Volume Manager (LVM) Support ------ Logical Volume Management Support. #Multiple devices driver support ------ Multi-device driver support. #RAM Disk Support ------ RAM disk support. 7. Networking Options Network options here are configured with a network protocol. #Packet socket ------ Select "Y", some applications will use the Packet protocol to communicate with the network device directly without the other intermediaries in the kernel. # Kernel / user network link driver ------ This is the program code in the test, and the average person does not need. According to its description, it allows two-way communication between the core, module or the program. If you want to use Arpd, this program code is to add the core. # TCP / IP Networking ------ Select "Y", the kernel will support the TCP / IP protocol. This option does not choose Y, even if there is no network card, or there is no connection to the network, there is still a so-called Lookback device on Linux and some programs require this option. In the description file, if you do not open this setting, the X-Window System may have a problem (returning to it also requires TCP / IP). #Network FireWalls ------ Select "Y", the kernel will support the firewall. FireWalls is a firewall in English. Today, the network is getting more and more developed, network security considerations are also more important. Finding a computer on the LAN to protect your consideration is also more and more. You can find a computer on a local area to protect your computer. Such a result is that all external computers must be consent through this Fire Walls computers if they want to connect into the internal computer. So, if you want this computer with the function of filtering the network, then this option is selected as Y. Moreover, waiting for an IP FireWalling option to choose Y; but the following forwarding / gat ewaying is selected, so that it can make it normal. Most of the people choose N. #NetWork alasing ------ Allows multiple IP addresses. #Ip: forwarding / gatewaying ------ and Firewall, this option is used to guide the network. A Gateway (that is, Router), to help guide data transfer between two networks. This machine must have two network cards, connect two identical networks, and do work in the network. If this option is selected, the table illustrates this to be responsible for the router. So, there must be two network cards. Another situation is that if you have MODEM (through SLIP and PPP Protocol) and network card, use them to connect to the Internet. You can also perform IP-ROUTING services as if you do this, you also need to open this option. #Ip: multicasting ------ so-called multicasting is a group broadcast, which is the protocol at the video conference. If you want to send a network package (network data), the same data will be sent to ten Machine. You can send ten machines for ten machines in a row, or send it at the same time, and then let ten machines receive at the same time. Of course, the latter is better than the former, because the video conference requires that it is best to receive the same information at the same time, so if you have a similar need, this option will open. At the same time, you must also find relevant software. #Ip: Accounting ------ If you open this option, you can see the system for the entire network under / proc / net. So the general people are selected y. Moreover, if your design uses this Linux machine as Router, readers can get many information about network LP control and its delivery scenarios because this option. However, you must select the PROC system in the selection (in fact, the Proc file system must be selected, no choice of many programs will not be used!) #Ip: aliasing support ------ Maybe you have only one network card, but With this setting, you can have several IP addresses. Suppose you already have an LP address, you also want to add another IP address, then you can do it according to the following programs. Type: SunlyY: / # ifconfig eth0: 0 Other IP addresses (this IP address cannot be repeated with other machines) SUNLYY: / # route-add-host other IP address dev eth0: 0 So you can have Two IP addresses. Of course, if you want to remove this IP address, you can click on the key: sunslyy: / # ifconfig eth0: 0- IP address, you can remove the added IP address. However, before using this option, the ALISING NET WORK option in front is also available. #Ip: PC / TCP Compatibility Mode ------ Most people choose n. Unless there is difficult to connect to the NCSA-TCP / IP software under DOS, or if there is an incompatible situation. At this time, you can try this option to see if you can solve this problem. #Ip reverse arp ------ If your Linux wants to provide Bootd service, it is to make no hard disk or floppy disk can be turned on and on the network, as long as they have a network card to connect to the network. At this point, you must perform a network card that means that the RARP is called RARP. However, there is no such thing in general, so I answer n. #Ip: Disable path Mtu Discovery ------ Most people this option is to select N. Unless it is found that the Telnet program under DOS is discovered to the Linux machine. This is a number of people's problems. If the Telnet program under DOS cannot be connected to Linux, in addition to the NSYSUTEL's Teln et program can be solved, you can also choose Y. MTU (Maximal Transfer Unit) is called the largest transmission unit, saying that we will send it to the network. The Path MTUD Iscov Ery means that when Linux finds that some machines are transmitted, we will send network information to it. If you can increase the speed of the network, most of us choose N, which is enable. #Ip: DORP SOURCE ROUTED FRAMES ----- Usually we have a network package, no matter whether it is lost, but in the TCP / IP protocol, you can set the machine that will help you bypass An news that this package has been delivered. However, this will lead to network security problems, so few use, generally, we choose Y. #Ip: Allow Large Windows (Not Recommended IF <16MB of Memory =) ------ If there is more than 16MB of memory, it is recommended to open this option to increase the speed of the transmission. Data to be presented under general long-distance network transmission can be stored first in the buffer, wait until the other party's response will pass again. Therefore, you must have memory as a buffer. #The ipx protocol ----- ipx is a transmission protocol, which is a network protocol of Novell, usually under the area or Windows. If you want Novell's machine resource sharing (for example, with their printer or a hard drive), then this option should be Y. As for the format of access files, it is the format of NCPFS, and this file system is selected later to support this file system. As a result, you can access their data through Novell's IPX Communication Association. Or, you want to use the IPX protocol from Dosemu (DOS simulator), then choose it in this. #Full Internal IPX Network ------ provides a complete internal IPX network, the preset option is N, because it may make some applications (RIP / SAP) to be dropped. #Appletalk DDP ---- AppleTalk is a communication protocol exists on the Apple machine, which is used by Apple's network. With AppleTalk, each other's computer can print and share files. If you need to connect to this network, you can open this option, so you can join them to communicate with these computers, or make this module. #Amateur Radio AX.25 Level2 ------ #bridging (Experimental) ------ Selecting these two bridges that make Linux into a network, used to communicate between different networks, usually The average person does not need. #QOS and / or fair queueing (Service Quality Fair Scheduling) is also supported, and there is KHTTPD, but these are still in the experimental phase. 8. Telephony Support Phone Support is originally Linux to support phone card so you can provide voice service using ordinary phones on IP. Remember, phone cards can have no relationship with MODEM. 9. SCSI Support SCSI Device Support If you have a SCSI device, answer y. Now general PC does not have SCSI. Then there will be prompt requirements for further information, like you want to support the optical drive, hard disk, and you use the SCSI interface card. See SCSI-HOWTO for a more detailed description. If your boot partition is a SCSI device, don't choose SCSI module support. After the general SCSI is the SCSI low-level device driver. Reeselect again that the module is only used in the device that is not in the starting partition. #SCSI Disk Support ------ Refers to the hard disk, if there is a SCSI hard disk, then you will choose this option. #SCSI Tape Support ------ Refers to a tape drive, if you have SCSI tape drive, then you will choose this option. #SCSI CDROM Support ------ Refers to CDROM, if you have a SCSIDA drive, this must be selected. #SCSI Generic Support ----- Refers to other things about SCSI, maybe you have a SCSI scanner or a burner, or other related SCSI, you will choose this. Moreover, in addition to this, you must also prepare software on these equipments. ## Some SCSI Devices (E.G. CD Jukebox) Support Multiple Luns #Probe A11 Luns On Each SCSI Device ------ Usually, most people who choose this option will not be selected. We will give an example, if your SCSI drive is the kind of multi-piece, it is a CD-ROM, but you can put a few pieces of discs. This kind of we call LUN. #Verbose scsi error reporting (kernel size = 12K) ------ If you think your SCSI hardware is equipped, you want to know about the error message it appears. Then you can select this option Y, Linux core will tell you about your SCSI (if any). However, it will increase the core about 12kb. ## SCSI Low-Level Drivers The following a total of 30 SCSI cards, you can choose the SCSI card according to the needs. c AIA1542 support AdaPtec AIHA1740 support AdaDtec AHA274X / 284X / 294X support AdaPte 7000FASST SCSI support AdaPtec AHA152X / 2825 support Advansys SCSI support Always IN2000 SCSI support Advansys SCSI support Always IN2000 scsi support AM53 / 79C974 PCI SCSI sppport Buslogic SCSI Support DTC3180 / 3280 SCSI support EATA ISA / EISA (DPT PM2011 / 021/012/022/122/322) Support Eata-DMA (DPT, NEC, AT & T, SNI, AST, 01ivetti, Alphatronix) Support EATA-PIO (OLD DPT PM2001, PM2012A) Support Future Domain 16xx SCSI support Generic NCR5380 / 53c400 SCSI support NCR53c405a SCSI support NCR53c7,8xx SCSI support NCR53CSXX SCSI support IOMEGA Parallel Port ZIP drive SCSI support PAS16 SCSI SUpport Qlogic FAS SCSI support Qlogic lSP SCSI support Seagate ST-02 and future Domain TMC-8xx SCSI Support TRANTOR T128 / T128F / T228 SCSI Support Ultrastor SCSI Support 10. I2O Device Support This is not clear, help in the help, this requires the I2O interface adapter to support, in the Intelligent Input / Output (I2O) system interface Use, it is also hardware, not selected. 11. Network Device Support Network Device Support above the selected protocol, now the device is now very much. Fortunately, there is a large class of ARCNET (10 or 100 mbit), Ethernet (1000Mbit), Wireless Lan (Non-Hamrad IO), Token Ring Device, Wan Interface, PCMCIA NetWork Device Support Patience, generally speaking, you can find your own network card. If not, you have to go to the manufacturer to drive. If this option is not open, then the following options will not appear. It is a device that chooses a network card or a network. For example, PLIP, PPP, SLIP, as well as a wide variety of network cards, so this option is usually selected y. #Dummy net driver support ------ If there is a transmission protocol of SLIP or PPP, then open this. Because it won't make your Linux core increase. Second, for some applications, it allows us to simulate TCP / IP environments more like TCP / IP environments. If you don't have a SLIP or PPP protocol, you don't have to open it. #EQL (SERIAL LINE LOAD BALANCING) Support ------ If there are two modems, two telephone lines, and with SLIP or PPP protocols, you can use this Driver to make your Modem twice a speed. Of course, there must be the same device on the other end of the network. #PLIP (Parallel Port) Support ------ Only on-plane, it is an interface that uses the printer (packed interface), then utilizing point-to-point to simulate TCP / IP environments. It and SLIP / PPP all belong to point-to-point communication, you can connect two computers to the connection interface of the printer, then join this communication protocol. In this way, these two computers are equal to a small network. However, if the computer provides print services, this option is best not to open, or there may be problems (because all use parallel interfaces). #Ppp (point-to-point) Support ------ Point-to-point protocol, in recent years, the PPP protocol has slowly replaced SLIP, because the PPP protocol can get the same IP address, and SLIP has been Changing the IP address, in many aspects, PPP is better than the SLIP protocol. #SLIP (Serial Line) Support ---- This is a communication protocol that is commonly used by the Modem family. You must get an IP address through a Server (called ISP), then use this IP address to simulate Ethernet, use Programs for TCP / IP. ## Ethernet (10 or 100Mbit) If you pick up the campus network at school and use the web card, then this option must be selected, otherwise the following will not appear. Or you have a network card, then you should also choose Y. After that, there will be many network cards to let you choose. As usually used, it is a NE2000 compatible card. # 3COM cards #amd Lance and PCNET (AT1500 and NE2100) Support #western Digital / SMC cards ## Other isa cards ------ select Y, the following is listed on the ISA's network card. Includes compatible cards for NE2000. Cabletron E21xx support DEPCA, DE10x, DE200, DE201, DE202, DE422 support EtherWORKS 3 (DE203, DE204, DE205) support EtherExpress 16 support HP PCLAN (27247B and 27252A) support HP PCLAN (27245 and other 27xxx series) support HP 10 / 100VG PCLAN (ISA, EISA, PCI) Support NE2000 / NE1000 Support SK. G16 Support # Eisa, VLB, PCI and On Board Controllers ------ Select the network card, including that directly attached to the host board. If you choose Y, you will list other network cards to make you choose, which are rarely used for the average person. So most people are selected. #Pocket and portable adaptors ------ usually used on portable computers, this type of network card (pocket type), because the volume is very convenient to install and remove, so notebook related computers This network card is often used. #Token Ring Driver Support ---- Token Ring is a network on the IBM computer. It is called token ring network, and the Ethernet is very similar. If you want to use the Token Ring network card to connect to this network, then choose Y, the average person chooses N. #Arcnet support ------ This is also a network card, usually the average person is not used, so I choose N. If you have this network card, please see Documentation / Networking / Arcnet. TXT instructions. Pixabay: There is no Mount ISO file to modify it 12. Amateur Radio Support Amateur Wireless Broadcasting Can be used to start basic support for wireless networks, current wireless networks can transmit data through public frequency, if You have such a device to be enabled, please refer to the AX25 and Ham Howto documentation. 13. Irda (Infrared) Support Infrared Support 14. Isdn Subsystem If you use ISDN to access the Internet, this is indispensable. ISDN (Integrated Services Digital NetWor k), its Chinese name is a comprehensive digital service network, is a use of telephone lines, putting sound, movie information in numbers The digital network transmitted by the way, it requires a telephone switch device to support ISDN, which usually requires a telecommunications bureau to do Pack, for those working at home, ISDN may be the most comfortable and cheapest way, so there is more increasingly People use it. However, unless it is a company, otherwise ordinary people will rarely use ISDN, so this part of the option is large Choose N. If you choose Y, some questions about ISDN will appear. If you need to use ISDN, you can go Take a look at the introduction of the magazine. As long as it is a magazine related to the network, it should be introduced. Need to enable Support Synchr ONOUS PPP option (refer to PPP over isdn). 15. Old CD-ROM Drivers (Not SCSI, IDE) Non-SCSI / IDE Oral If you use IDE's CD-ROM, you don't choose. The following is the optical drive that chooses non-IDE / ATAPI and SCSI interfaces, which typically have its own exclusive interface card. Compare the old type of optical drive. If there are these optical drives, this option is to select Y, otherwise n. If you choose N, then Will skip the options for the following CD-ROM drive. Aztech / Orchid / Okano / Wearnes / IXC / CYDROM CDROM Support Goldstar R420 CDROM Support Matsllshita / Panasonic / Creative, Longshine, Teac CDRW Support Mitsllmi (No Xa / Multisession) CDROM Support Mitsumi (Xa / Multisession) CDROM Support Optics Storage DCLPHIN 8000AV CDROM Support Philips / LMS CM206 CDROM Support Sanyo CDR-H94A CDROM SUNNORT Soft configurable CDROM interface Card Support Sony CDU3LA CDROM SUNNORT Sony CDU535 CDROM Support 16. Character Devices Character Equipment The so-called character device typically refers to a device that is processed in characters, such as the terminal is one of them. In principle We are also based on the selection of these options. This content is too much, first use default settings, need If you want it, you will modify it. Let's introduce a big class: 15. Old CD-ROM Drivers (Not SCSI, IDE) Non-SCSI / IDE Oral If you use IDE's CD-ROM, you don't choose. The following is the optical drive that chooses non-IDE / ATAPI and SCSI interfaces, which typically have its own exclusive interface card. Compare the old type of optical drive. If there are these optical drives, this option is to select Y, otherwise n. If you choose N, then Will skip the options for the following CD-ROM drive. Aztech / Orchid / Okano / Wearnes / IXC / CYDROM CDROM Support Goldstar R420 CDROM Support Matsllshita / Panasonic / Creative, Longshine, Teac CDRW Support Mitsllmi (No Xa / Multisession) CDROM Support Mitsumi (Xa / Multisession) CDROM Support Optics Storage DCLPHIN 8000AV CDROM Support Philips / LMS CM206 CDROM Support Sanyo CDR-H94A CDROM SUNNORT Soft configurable CDROM interface Card Support Sony CDU3LA CDROM SUNNORT SONY CDU535 CDROM Support16. Character Devices Character Device The so-called character device typically refers to a device that is processed in characters, such as the terminal is one of them. In principle We are also based on the selection of these options. This content is too much, first use default settings, need If you want it, you will modify it. Let's introduce a big class: #Digiboard PC / XX Support ------ This is a Driver called Digiboard PC / XX card, this card There are many SERIAL ports on the above, generally only two), which can be used to connect a lot of modems. It is often used in the folk BBS stations. If you have something like this, you must choose this Y. Interested readers can Read Documentation / Digiboard. TXT content. #Cyclades async MUX Support ------ 同, this is also a kind of ability to pick up a lot of Serial Port slots. Card driver. #Stallion Multlport Serial Support ------ 同, this is also one of the cards. #SDL RISCOM / 8 Card Support ------ This is also one of the Driver that supports Muti-Serial card. #Parallel printer support ------ There must be a printer or use a person who uses a parallel interface. . Unless it is a printer with serial. Also if you have PLIP, then this item is also available. #Mouse Support ------ Most people do not have to choose Y. Because most people are using serial mice Unless some people use a mouse with an interface card, then this option is to be selected. If you choose Y, it will The interface card used for your Bus mouse will be listed. #Support for user misc device modules ------ Unless you have a so-called touch display or a light pen Waiting for something, otherwise this item is selected. # QiC-02 Tape Support ------ Non-SCSI interface tape machine unless you have, otherwise choose n. #Ftape (QiC-80 / Travan) Support ------ If there is a tape drive, this tape drive is connected in a floppy disk On the card, this option is to choose Y. #Watchdog Timer Support ------ The average person does not need this option, if you choose this option, you want Use MKNOD to build a WatchDog file with / dev. Please see Documentation / Watchlog. Interpretation of TXT . #ENCED Real Time Clock Support ------ About the system on the system, you must use MK yourself NOD creates a file in / dev / called RTC. As a result, the information of the RTC will be seen in / proc /. Please see Documentation / RTC for content about RTC. TXT. Generally, N is generally selected. 17. USB Supprot USB Support Many USB devices, such as mice, modems, printers, scanners, etc., can be supported in Linux, Select by yourself as needed. 18. File Systems file system There is a file system that supports about 20 kinds of file systems on Linux, which means that a file system is to access a text. The data of the system or makes a copy action. In these file systems, the usual selection method is to follow the original preset method, but in it, the EXT2FS option is to be selected, because it is used by the Linux system. File system. Others make choices according to demand. Usually EXT2 and the rest of the module. #Keernel automounter support ------ Select "Y", the kernel will provide support for Automounter, The system automatically automatically mount remote file system at startup. #Standard (minix) ------ New suite no longer builds the Minix file system, and many people do not use it But it is still a good idea to configure it in the core. Some "Rescue-Disk" programs use it, and There are still many magnets that may use Minix file systems because the MiniX file system is the most Ok. At the beginning, Linus is because of the deep experience of miniX this small operating system, so it is written in Linux. Operating system. The Minix file system is usually used on disk and sometimes it is used. #EXTended FS ------ This is the first version of the expansion file system and is now no longer used. #Second extented fs ------ This is a file system widely used in the newly issued suite, you may have one of them. This is a Linux file system, please be writable, if you say what the choice is there, I don't know Tao. Unless you can put Linux in the directory of DOS. #xiafs filesystem ----- This file system once is very common, but when writing this document, I have already I don't know if anyone is using it. #DOS FAT FS ------ DOS FAT file format support, you can support FAT16, FAT32. This option is DOS File system, if you don't choose Y, the following MSDOS, VFAT, uMSDo will not appear. #msdos ------ DOS file system format. If you want to use MS-DOS in your hard drive under Linux The district, or if you want to hang it in the disk formatted with MS-DOS, answer y. #Vfat (windows95) FS ------ Windows95 file system supported by the VFAT file system Unit, if you have Windows95 in your system, then choose this file system to let you see Windows95 Long text name. #umsdos: UNIX Like Fs on top of std msdos fat fs ------ If Linux is put into DOS In a directory, then you have to choose this. It is not recommended to do this, because so, you can't see long files. Named. And in efficiency, the well is not very good. # UMS-DOS ------ Pretty Slick file system that enables MS-DOS file system to have more features, like It is a long-term name, and more. This is not very useful for those who don't use MS-DOS (like me). # / proc ------ This is one of the most SLICK file systems. It is not anything in your hard disk segmentation area, not occupying With the space of the hard disk, but the file system interface between the core and the program, it represents only the situation in memory and The situation performed by each program also records your hardware. . Many programming tools (like "ps") To it. If you have already installed it, please try "Cat / Proc / Meminfo" or "Cat" / proc / devices ". Some shells, like RC, use Proc / Self / FD (in other systems / dev / fd on other systems) to process output. Almost you have to answer Y, there are many important Linux Standard tools are operated by it, otherwise some instructions will have problems. #Root File System on NFS ------ generally do not choose, unless there is no hard drive on your computer, I hope to pass the network It is only necessary to select this by the hard disk of someone else's hard drive. At the same time, the other party also implements the RARP service. #System v and coherent ---- This is set for SYSTEM V and CoHERENT split area. Such as If you want to support the FS of the relevant UNIX system of System V or Xenix, it is necessary to choose this. Otherwise, this option is selected. #Quota support ------ Quota can limit the upper limit of the hard disk space that each user can use, in multiple users It is very effective in the case of using a host. #Iso 9660 CD-ROM File System Support ------ The disc is used is the file format of ISO 9660. #Mandatory Lock Support ------ Some special Database applications use it, the average person The option is selected n. Moreover, if you choose Y, you must have the latest version of NFS software, the latest version of Samba software, etc. #NTFS File System Support ------ NTFS is the file format used by NT. #Ufs filesystem support ---- This is used by BSD, Sunos, FreeBSD, NetBSD, or NextStep. File system. If you have these operating systems on your computer, you can choose this. Otherwise, the general people choose N. ## Network file systems ------ Network file system # NFS ------ If you are in the network environment and want to share the file, answer y. If you want to hang other computers The file system, then this option must be selected. It allows you to use the network to treat others's hard drive as yourself. To use (turn it into a directory). For the average person, this option is Y. #SMB FileSystem Support ------ This file system allows you to hang the text of Windows95 or Windows The system, that is, you can also catch a computer on Windows and online neighbors. #SMB long filename support ------ supports long text names for Windows 95. #Ncp filesystem support ------ NCP is a network communication protocol, with it on the IPX protocol, it can Use the IPX protocol to make the files between the two computers shared and communicate. If you want to hang NetWa about Novell RE file system, then this option is selected. ## partition type ----- Partition type, this option supports some unused partition types, users if necessary To select "Y" on the corresponding option. ## Native Language Support ------ Local Language Support Attachment: I don't know what to do if I need those file systems? Type "mount" it looks like this: Sunlyy% mount / dev / hda1 on / type ext2 (Defaults) / dev / hda3 on / usr type extra xt2 (defaults) None ON / Proc Type Proc (Defaults) / dev / fd0 on / mnt type msdos (defaults) take a closer look at each line; the word behind "Type" is the format of the file system. In this example, I The / and / usr divided area is a second extended format, I use / proc, and there is a MSD OS (Bleah) is a magnetic sheet in the file system format. If you have use / proc, you can try "CAT / Proc / Fi Lesystems. "It will give you a list of file systems supported by the core used. 19. Console Drivers Console Driver #Vga text console ------ Select "Y", users can use Linux in the standard VGA display mode . Generally, VGA Text Console is usable, standard 80 * 25 text console. #Video Mode Selection Support 20. Sound Sound Sound Sound Card Drive If you can find the sound card driver in the list, you will try the OSS. Read help file from the list Careful choice. Confirm that your sound card has really selected I / O and IRQ. The MPU I / O of the sound card is 0 options. Generally 33 0, if you don't have to worry. The advantage of the module is that you can still recompile after the core compilation, install the module and hang Upper core. If there is a sound card, go to understand the IRQ and DMA information of the sound card, and understand which one is it belonging. Now Some people are used by Sound Blaster or its compatible card. Please see each sound card for information about this type of information. English book. When Y Y, the following screen appears. Let's choose if you have your voice card! Pro Audio Spectrum 16 Support Sound Blaster (SB, SBPRO, SB16, Clone) Support Generic OPL2 / 0P13 FM Synthesizer Support Gravis Ultrasound Support MPU-401 Support (Not for SB16) 6850 CART MIDI SUPPORT PSS (Echo-AD12111) Support (Not for SB16) 16 Bit Samplins Option of Gus (N0T_GUS_MAX) Gus Max Support Microsoft Sound System Support Ensolliq Soundscape Support Mediatrix Audiotrix Pro Support Support formad16 and / or mozart based cards 20. Sound Sound Sound Sound Card Drive If you can find the sound card driver in the list, you will try the OSS. Read help file from the list Careful choice. Confirm that your sound card has really selected I / O and IRQ. The MPU I / O of the sound card is 0 options. Generally 33 0, if you don't have to worry. The advantage of the module is that you can still recompile after the core compilation, install the module and hang Upper core. If there is a sound card, go to understand the IRQ and DMA information of the sound card, and understand which one is it belonging. Now Some people are used by Sound Blaster or its compatible card. Please see each sound card for information about this type of information. English book. When Y Y, the following screen appears. Let's choose if you have your voice card! Pro Audio Spectrum 16 Support Sound Blaster (SB, SBPRO, SB16, Clone) SupportGeneric OPL2 / 0P13 FM Synthesizer Support Gravis Ultrasound Support MPU-401 Support (Not for SB16) 6850 CART MIDI SUPPORT PSS (Echo-AD12111) Support (Not for SB16) 16 Bit Samplins Option of Gus (N0T_GUS_MAX) Gus Max Support Microsoft Sound System Support Ensolliq Soundscape Support Mediatrix Audiotrix Pro Support Support formad16 and / or mozart based cards Support for Crystal CS4232 Based (PNP) CARDS Support for Turtle Bench Wave Front (MAUL, TROPEZ) SYNTHESIZERS # / Dev / dsp and / dev / audio support ----- This option is usually necessary. So most People choose Y, if there is no such option, there will be no sound effects. #Midi interface support ------ supports the MIDI interface. #Fm Synthesizer (YM3812 / 0PL-3) Support # I / o base for sb check from manual of the card ------ The I / O address of the sound card. Brand is often Use option. #Sound Blaster Irq Check from Manual Of The Card ---- The IRQ of the sound card is usually 1 or 5. #Sound Blaster DMA 0,1 for 3 ----- Sound DMA, usually 1. #Sound Blaster 16 Bit DMA 5, 6 OR 7 (Useel for 8 Bitcards) (sb.dma2) ----- 5 # MPU401 I / 0 Base of SB16, JAZZ16 and ES1688 Check from Manual Of The Card ------ 0 #SB MPU401 IRQ (Jazzl6, SM Wave and ES1688) USEL with SB16 ------ 1 #Audio dma buffer size 4096, 16384, 32768 or 65536 ------ 65536 ## Additional Low Level Drivers ------ If there are other types of sound cards, this item is selected, here Other sound cards will be listed. 21. Keernel Hacking Security Mode It is popular that this is the Windows security model, and it is not found to be clearly explained. > This is from Linus Excerpt in Readme: Section 4 to enable the kernel Usually, the core installation is called VMLinuz. In the past, UNIX users played this name. "Z" indicates compression, "V" and "M" means "Virtual" and "sticky", each belongs to memory and disk management. Recommendation Leave the VMLinuz core until you know it work. In order to be able to use the new version of the kernel, you still need to do some changes: #CP /usR/src/linux/system.map /boot/system.map-2.2.16 #CP / USR / SRC / Linux / Arch / i386 / Bzimage /Boot/Vmlinuz-2.2.16 These two files are newly generated when compiling. Two links under / boot below System.map and VML INUZ makes it a file to the new kernel: #CD / boot #RM -F System.map VMLinuz #LN -S VMLinuz-2.2.16 Vmlinuz #LN -S System.map-2.2..16 system.map Note: To keep the VMLinuz core, the following steps are processed #CP /usR/src/linux/system.map /boot/system.map-2.2.16 #CP / USR / SRC / Linux / Arch / i386 / Bzimage /Boot/Vmlinuz-2.2.16 #CD / boot #RM -F System.map #LN -S System.map-2.2..16 system.map Now #vi /etc/lilo.conf, increase as follows: Image = / boot / vmlinuz-2.2.16 is the core set to be installed Label = Linux2.2.16 is used by lilo to tell you that the core or job system is now , Read-only Root = / dev / hda2 is the root directory of this special job system / in which root = / dev / hda2 must be modified as needed. Run: # / sbin / lilo -v save the execution command: lilo you will see the core label, the first is an asterisk. If you Didn't see the new core label or LILO error, you need to work back to /etc/lilo.conf (see below) LILO analysis). Confirm that the editing of /etc/lilo.conf is correct, and now restart the system: #SHUTDOWN -R Now It is not recommended to use hot start or CTRL Alt DEL key. In some cases, the file system is not completely unloaded. document. At the LILO prompt, if you need to start the old core or start using some parameters, if you have not seen Start prompt, you can try with Shift or Ctrl keys, so start prompt appears. Once there is, press Tab to see the core Heart label. Enter the label and optional parameters start. Usually, automatically start after the /etc/lilo.conf file specified Moving core. When you start, you may see some error messages like SiocAddr. This often displays the module (usually the network A module) is not guided. Treating this is very simple, if there is this error, "VFS, Cannotmount Root", you Do not compile appropriate disks or file system support in the core. Press the Tab while the machine is restarted, press the Tab button, enter Linux2.1.16, and the new kernel work. Appendix: LILO analysis (technical strength, for reference only) Part 1 LILO introduction LILO (Linux Loader) is an excellent boot manager comes with Linux, which uses it to easily guide multiple operating systems on a machine. LILO boot mode is more likely to be more common than other commonly used guidance loading programs Artistic, in-depth understanding, will help us to handle multi-operating system, network boot, big hard disk And many tricky problems such as large memory. LILO's boot mechanism ------ It is well known that the initial start of the computer is controlled by the BIOS, in some hardware ( Such as: memory, keyboard, etc.) After initialization, it will attempt to load the hard disk's main boot record (MBR) or floppy boot Sector. The MBR can operate in two ways, which is positioned to the active partition and load the corresponding guiding sector, and then The guiding sector completes the loading of the basic components of the operating system within the partition; the second is to load the letter directly from a designated partition Interest, and loaded into any partition operating system, such as Lilo, OS / 2 Boot Loader and Partition Ma GIC and other boot loaders can be configured to be in this way. The boot sector of the floppy is equivalent to the boot of the hard disk activity partition. Sector, which is usually used to load the operating system on the floppy disk. It can be seen that as long as LILO is installed in MBR, the activity partition Or boot the floppy disk, you can take over the control of the computer, and then follow the LILO to complete the boot process. LILO There is a boot table address code, where it can be positioned to Linux kernel file, this address The code can be used in accordance with the cylindrical / head / sector (CHS) mode, but also using LBA linear block mode, so even It can operate well for some SCSI control program LILO. When LILO is positioned to the configuration file, the prompt is displayed by the pre-boot process: LILO BOOT: At this point, the system allows selection to boot different operating systems or different kernel configurations, press Tab keys to display options list , Then enter an option or transfer to the default configuration, if you select boot Linux, you can also transfer Parameters to the system kernel. Compared to other system boot loaders, LILO has greater flexibility, and its boot method is also more colorful. ● When LILO is installed on the MBR, active partition or boot floppy disk of the hard disk, it can Guide any Linux and other operating systems on either partition of any partition; in addition to the guiding sector, it does not have any implicit files Needless to use a specific partition, its profile can be in any partition, or even stored with Linux. Under a subdirectory of the coherent DOS partition; it can guide several different kernel configurations, even a few different kernels It guides multiple Linux versions on the same machine; up to 16. ● It boots Linux from the network. ● LILO flexibility makes its configuration is quite complex, and when there are multiple systems coexisting, it is recommended to install additional operations first. The system, finally load Linux so that the boot setting of LILO to other systems is relatively simple. Part II LILO parameters Usually we talk about LILO, it will involve two aspects - LILO boot procedures and LILO installation commands / sbin / lilo. In order not to confuse these two concepts, this article will use lilo to represent the LILO boot process, and LILO represents / sbin / lilo . Generally, LILO uses a text file /etc/lilo.conf as its configuration file. LILO reads lilo.con f, write a specific LILO to the system boot area according to the parameters. At any time, modify /etc/lilo.conf, You must re-run the lilo command to ensure that the configuration parameters used by Lilo's normal transport lilo.conf, which is quite complicated. The following is a preliminary discussion as a preliminary discussion with Redhat Linux, and the Redhat's LILO package version is 0. 20, other Linux release versions may have, but will not be too big. The configuration parameters in the lilo.conf file are divided into two parts, part of the global parameters, and the other part is the boot image parameters. . The boot image parameters act on each boot image area. If a boot image parameter (for example: Password is The definition of the global parameter conflicts, the definition of the boot image parameter is subject to the definition of the boot image parameters, but is limited to the boot image area. Li There are a lot of boot parameters of LO, which is only for some important parameters. Other configurations with Linux systems Like the file, a line of words after the "#" is commented. 1. "Boot =" This parameter indicates the device name (such as: / dev / had) containing the boot sector. If this item is ignored, The leading guide sector is read in the front part of the zone. 2. "root =" This parameter tells the kernel which device is used as a root file system when starting, and its set value is within the constructor. The device name of the root file system is available, and the available equipment name is: (1) / dev / hdan ~ / dev / hddn: ST-506 compatible hard disk, N partitions on A to D (2) / DEV / SDAN ~ / DEV / SDEN: SCSI is compatible with hard disk, N partitions on A to E (3) / dev / xdan ~ / dev / xdbn: XT compatible hard disk, N partitions on A to B (4) / dev / fdn: floppy disk, A: (n = 0) or B: (n = 1) (5) / dev / nfs: Sign from the root file system by the network 3. "NFSROOT =" If you need to provide the root file system through NFS to boot the diskless workstation, this parameter is specified for the kernel. The machine, directory, and NFS where the root file system is located, its format is: nfsroot = ( OOT_DIR> (, NFS_OPTIONS)) 4. "NFSADDRS =" Sets the various network interface addresses required for network communication, such as no such parameters, the core will try to use Reverse Address Analysis Agreement (RARP) or Start Agreement (BootP) identity: NFSADDRS = NOT IP>: : 5. "Image =" Specifies the kernel file of Linux. 6. "DELAY =" setting the waiting time before booting the first image. 7. "Disk =" This parameter defines a non-standard parameter for a particular hard disk. 8. "Append =" transmits an optional parameter line for the kernel, and the typical application is to automatically be automatically detected by the system. Other hard drives specified parameters, such as: append = "hd = 64, 32, 202" 9. "Label =" This parameter specifies a name for each image for booting. 10. "Read-Only" settings in read-only mode to root file system for file system consistency check (FSCK) . 11. "Install =" Install a specified file as a new boot sector, default to /boot/boot.b. 12. "Loader =" Description The chain loader used, defaults to /boot/chain.b, if not started from the first hard disk or floppy disk, then this option must be explained. 13. "Table =" describes the device name containing the partition table. If this parameter is ignored, the bootloader will not be transmitted. Area information to the bootable operating system. When the partition table pointed to this parameter is modified, you must re-run / sbin / li LO. 14. The program executed when the kernel initialization is initialized, and the process is init, getty, rc and sh, version 1.3.4 3 Since the Linux kernel has executed / sbin / init, if you ask during the boot process The question can be set to the shell directly to the SHELL. 15. "RamDisk_start =" Since the kernel cannot be placed in a compressed memory file system image, in order to make the kernel image Enough and compressed memory images are placed in a floppy disk, add "ramdisk_start = Can begin to execute. 16. One of the purposes of this parameter is the number of memory used for Linux: such as MEM = 96MB, the purpose of the purpose Is the specified MEM = NOPENTIUM tells the kernel not to use a 4MB paging table. 17. "VGA =" Sets the display mode, such as 80 × 50, 132 × 44, etc. 18. "Linear" generates line for replacing the hard drive sector / head / cylinder address (hard disk geometric parameters) AR sector address. The LINEAR address is generated at runtime and does not depend on the hard disk geometry. Some SCSI hard drives and one This parameter may be required to use the IDE hard drive used in LBA mode. Note: When LILO is installed on the floppy disk You cannot use the "linear" parameter. 19. "Prompt" gives "Boot:" prompts, forced LILO waiting for the user's keyboard input, press Enter Key Guide the default operating system, and press the Tab key to print the optional operating system. When "PROMPT" is set "Timeout" is not set, the system will always be waiting for a state without booting any operating system. Not set When the parameter, LILO does not give "Boot:" prompt and direct the default operating system directly, unless the user presses Shift. Ctrl, any of the Alt three key. In most cases, if there are multiple operating systems on your hard disk, it is recommended to make With parameters, it leaves the user a selection room. 20. "Timeout =" Set the length of the time waiting for the keyboard to enter, and the unit is 0.1 seconds. If you have not input it exceeds this time Timeout, the system will automatically boot the default operating system. If this parameter is not set, the default timeout length is not Poor. twenty one. "Other =" settings contain non-Linux operating systems such as DOS, SCO UNIX, Windows 95 and other systems boot Image of the image or device. twenty two. Alias = Name gives a alias for the current operating system. Part III LILO Typical Configuration Method Typically, Linux's installer itself can complete the installation configuration of LILO, thereby solving multiple Guide question, if the system cannot automate this configuration, you can modify the configuration file / etc / l Ilo.conf to achieve guidance under different conditions. 1. When the system can automatically complete the configuration There is only one suggestion for this situation: install LILO to the root of the Linux partition, not MBR's multi-zone . Suppose there is a DOS / Windows in the current HDA1, and Linux is installed in HDA2, /etc/lilo.conf is large The following: Boot = / dev / hda2 # Specify boot position Compact DELAY = 50 # delay 5 seconds Root = current # root in the current partition Image = / boot / vmlinuz # Specifies Linux kernel files Label = Linux # with Linux as a representative name Other = / dev / hda1 # Subregion in other operating systems Table = / dev / hda # Specifies a hard disk that contains partition tables Label = DOS # with DOS representative name 2. When the system does not automatically complete the configuration The system cannot be automatically completed, and there are two cases: (1) BIOS can't see the root partition of Linux directly; (2) BIOS can only read the first 504MB of the standard IDE hard drive. At this time, you must follow a basic principle: establish a smaller Linux partition that BIOS can access, which contain The necessary contents such as kernel files, mapping files, and chain loaders, and roots can be another independent partition. to Typically, Linux's installer itself can complete the installation configuration of LILO, thereby solving multiple Guide question, if the system cannot automate this configuration, you can modify the configuration file / etc / l Ilo.conf to achieve guidance under different conditions. 1. When the system can automatically complete the configuration There is only one suggestion for this situation: install LILO to the root of the Linux partition, not MBR's multi-zone . Suppose there is a DOS / Windows in the current HDA1, and Linux is installed in HDA2, /etc/lilo.conf is large The following: Boot = / dev / hda2 # Specify boot position Compact DELAY = 50 # delay 5 seconds Root = current # root in the current partition Image = / boot / vmlinuz # Specifies Linux kernel files Label = Linux # with Linux as a representative name Other = / dev / hda1 # Subregion in other operating systems Table = / dev / hda # Specifies a hard disk that contains partition tables Label = DOS # with DOS representative name 2. When the system does not automatically complete the configuration The system cannot be automatically completed, and there are two cases: (1) BIOS can't see the root partition of Linux directly; (2) BIOS can only read the first 504MB of the standard IDE hard drive. At this time, you must follow a basic principle: establish a smaller Linux partition that BIOS can access, which contain The necessary contents such as kernel files, mapping files, and chain loaders, and roots can be another independent partition. to For additional details on the configuration, we will explain the following examples. Part IV LILO.CONF Configuration Example With these basic knowledge, we can easily configure LILO in your own intent. Example. Lilo.conf file Boot = / dev / hda # Install LILO in MBR. LILO as the main boot manager Message = / boot / message # 注释 / / Boot / Message Compact # produces a smaller "map" file Map = / boot / map # Specify "map" file for / boot / map INSTALL = / boot / boot.b Password = zhoudi # Set the password VGA = Normal # 80x25 Text Mode Linear # Use the "Linear" address prompt # prompt user keyboard input Timeout = 50 # timeout time is 5 seconds Default = DOS # default boot Label's operating system for DOS Image = / boot / vmlinuz-2.0.34-1 # Set the core used by Linux # Set up Linux core boot image Label = Linux # ID LINUX Root = / dev / hda1 # Set the root file system Read-only #lilo loads root file system in read-only mode # Set MS-DOS or Windows 95 Other = / dev / hda2 #dos partition second partition for the first IDE hard drive Label = DOS # ID DOS Table = / dev / hda # master device is the first IDE hard disk # Set Sco Unix Note: The SCO partition must be set to an Active partition and install LILO on the MBR. Other = / dev / hda3 Label = SCO Table = / dev / had In this example, LILO is the main boot manager to manage all operating systems on the machine. LILO can also be used as two Level boot manager, this can only be done with the "boot" parameter to the root partition. For example: boot = / dev / h DA1 When using LILO in this way, the Linux root partition must be set to live with DOS or Linux's FDISK program. Different partitions, and this way is only valid for the hard disk primary partition (not extended or logical partition). Example II. LINUX and DOS / Windows are required for a standard IDE big hard drive. For big hard disk problems, many people only know less than 1024 cylinders, and I don't know why standard IDE hard disks only Can recognize 504MB before. In fact, the BIOS's INT13 call is a CHS code of three bits, 10 is a column, 8 The bit is a magnetic head number, and 6 is a sector number. The possible cylindrical number is 0 ~ 1023, and the possible head number is 0 ~ 255, and Possible sector numbers on the track are 1 ~ 63, with this 24-bit address 8455716864 bit tuple (7.875GB) . But unfortunately, the standard IDE interface allows 256 sectors / tracks, 65536 cylinders and 16 heads. itself It can access 237 = 137438953472 (128 GB), but add 63 sectors and 1024 cylinders in BIOS. Level only 528482304 (504MB) after the restriction is derived. Countermeasure: 350MB (/ dev / hda1) is divided into DOS, 150MB (/ dev / hda2) to Linux in the top 500MB of the hard disk, The parameters of the hard disk should be explained in the corresponding configuration file. Boot = / dev / hda ... Disk = / dev / hda BIOS = 0x80 Sectors = 63 HEADS = 16 Cylinders = 2100 Image = / vmlunuz Append = "HD = 2100, 16, 23" Root = / dev / hda2 Label = Linux Example three. If you have a big hard disk over 8 g, and you need to install Linux in a relatively post-relying position, In installation, select the linear mode and give it a hard disk parameter. The hard disk parameters of the installation can be written like this: HD? = Cyls, heads, the uppercase letters in SECS need to use actual The hard disk parameters are replaced, these parameters can be found on the label of the hard disk, or see the hard drive in the BIOS settings. The parameter corresponds to the line of the LBA mode. The question mark is determined according to the hard disk. When it is actually used, it can be one of the four letters of A, B, C, D. such as: HDA = 1869, 63, 255 This is the IBM 15.2G hard drive parameter. Of course, after Linux, you can add this file by editing /etc/lilo.conf, then run over LILO reached the same purpose. Below is the contents of lilo.conf before the unpaid parameters: Boot = / dev / hda MAP = / boot / map INSTALL = /BOOT / BOT.B Prompt TIMEOUT = 50 Image = / boot / vmlinuz Label = Linux Root = / dev / hda1 Initrd = /boot/initrd-2.2.12-20.img Read-only After adding the parameters in linear, it is formatted as follows: Boot = / dev / hda MAP = / boot / map INSTALL = /BOOT / BOT.B Prompt Linear <----- added this line TIMEOUT = 50 Image = / boot / vmlinuz Label = Linux Root = / dev / hda1 Initrd = /boot/initrd-2.2.12-20.img Read-only Append = "HDA = 1869, 63, 255" <------ Added this line Note that the append parameter is for each system Boot records, be sure to put below the image or below, so that it can play a role. When the Linux system is started again, LILO is guided by linear mode. In addition to seeing on the hard disk There is no impact on other ways in other ways. Chapter 3 Application of Core Compilation First section embedded Linux technology What is your Linux? (And practical results) This is not what I wrote, just used to refer to the manufacturing Small Kernel, the effect is OK. Minimum Linux kernel I am using the mandrake core 2.2.15, I did not modify any line of code, completely rely on the modification configuration This data is obtained. First, use Make Xconfig to take all options to take. Don't floppy Don't be SMP, mtrr Don't NetWorking, SCSI Remove all Block Device, leaving only Old IDE Device Remove all Character Device Remove all FileSystem, leaving only Minix Don't support Sound I believe me, I have been removed by all options. After doing this, I got a core of 188K. Do not After this core, I am afraid hard to play Linux's function, so I decided to add the network back. Generate NetWork support is returned, recompile, the core turns 189 K. 10K to change TCP / IP Stack, it seems It is very calculated business. However, there is still a stack without Driver is also awkward, so I use the RTL8139 commonly used by Embedded Board. Driver plus back, 195K. If you need a DOS archive system, that size is 213K. If MiniX is used EXT2 is replaced, the size is grown to 222K. However, everyone should pay attention to the size of there refers to the size of the core file. Then, the recollected memory is two things. . The meaning of this digital representative is that you need more ROM to hold your core. The memory required by Linux is approximately 600 to 800 k. 1MB may be booted, but it may not be useful. Because there may be difficult to connect the C library. 2MB should be done, but may get to 4MB or more A complete system can be implemented. Seeing this, if you think that Linux is really a big. Ok! Then let's take a look at these spaces, The following list is made from the core of 222K. # wc Arch / i386 / kernel / kernel.o ARCH / I386 / MM / mm.o Kernel / kernel.o MM / mm.o fs / fs.o IPC / IPC.O FS / filesystems.a NET / NETWORK.A Drivers / Block / block.a Drivers / char / char.a Drivers / Misc / Misc.a DRIVERS / NET / NET.A Drivers / PNP / PNP.A /usr/src/smalllinux/arch/i386/lib/lib.a /usr/src/smalllinux/lib/lib.a /usr/src/smalllinux/arch/i386/lib/lib.a The results are as follows: 243 2250 81946 Arch / i386 / kernel / kernel.o 42 316 10569 ARCH / I386 / MM / mm.o 173 1541 74660 kernel / kernel.o 266 2307 68053 mm / mm.o 222 3139 123193 fs / fs.o 49 602 21600 IPC / IPC.O 263 2940 106504 fs / filesystems.a 137 1510 65512 Net / Network.a 92 719 39178 Drivers / Block / block.a 230 2308 87556 Drivers / Char / Char.a 1 1 8 Drivers / Misc / Misc.a 83 721 25680 Drivers / Net / Net.A 1 1 8 Drivers / PNP / PNP.A 20 187 9526 /usr/src/smalllinux/arch/i386/lib/lib.a 23 150 7714 /usr/src/smalllinux/lib/lib.a 20 187 9526 /usr/src/smalllinux/arch/i386/lib/lib.a 1865 18879 731233 Total Take it first, the size of the size and the final size here are a bit different, but can still be used. Since this 730K is actually about 600K. Obviously, FileSystem is quite large. About 230K , Accounting for 1/3 volume. Memory management accounted for 80K, and the total part of the core is similar. TCP / IP STA CK accounted for 65K, the driver accounted for 120K. SYSV IPC accounts for 21K, if necessary, can take it, the core file should This can be left around 10k. So if you want to reduce the core size, should you move? The answer should be obvious, Of course, the archive system. Linux's VFS reduces archive system design, Buffer Cache, Directory C ACHE increases the efficiency of the system. But these Embedded systems that are on Flash is basically on Flash. It is not large. If you can take them, the core can be left right away from 20K. If you skip the entire VFS, Putting the archive system into a DRIVER model, you should reduce 230K to about 50K. Entire core Heart shrinks around 100K. From the above data, UCLinux reduces MM part is not much, mainly MM except for Virtual Memory, the part of Memory Allocation, this is invincible. If both Allow, the Linux core below 100K is not impossible. Practice: successfully compiled 196K core, but can't be used to start Redhat, it is too large. 280K can start, positive Work hard to a smaller effort. Conclude The papers finally finished, and it is necessary to review my graduation design process. For a non-computer professional student, this topic is more challenging. Today, Today, Linux The information on the system and network management can be seen everywhere, but the kernel data is scarce, and people don't know what it is. Start as long as it is Linux The book is seen, and I feel that the horizons open, gradually clear the direction. Collecting translation materials into important content, there are Time to find information on the Internet, and then constantly check it on the system. The core of thesis ------ Compile process begins with the teacher Guide, configuring the kernel 21 big items hundreds of knowledge points can be said to be a accumulation, which makes me feel a sense. In addition to the detailed narrative, the paper also explains the reasons, and even appendices. While I highlight, I will I am tied to the content other than my topic ------ embedded Linux operating system, because I know that my topic is a comprehensive topic - ---- Design device (theory) with an embedded operating system ------ The previous work.