newbie question: Can't boot from SCSI hard disk

I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The system
boots fine from the boot floppy created during the install.

I’ve tried building a .boot image with the Fsys.aha7scsi driver,
puttering around with the boot option in fdisk, reloading the loader.

Any tips appreciated.

Ted Hildum

What controller are you using?

“Edward A. Hildum” <ehildum@mail.arc.nasa.gov> wrote in message
news:3A037599.C314CDF1@mail.arc.nasa.gov

I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The system
boots fine from the boot floppy created during the install.

I’ve tried building a .boot image with the Fsys.aha7scsi driver,
puttering around with the boot option in fdisk, reloading the loader.

Any tips appreciated.

Ted Hildum
\

Edward A. Hildum <ehildum@mail.arc.nasa.gov> wrote:

I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The system
boots fine from the boot floppy created during the install.

What type of controller do you have?

In the SCSI bios, do you have the >1G drive option enabled?

Missing OS usually means there is a drive mapping disagreement
between the BIOS/OS/Disk controller.

-David

My controller is an Adaptec AHA-2940UW, and extended translation (>1G) is
enabled.

I’m not clear what you mean by a drive mapping disagreement in this case,
since a SCSI disk looks like a linear array of blocks to the controller.

I’ve tried installing to a single partition and multiple partitions with no
change in symptoms. QNX always makes partition 4 the boot partition.

Thanks for your response,
Ted Hildum

David Gibbs wrote:

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote:
I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The system
boots fine from the boot floppy created during the install.

What type of controller do you have?

In the SCSI bios, do you have the >1G drive option enabled?

Missing OS usually means there is a drive mapping disagreement
between the BIOS/OS/Disk controller.

-David

Edward A. Hildum <ehildum@mail.arc.nasa.gov> wrote:

My controller is an Adaptec AHA-2940UW, and extended translation (>1G) is
enabled.

I’m not clear what you mean by a drive mapping disagreement in this case,
since a SCSI disk looks like a linear array of blocks to the controller.

Not exactly – the >1G option actually does change how the SCSI controller
maps the blocks on the drive. (It is kind of like LBA mode for EIDE disks,
but was designed in from early on, rather than being a hack that was added
along the way.)

As for mapping disagreement – SCSI disks are still accessed by a
h/t/s mapping, just like IDE – and the SCSI controller maps that
to a linear block. When we specify the disk block for loading, we
store a h/t/s value. At boot time, the loader is running in real
mode and making BIOS calls to load the OS. The loader calls into the
BIOS, and tells it to load the first block of the OS according to the
h/t/s value, then looks for the OS signature at the start. If the block
that is read doesn’t have the start of OS signature, it spits out the
missing operating system message.

So, if how we specify the block when you write your OS image to
/.boot in protected mode, direct h/w access is different from how
the BIOS translates the h/t/s value in real mode at boot time, you
will get a missing OS error.

-David


I’ve tried installing to a single partition and multiple partitions with no
change in symptoms. QNX always makes partition 4 the boot partition.

Thanks for your response,
Ted Hildum

David Gibbs wrote:

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote:
I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The system
boots fine from the boot floppy created during the install.

What type of controller do you have?

In the SCSI bios, do you have the >1G drive option enabled?

Missing OS usually means there is a drive mapping disagreement
between the BIOS/OS/Disk controller.

-David

I think I can turn off the >1G translation for this drive (1.06G), but what’s the
solution for, say, a 2G drive? Is there a way to specify the starting block in
/.boot to get around this issue? I assume that whatever the mapping is, it keeps
all the blocks in order, so I only need to get the first block right.

Thanks
Ted Hildum



David Gibbs wrote:

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote:
My controller is an Adaptec AHA-2940UW, and extended translation (>1G) is
enabled.

I’m not clear what you mean by a drive mapping disagreement in this case,
since a SCSI disk looks like a linear array of blocks to the controller.

Not exactly – the >1G option actually does change how the SCSI controller
maps the blocks on the drive. (It is kind of like LBA mode for EIDE disks,
but was designed in from early on, rather than being a hack that was added
along the way.)

