APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

1023 cylinder boot

Newsgroups: comp.unix.sco.misc
From: stephen@bokonon.ussinc.com (Stephen M. Dunn)
Subject: Re: 1023 Cylinder Limit
Date: Mon, 14 Feb 2000 03:58:49 GMT
Message-ID: <FpwJ21.20C@bokonon.ussinc.com> 
References: <886alq$9rd$1@neptunium.btinternet.com> 

In article <886alq$9rd$1@neptunium.btinternet.com> "Steve Morris" <Stephen.Morris@btinternet.com> writes:
$Go to restart and I get the terse error message "CYL OVF".
$This apparently relates to an old limitation that I was aware of years ago
$with regard to the root filesystem having to reside with the first 1023
$cylinders of your hard disk.

   Since then, it's changed; SCO Unix now uses a separate boot
filesystem, so that you don't have to fit the whole root filesystem
under the 1024-cylinder limit.  But the general idea is the same:
you have to fit _something_ within those first 1024 cylinders.

$However, I had thought that by the  release of 5.0.5 that this would've been
$a thing of the past.

   Don't blame SCO; they had nothing to do with the design of the
BIOS on your system.

   The problem here is that the standard BIOS calls use a 10-bit
quantity to represent the cylinder number, and that means cylinder
numbers can only be from 0 to 1023, inclusive.  Once you've loaded
the Unix kernel and it's running, it uses its own disk drivers,
which are not limited to what the BIOS sees, but until that
point, you have to use the BIOS calls, which means you're limited
to the first 1024 cylinders of the drive.

$1. Is there any way around this problem?

   Your boot filesystem defaults to 20 MB.  This, plus a little
bit of stuff that comes before it (divvy table, boot loader, etc.),
need to reside in the first 1024 cylinders, so you'll need slightly
more than 20 MB free there.  The rest can follow from cylinders
1024 onwards without problems.

$2. How can I determine how many cylinders my SCSI HD has? (Looking at
$manufacturers web sites doesn't have this info).

   It's not actually how many physical cylinders the hard drive has,
but rather how many logical cylinders the host adapter says it has,
which will be a different number.  Between the hard drive and the
host adapter, there are no cylinders, heads, or sectors; there is
simply a series of numbered blocks.  However, to make this look
more like a hard drive, the host adapter maps it into cylinders,
heads, and sectors; that way, standard BIOS calls will work.

   Exactly how this mapping is done varies from one host adapter
to another, and there may be host adapter settings that influence
it, too.

   During installation of Unix, it may print a line on the console
listing the geometry that the host adapter is presenting.  My
system has an ATA hard drive, so the line won't look exactly
the same, but here are the lines printed for my two hard drives:

%disk     0x01F0-0x01F7  14   -  type=W0 unit=0 cyls=1025 hds=255 secs=63
%disk     0x0170-0x0177  15   -  type=W1 unit=1 cyls=944 hds=14 secs=40

   Yours will look close enough that you can recognize them.

   Failing that, check the documentation for your host adapter.
Stephen M. Dunn (SD313), CNE, ACE                 stephen@bokonon.ussinc.com
Senior Manager                                  United System Solutions Inc.
104 Carnforth Road, Toronto, ON, Canada M4A 2K7          (416) 750-7946 x251

Got something to add? Send me email.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> -> 1023 cylinder boot ––>Re: 1023 Cylinder Limit

Increase ad revenue 50-250% with Ezoic

Kerio Samepage

Have you tried Searching this site?

Unix/Linux/Mac OS X support by phone, email or on-site: Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

A refund for defective software might be nice, except it would bankrupt the entire software industry in the first year. (Andrew S. Tanenbaum)

This post tagged: