Original Document: http://www.xosl.org/faqhow/faq.html
 (The links in that have not been updated or maintained.)

 

XOSL HOWTOs and FAQs v1.00
by Filip Komar (filip.komar[AT]email.si)

   

V. 1024 cylinder limit

[Document Index Page]  [Top of Page]  

 

V. 1024 cylinder limit


What is the 1024 cylinder limit?

The 1024 cylinder limit is a PC BIOS constraint. If the BIOS does not have INT 13 extensions incorporated, no Operating System can be booted from a partition that intrudes into the space beyond. Newer systems have the INT 13 extensions. They enable booting from space beyond cylinder 1024 only if the Operating System is capable of utilising them. DOS can't. Neither can OS/2 Warp 3 and 4. GNU/Linux with newer LILO (version 0.21.4.2 or later) can. Windows NT original (without Service pack 4 or later) cannot. Windows 98, and possibly also Windows ME, cannot exceed this limit either.

[Start of Page Content]  

Do you have to install the boot files of any Operating System within 1024 cylinders in order for the Operating System to be able to boot?

It depends on the Operating System. If the Operating System loader isn't INT 13 extensions aware, it probably won't even attempt to boot if any portion of the boot partition crosses the 1024 boundary. Even though the boot files might be installed at the beginning of the partition when the Operating System is first installed, there's no guarantee they would all stay there through various upgrades and patches (this includes any partition moves made (for example) with the assistance of Partition Magic). Of course your hardware must support it also.

[Start of Page Content]  

LILO over the 1024 cylinder limit

One excellent report from Peter:

Your BIOS must be compliant with the trick LILO uses. In other words, if your BIOS version is before 1997, chances are that it won't work for you...

I have recently done this with my laptop (I have done this on my desktop before).

Anyway here is a brief run down on how I did it.

1. I created the partitions. (This is from memory so it isn't exact):

hda1   Windows 2000   (FAT32)   around 7 GB
hda2 extended partition around 2.7 GB
hda5 /boot (ext2) around 16 MB
hda6 / (ext2) around 2.5 GB
hda7 (Linux Swap) around 133 MB

I used Partition Magic to do this.

2. Installed Windows 2000. Into its partition

3. Got onto the Net and then downloaded the latest version of LILO (At least version 0.21.4.2 or later).

4. Installed Redhat 6.2.

It doesn't really matter where you setup LILO to install itself, as it won't work until you install the new version. I installed it to the /boot partition. This way I could still boot into Windows.

VERY_IMPORTANT: When it asks you to make a boot floppy MAKE the boot floppy.

5. Use the boot disk to get into Linux.

I am not sure how well you know Linux, so I will provide you with the steps that I used to get LILO installed. (Note I am just a beginner in Unix/Linux so this may not be the best way to do it, but I know that it works). (Anything in between a * is a command)


*cd /mnt*
*mkdir /win*    (I am making a directory to link to the Windows Partition).
 
*mount -t vfat /dev/hda1 /win*    (Windows was on hda1 for me, so I link off that dir)
*cd /usr/src*    (This is where I am putting all my source code)
 
*tar xzvf /mnt/Windows/(Directory with your LILO.tar file)/lilo-21.5.1.tar.gz*
 
*cd lilo-21.5.1*
 
*make*
 
*make install*    (This will have setup and installed LILO.)
 
Now you have to configure the LILO Config file.
 
Use your favourite editor. I use pico
 
*pico /etc/lilo.conf*
 
(My lilo.conf file looks like this).
 
******Start lilo.conf file************
boot=/dev/hda5
map=/boot/map
install=/boot/boot.b
 
prompt
timeout=50
 
lba32
 
default="Linux 2.2.14"
 
image=/boot/vmlinuz-2.2.14-5.0
     label="Linux 2.2.14"
     read-only
     root=/dev/hda6
 
image=/usr/src/linux/arch/i386/boot/bzImage
     label="Linux 2.4-pre9"
     read-only
     root=/dev/hda6
********End lilo.conf file************
 

Note that the "lba32" is needed to get LILO to work.

Also when LILO is installed there is a file in the /usr/src/lilo-21.5.1 directory called Disk.com. If you copy it onto a bootable disk and boot off it, then run that file it will tell you whether your BIOS will support lba32 calls.

Peter
[Start of Page Content]  

 
Next: Miscellanies  
Previous: Installation of multiple Operating Systems  
 

 Original Document: http://www.xosl.org/faqhow/faq.html
 Related Information & Files: The Yahoo! XOSL Group

 

Related Webpage: the BIOS Int 13h CHS barrier

[Supports Any Browser]*
E-mail the Webmaster
Page Content Updated: September 22, 2003
   

    This How-To and FAQ contains some very useful information, but I found it a bit difficult to use and move around in the original document. (That's just my personal opinion.) So to improve the usability of this information, I've created a multi-page copy that sets details like the margins to the formatting used by this site, while providing more extensive navigation within the document. As such, I make absolutely no claim to this content . . . nor do I accept any responsibility for it. B^)