As for mapping disagreement – SCSI disks are still accessed by a
h/t/s mapping, just like IDE – and the SCSI controller maps that
to a linear block. When we specify the disk block for loading, we
store a h/t/s value. At boot time, the loader is running in real
mode and making BIOS calls to load the OS. The loader calls into the
BIOS, and tells it to load the first block of the OS according to the
h/t/s value, then looks for the OS signature at the start. If the block
that is read doesn’t have the start of OS signature, it spits out the
missing operating system message.

So, if how we specify the block when you write your OS image to
/.boot in protected mode, direct h/w access is different from how
the BIOS translates the h/t/s value in real mode at boot time, you
will get a missing OS error.

-David

I’ve tried installing to a single partition and multiple partitions with no
change in symptoms. QNX always makes partition 4 the boot partition.

Thanks for your response,
Ted Hildum

We are using the Adaptec AHA-2940UW PRO with 8Gig SCSI Drives on QNX4.25
(Note the 3940 didn’t work).

Warning: the cylinders used in the partition must be between 0 and 1023 for
booting.
If you have other things on the drive and the QNX Partition’s Cylinders go
beyond 1023, the
drive may not be bootable (DOS and some other OS’s have this limitation - to
be bootable the partition has to be fully in the first 1024 cylinders -
0…1023).

If the QNX4 partition occupies cylinders both <1023 and >1023, it will
probably be bootable in the beginning, but may loose boot support if you
ever redo the boot file.

Solutions:

  1. Clear all partitions, and in the SCSI Controller enable
    [Ttranslate/LBA/Mapping] mode so that the to remount the drive with software
    remapped cylinders/heads/sectors so that cylinders is <1024. Continue as
    before

  2. At the screen where you select the partition - Press ALT-ENTER to bring
    up a menu and select shell. The in the shell run (fdisk /dev/hd0.0) or
    (/bin/fdisk /dev/hd0.0) or similar. In the fdisk manually delete any
    existing type 77 partition, and then create your own type 77 partition
    (usually in position 4) in available cylinders < 1024. The set the partition
    as bootable, save, and reboot the computer. When CD gets to that stage again
    install to the existing partition.

  3. Prepare an IDE Drive and boot from it, then mount the SCSI drive
    manually and configure it up (Fsys.scsi…, fdisk /dev/hdX.0, dinit -h
    /dev/hdX.0, mount -p /dev/hdX.0; mount /dev/hdX.0t77 /hdX0), load whatever
    you like onto the drive (copy of IDE with custom .boot file), then remove
    the IDE, and boot from the SCSI.

  4. Create a small boot partion within the first 1023 cylinders that does
    nothing but mount a larger type 78 QNX4 Partition that is allowed to go
    beyond cylinder 1023. The larger partition may be setup by install from the
    CD to the type 78 partition. Reading will be required…

-Paul
paul@jenosys.com

Edward A. Hildum <ehildum@mail.arc.nasa.gov> wrote in message
news:3A06ED29.EE370592@mail.arc.nasa.gov

My controller is an Adaptec AHA-2940UW, and extended translation (>1G) is
enabled.

I’m not clear what you mean by a drive mapping disagreement in this case,
since a SCSI disk looks like a linear array of blocks to the controller.

I’ve tried installing to a single partition and multiple partitions with
no
change in symptoms. QNX always makes partition 4 the boot partition.

Thanks for your response,
Ted Hildum

David Gibbs wrote:

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote:
I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The
system
boots fine from the boot floppy created during the install.

What type of controller do you have?

In the SCSI bios, do you have the >1G drive option enabled?

Missing OS usually means there is a drive mapping disagreement
between the BIOS/OS/Disk controller.

-David

Thanks for the reply, Paul.

The problem doesn’t seem to be related to the 1024 cylindar limit since there
are only 128 cylindars on the disk. I did try an installation with and without
BIOS LBA translation enabled. Both installs give the same results at boot time:

QNX Loader
Boot Partition 4
Missing Operating System

The drive geometry (reported by the install program) is: 255 heads, 63
sectors/cylindar, 128 cylindars

fdisk shows the partition to be in slot 4, type 77, bootable, start cyl = 0, end
cyl = 126, 127 cylindars, 2040192 blocks, 996 MB.

I like David Gibbs suggestion that the mapping from linear SCSI blocks to
cyl/head/sect is different for the BIOS at boot time versus install time (with
32-bit SCSI driver loaded). I just don’t know how to tell the loader where to
look for the boot image (if its even possible).

Ted Hildum

Paul Russell wrote:

We are using the Adaptec AHA-2940UW PRO with 8Gig SCSI Drives on QNX4.25
(Note the 3940 didn’t work).

Warning: the cylinders used in the partition must be between 0 and 1023 for
booting.
If you have other things on the drive and the QNX Partition’s Cylinders go
beyond 1023, the
drive may not be bootable (DOS and some other OS’s have this limitation - to
be bootable the partition has to be fully in the first 1024 cylinders -
0…1023).

If the QNX4 partition occupies cylinders both <1023 and >1023, it will
probably be bootable in the beginning, but may loose boot support if you
ever redo the boot file.

Solutions:

  1. Clear all partitions, and in the SCSI Controller enable
    [Ttranslate/LBA/Mapping] mode so that the to remount the drive with software
    remapped cylinders/heads/sectors so that cylinders is <1024. Continue as
    before

  2. At the screen where you select the partition - Press ALT-ENTER to bring
    up a menu and select shell. The in the shell run (fdisk /dev/hd0.0) or
    (/bin/fdisk /dev/hd0.0) or similar. In the fdisk manually delete any
    existing type 77 partition, and then create your own type 77 partition
    (usually in position 4) in available cylinders < 1024. The set the partition
    as bootable, save, and reboot the computer. When CD gets to that stage again
    install to the existing partition.

  3. Prepare an IDE Drive and boot from it, then mount the SCSI drive
    manually and configure it up (Fsys.scsi…, fdisk /dev/hdX.0, dinit -h
    /dev/hdX.0, mount -p /dev/hdX.0; mount /dev/hdX.0t77 /hdX0), load whatever
    you like onto the drive (copy of IDE with custom .boot file), then remove
    the IDE, and boot from the SCSI.

  4. Create a small boot partion within the first 1023 cylinders that does
    nothing but mount a larger type 78 QNX4 Partition that is allowed to go
    beyond cylinder 1023. The larger partition may be setup by install from the
    CD to the type 78 partition. Reading will be required…

-Paul
paul@jenosys.com

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote in message
news:> 3A06ED29.EE370592@mail.arc.nasa.gov> …
My controller is an Adaptec AHA-2940UW, and extended translation (>1G) is
enabled.

I’m not clear what you mean by a drive mapping disagreement in this case,
since a SCSI disk looks like a linear array of blocks to the controller.

I’ve tried installing to a single partition and multiple partitions with
no
change in symptoms. QNX always makes partition 4 the boot partition.

Thanks for your response,
Ted Hildum

David Gibbs wrote:

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote:
I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard disk.
The OS install goes fine, but the boot loader can’t find the OS - it
halts saying “Missing operating system”. What am I missing? The
system
boots fine from the boot floppy created during the install.

What type of controller do you have?

In the SCSI bios, do you have the >1G drive option enabled?

Missing OS usually means there is a drive mapping disagreement
between the BIOS/OS/Disk controller.

-David

You don’t happen to have a license floppy in the drive…
I’ve done that… They aren’t bootable…

If you had partitions defined for the drive already, then switching the BIOS
LBA may not have an effect. Try unswitching it. or deleting all partitions.

The fact that 255 heads are defined means the drive IS running in either LBA
or Large mode, definitely not in Normal mode. I would delete all partitions
from the drive and start again. I assume the SCSI BIOS is autodetecting the
drive geometry…

-Paul

Edward A. Hildum <ehildum@mail.arc.nasa.gov> wrote in message
news:3A073DE2.7D25C37F@mail.arc.nasa.gov

