📄 00000070.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>寄信人: linuxrat (竹剑居士*农大历史上最差的学生) <BR>标 题: 一个没有1024问题的引导器nuni[FWD] <BR>发信站: BBS 水木清华站 (Thu Feb 3 13:08:22 2000) <BR>来 源: 202.112.168.253 <BR> <BR>其实有很多的bootloader的. 不过大家使用lilo习惯了也就不怎么关心其他的 <BR>bootloader. 在sunsite上面多的是啦. <BR>URL:<A HREF="http://www.linuxforum.com/plug/articles/nuni.html">http://www.linuxforum.com/plug/articles/nuni.html</A> <BR>===Begin=== <BR> A "New-ni" Bootloader <BR> <BR> Neil Koozer of Roseburg, Oregon has created nuni, a boot loader for a <BR> Linux system that uses the ext2 file system and IDE drives. nuni <BR> handles various ext2 block sizes, and handles both small and large <BR> kernels. <BR> <BR> The nuni program was inspired by a long-standing need. When he <BR> discovered Linux some 5 years ago, there were many people having those <BR> bios-related problems in booting Linux. Instead of getting better, the <BR> problem has gotten worse due to the proliferation of larger drives <BR> (with the accessible zone already occupied). Neil felt that this <BR> problem would become a serious blemish on Linux when Linux becomes <BR> more exposed to the public. What if MS Windows would freeze with "WI" <BR> instead of booting? For a long time Neil had the idea that a minimal <BR> IDE driver & loader would fit in one sector, and when he discovered <BR> the nasm assembler, just had to give it a try. This loader is seeded <BR> with hardware addresses at install time just like LILO, but it doesn't <BR> use a map; it uses the inode to find the data blocks at boot time. You <BR> can look at the C code and the assembler code in a funky html format <BR> (the sources are in the downloadable file). <BR> <BR> So, the reason for this particular loader is to avoid bios limitations <BR> by not using the bios. There is no 1024 cylinder problem because the <BR> concept of cylinders is not used. There is also no problem with a <BR> difference in geometry between the bios and Linux because the concept <BR> of geometry is not used. We can boot from any place on the drive, up <BR> to 128GB. This is also handy for older BIOSes that don't support <BR> larger hard drives. <BR> <BR> Neil was so pleased with this program, he wanted to give it a good <BR> name. Needing something pronounceable with two syllables, and not <BR> starting with "G" or "K" (and mercifully not "Win"), he had to get <BR> creative. When he was born, his brother could not pronounce "Neil", <BR> and what he came up with was "nuni" (or "noonie"), so that was Neil's <BR> name until his brother was 5 years old. And now it's the name of <BR> Neil's program. <BR> <BR> Any drive from hda to hdh can be used. If you have drives above hdh <BR> with custom major numbers, you can add an additional 'case' line to <BR> the 'switch (major)' statement. <BR> <BR> If you have an add-on IDE interface, its i/o ports may not be the same <BR> as those assumed in nuni.c. You can edit the port addresses in nuni.c. <BR> For example, if your card is to host hde & hdf, find the statement <BR> that starts with 'switch (major)' and put your port addresses in the <BR> line containing the 'e'. <BR> <BR> Multi-booting is not yet supported, but you can boot multiple <BR> installation of Linux on the same machine using nuni on a boot floppy. <BR> Since nuni is designed so that it loads the kernel from the hard drive <BR> partition instead of the floppy, it boots much faster. <BR> <BR> Nuni also accepts kernel parameters as described in the BootPrompt <BR> HOWTO. <BR> <BR> The file nuni.asm is the boot loader which resides in the boot sector <BR> of a floppy or a hard drive; nuni.c passes some data to nuni.asm by <BR> means of 'equ' statements. Therefore, nuni.asm must be assembled every <BR> time a boot record is created and it is assembled with the nasm <BR> assembler. <BR> <BR> This version is a little too fat to be placed in the MBR, so it is <BR> normally placed on a floppy boot sector or in any non-MBR partition <BR> boot sector where any boot manager can execute it. <BR> <BR> Installation Instructions: <BR> <BR> (1) put the nuni-0.04.tar.gz file in a convenient place <BR> <BR> (2) tar zxf nuni-0.04.tar.gz <BR> <BR> (3) cd nuni-0.04 <BR> <BR> (4) gcc nuni.c -o nuni.elf <BR> <BR> Configuration and Execution Instructions: <BR> <BR> (1) cd /path/nuni-0.04 <BR> <BR> (2) edit nuni to set the following items: <BR> <BR> (a) path to kernel image <BR> <BR> (b) target partition for installing the boot loader <BR> <BR> (c) command line for kernel <BR> <BR> (3) ./nuni <BR> <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -