Lets "back up" for a moment. The drives themselves care not how they are
used. In scsi (and I suspect IDE), the drive responds to the block
address and "knows nothing" about partitions, logical or otherwise (or
for that matter, clusters).
It is the device level driver code on the actual interface that "talks" to
the drive. This interface 'speaks' 'block addresses'.
The "partition structure" (primary, extended, logical) are all
abstractions of the 'physical' drive. Although most people don't think of
them this way they actually are the "top level" of the "filesystem". What
we typically call the "filesystem" then is only an instance of a
particular subset within this "top level" abstraction.
Though it depends upon what one might mean by the term "knows", the PC
BIOS _IS_ the implementation of this particular filesystem abstraction.
The decisions as to how to deal with the initial design limitations from
the original and even subsequent BIOS designs is what has "given" us this
Linux, for very practical reasons, chooses to honor this brain dead,
convoluted drive abstraction. There is NOTHING about Linux that requires
any of these screwy kludges except that Linux must live within whatever
limitations are imposed by the BIOS with respect to booting. The
"practical" reasons include such things as people wanting to be able to
have bootable non-Linux operating systems on their drives.
As to lilo -- IT IS lilo that has the problem. While under Linux, lilo
determines and stores the block locations for the files that it must
access to boot the machine, when the boot occurs those blocks must be
accessible through BIOS calls. It is the limitations of the BIOS calls
that started this whole mess!
I repeat: There is _nothing_ inherent in Linux that requires any of this
"grew like topsy", screwball "design". The m68k versions of Linux have no
such concepts as "primary", "extended", or "logical" partitions. I have
not actually seen it done, but I believe that if one connects a scsi drive
from a PC to an Amiga Linux scsi bus, that Linux does recognize the drive
and its' structure.
As can no doubt be discerned, I detest the basic PC design. I would be
willing to defer to your claims that I am wrong concerning primary
partitions being visible in DOS, but am having some trouble with that. My
experience with DOS and Windoz is _very_ limited. Still however, of the
few dozens of machines that I have seen with more than one "primary"
partition (not including the "extended" partition which is also, as I
understand, a primary partition), I have never seen drive letters assigned
for more than one such partition (at least on the boot drive).
-->Please note firstname.lastname@example.org does not work<--
==>and yes eventually I'll get the mailer figured out<==
from a 1996 Micro$loth ad campaign:
"The less you know about computers the more you want Micro$oft!"
See! They do get some things right!
On Tue, 9 Dec 1997, Gertjan Klein wrote:
> bleach <wrl@BellSouth.net> wrote:
> > Paul, Linux doesn't recognize or even care about "primary" partitions.
> > "fdisk", "cfdisk", etc. recognize them but only because BIOS deals with
> > drives and partitions in this fashion.
> Wrong. BIOS has no notion of partitions at all. Linux _does_ 'care'
> about partitions - it just isn't particular about which _type_ of
> partition it is installed to (like you wrote).
> > The reason why there can only
> > be four primary partitions is due to the design of the PC BIOS.
> Wrong again - it is due to the design of the partition table, and was
> (presumably) done by MS. It has _nothing_ to to with the BIOS. When
> they ran into the limitation [*], they created extended partitions, of
> which there can be as many as you like.
> > Even lilo
> > ignores the DOS, Windoz, OS2, characteristic of "not seeing" the
> > "inactive" primary partitions (of course OS2 boot manager effectively does
> > also).
> Wrong again - DOS and Windows have no problem whatsoever with seeing
> inactive primary partitions. I have four primary DOS partitions on my
> first HD, and DOS sees all of them and assigns them drive letters. Only
> OS/2 has this silly limitation, and OS/2's Boot Manager 'hides' (changes
> the type from 4 to 0x14, or 6 to 0x16) all other primary DOS partitions
> when booting one. The reason LILO doesn't care about partition tables
> is that it creates a list of the physical locations of sectors to load
> when booting.
> [*] Actually, the real reason extended partitions were created was as a
> quick fix for the (then) MS-DOS limitation of not being able to access
> disks that were larger than 32 MB. They removed this limitation around
> DOS 4.0, IIRC.
> Gertjan Klein <email@example.com>
> The Boot Control home page: http://www.xs4all.nl/~gklein/bcpage.html
> TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
> firstname.lastname@example.org .
> Trouble? e-mail to email@example.com .
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
Trouble? e-mail to firstname.lastname@example.org .