Thanks for the reply, Paul.

The problem doesn’t seem to be related to the 1024 cylindar limit since
there
are only 128 cylindars on the disk. I did try an installation with and
without
BIOS LBA translation enabled. Both installs give the same results at boot
time:

QNX Loader
Boot Partition 4
Missing Operating System

The drive geometry (reported by the install program) is: 255 heads, 63
sectors/cylindar, 128 cylindars

fdisk shows the partition to be in slot 4, type 77, bootable, start cyl =
0, end
cyl = 126, 127 cylindars, 2040192 blocks, 996 MB.

I like David Gibbs suggestion that the mapping from linear SCSI blocks to
cyl/head/sect is different for the BIOS at boot time versus install time
(with
32-bit SCSI driver loaded). I just don’t know how to tell the loader
where to
look for the boot image (if its even possible).

Ted Hildum

Paul Russell wrote:

We are using the Adaptec AHA-2940UW PRO with 8Gig SCSI Drives on QNX4.25
(Note the 3940 didn’t work).

Warning: the cylinders used in the partition must be between 0 and 1023
for
booting.
If you have other things on the drive and the QNX Partition’s Cylinders
go
beyond 1023, the
drive may not be bootable (DOS and some other OS’s have this
limitation - to
be bootable the partition has to be fully in the first 1024 cylinders -
0…1023).

If the QNX4 partition occupies cylinders both <1023 and >1023, it will
probably be bootable in the beginning, but may loose boot support if you
ever redo the boot file.

Solutions:

  1. Clear all partitions, and in the SCSI Controller enable
    [Ttranslate/LBA/Mapping] mode so that the to remount the drive with
    software
    remapped cylinders/heads/sectors so that cylinders is <1024. Continue as
    before

  2. At the screen where you select the partition - Press ALT-ENTER to
    bring
    up a menu and select shell. The in the shell run (fdisk /dev/hd0.0) or
    (/bin/fdisk /dev/hd0.0) or similar. In the fdisk manually delete any
    existing type 77 partition, and then create your own type 77 partition
    (usually in position 4) in available cylinders < 1024. The set the
    partition
    as bootable, save, and reboot the computer. When CD gets to that stage
    again
    install to the existing partition.

  3. Prepare an IDE Drive and boot from it, then mount the SCSI drive
    manually and configure it up (Fsys.scsi…, fdisk /dev/hdX.0, dinit -h
    /dev/hdX.0, mount -p /dev/hdX.0; mount /dev/hdX.0t77 /hdX0), load
    whatever
    you like onto the drive (copy of IDE with custom .boot file), then
    remove
    the IDE, and boot from the SCSI.

  4. Create a small boot partion within the first 1023 cylinders that
    does
    nothing but mount a larger type 78 QNX4 Partition that is allowed to go
    beyond cylinder 1023. The larger partition may be setup by install from
    the
    CD to the type 78 partition. Reading will be required…

-Paul
paul@jenosys.com

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote in message
news:> 3A06ED29.EE370592@mail.arc.nasa.gov> …
My controller is an Adaptec AHA-2940UW, and extended translation (>1G)
is
enabled.

I’m not clear what you mean by a drive mapping disagreement in this
case,
since a SCSI disk looks like a linear array of blocks to the
controller.

I’ve tried installing to a single partition and multiple partitions
with
no
change in symptoms. QNX always makes partition 4 the boot partition.

Thanks for your response,
Ted Hildum

David Gibbs wrote:

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote:
I’ve installed QNX 4.25 from the Dec99 CD onto a 1 Gig SCSI hard
disk.
The OS install goes fine, but the boot loader can’t find the OS -
it
halts saying “Missing operating system”. What am I missing? The
system
boots fine from the boot floppy created during the install.

What type of controller do you have?

In the SCSI bios, do you have the >1G drive option enabled?

Missing OS usually means there is a drive mapping disagreement
between the BIOS/OS/Disk controller.

-David

Paul,
I deleted the partitions, switched to normal mode and installed: it works!

After installing with normal mode set, I switched the BIOS back to >1G
translation, and it still works. I’m still somewhat confused, but at least I
have another knob to fiddle with when things don’t work.

Thanks for your help,
Ted Hildum

Paul Russell wrote:

You don’t happen to have a license floppy in the drive…
I’ve done that… They aren’t bootable…

If you had partitions defined for the drive already, then switching the BIOS
LBA may not have an effect. Try unswitching it. or deleting all partitions.

The fact that 255 heads are defined means the drive IS running in either LBA
or Large mode, definitely not in Normal mode. I would delete all partitions
from the drive and start again. I assume the SCSI BIOS is autodetecting the
drive geometry…

-Paul

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote in message
news:> 3A073DE2.7D25C37F@mail.arc.nasa.gov> …
Thanks for the reply, Paul.

The problem doesn’t seem to be related to the 1024 cylindar limit since
there
are only 128 cylindars on the disk. I did try an installation with and
without
BIOS LBA translation enabled. Both installs give the same results at boot
time:

QNX Loader
Boot Partition 4
Missing Operating System

The drive geometry (reported by the install program) is: 255 heads, 63
sectors/cylindar, 128 cylindars

fdisk shows the partition to be in slot 4, type 77, bootable, start cyl =
0, end
cyl = 126, 127 cylindars, 2040192 blocks, 996 MB.

I like David Gibbs suggestion that the mapping from linear SCSI blocks to
cyl/head/sect is different for the BIOS at boot time versus install time
(with
32-bit SCSI driver loaded). I just don’t know how to tell the loader
where to
look for the boot image (if its even possible).

Ted Hildum

If partitions are already defined, then switching the Translation mode
on/off
probably isn’t doing anything.
Look in fdisk to see if the number of cylinders has changed with either
setting.
Chances are the SCSI sees the existing partitions and uses the preformatted
settings.
Otherwise I would definitely recommend you NOT change this setting once
partitions are defined,
as the software will no longer be gauranteed to read the disk properly…
-Paul

Edward A. Hildum <ehildum@mail.arc.nasa.gov> wrote in message
news:3A085263.CDE6FC3A@mail.arc.nasa.gov

Paul,
I deleted the partitions, switched to normal mode and installed: it
works!

After installing with normal mode set, I switched the BIOS back to >1G
translation, and it still works. I’m still somewhat confused, but at
least I
have another knob to fiddle with when things don’t work.

Thanks for your help,
Ted Hildum

Paul Russell wrote:

You don’t happen to have a license floppy in the drive…
I’ve done that… They aren’t bootable…

If you had partitions defined for the drive already, then switching the
BIOS
LBA may not have an effect. Try unswitching it. or deleting all
partitions.

The fact that 255 heads are defined means the drive IS running in either
LBA
or Large mode, definitely not in Normal mode. I would delete all
partitions
from the drive and start again. I assume the SCSI BIOS is autodetecting
the
drive geometry…

-Paul

Edward A. Hildum <> ehildum@mail.arc.nasa.gov> > wrote in message
news:> 3A073DE2.7D25C37F@mail.arc.nasa.gov> …
Thanks for the reply, Paul.

The problem doesn’t seem to be related to the 1024 cylindar limit
since
there
are only 128 cylindars on the disk. I did try an installation with
and
without
BIOS LBA translation enabled. Both installs give the same results at
boot
time:

QNX Loader
Boot Partition 4
Missing Operating System

The drive geometry (reported by the install program) is: 255 heads,
63
sectors/cylindar, 128 cylindars

fdisk shows the partition to be in slot 4, type 77, bootable, start
cyl =
0, end
cyl = 126, 127 cylindars, 2040192 blocks, 996 MB.

I like David Gibbs suggestion that the mapping from linear SCSI blocks
to
cyl/head/sect is different for the BIOS at boot time versus install
time
(with
32-bit SCSI driver loaded). I just don’t know how to tell the loader
where to
look for the boot image (if its even possible).

Ted Hildum