Post by Kevin McAleavey on Mar 14, 2012 2:11:36 GMT -5
We've discovered the cause of several instances of problems booting from USB sticks, including sticks that won't format properly with KNOS, particularly our "upgrade" feature.
The symptoms include complete failure to boot and sometimes, when boot does occur, an older version of KNOS is present on the stick when it does boot instead of the newly installed version.
Turns out to be BIOS issues!
This has been seen in several machines built on the Intel I945 chipset, including some Toshiba models, designed for Windows 7. We have also seen corrupted entries in BIOS in the diagnostics submitted by our customers when this has occurred, but it's possible that the solution we're about to offer here won't require that you upgrade your BIOS unless the solution we offer isn't available on your manufacturer's particular BIOS settings.
The problem turns out to be that the BIOS in these machines contain what is known as "UEFI BIOS" in addition to the traditional BIOS. The Intel 945's are early generation "UEFI" BIOS and they supposedly got a few of their issues fixed in later boards. They also have updates for their original BIOS which may solve this problem if you wish to upgrade your BIOS.
Apparently there were two design motivations that went sideways in these machines when they were built. First was Microsoft's insistence that something be done about those awful USB viruses and so they demanded that Intel and other BIOS vendors change how USB bootup was handled, and in particular writing to the boot sectors on USB devices (including hard disks) and so that was part of the design of BIOS.
The OTHER part of the problem in their BIOS design is twofold. First, the defaults and secondly their "cheats" to make them boot up faster by "remembering" the previous bootup (into Windows or whatever had been booted previously) inside that added UEFI BIOS memory. One or both are the cause here as now confirmed in having a couple of affected customers try what we had them try out with success in each case so far.
The "defaults" assume that USB sticks will never be larger than 4GB since in the 32 bit world, that's all she wrote. Sticks are formatted in FAT32 usually and you can't go further than 4GB without going to either NTFS formatting or "extFAT" formatting which was introduced in Vista. We do UFS which is good for terabytes.
In their BIOS therefore, USB devices are set in BIOS for "auto" ... and that's probably the problem if your USB stick is larger than 4GB, as this was the maximum size expected for USB boot back in those days. When BIOS is set for USB boot in "auto mode" then BIOS will ignore any devices larger than 4GB and expect anything that large to be a hard disk instead. And so it boots the hard disks and fails to find KNOS because KNOS is not actually on a hard disk, it's on a USB stick which it ignores.
My Intel guy suggests the following: "In the BIOS under Boot section set the USB mass storage emulation type to All Fixed disks. The default option Auto assumes the large capacity USBs as hard disks and will not boot through them. It worked for me. Hope this fixes your problem also."
The OTHER angle at play with that BIOS has to do with speeding up boot artificially by not ever shutting down actually. It goes into a "sleep" mode and remembers the last thing it had booted when it was up and doesn't even BOTHER to read the boot sector when you try to boot from something else other than a DVD. After all, once Windows has been installed, who would EVER boot anything else?
Cure for THIS one (if the other above doesn't work) is to force the BIOS to boot up whatever it's told to each time. Buried somewhere in those BIOS settings is the other potential culprit: "restore state / power-up at power-applied" feature ... this is defaulted to ON and that makes your regular boot "sticky" and stores your prior bootup so as to make boot ignore any devices (OTHER than a DVD) when you try to boot something else ...
If all else fails, then you'll need to check your manufacturer's site and see if they have a BIOS upgrade available for your machine. If so, then they will have made the necessary changes that will allow you to properly boot from a USB drive. One or more of these should solve your problem.
This fix also applies to KNOS 8 users, and therefore I'll put a copy of this in the regular KNOS 8 customer support section as well.
The symptoms include complete failure to boot and sometimes, when boot does occur, an older version of KNOS is present on the stick when it does boot instead of the newly installed version.
Turns out to be BIOS issues!
This has been seen in several machines built on the Intel I945 chipset, including some Toshiba models, designed for Windows 7. We have also seen corrupted entries in BIOS in the diagnostics submitted by our customers when this has occurred, but it's possible that the solution we're about to offer here won't require that you upgrade your BIOS unless the solution we offer isn't available on your manufacturer's particular BIOS settings.
The problem turns out to be that the BIOS in these machines contain what is known as "UEFI BIOS" in addition to the traditional BIOS. The Intel 945's are early generation "UEFI" BIOS and they supposedly got a few of their issues fixed in later boards. They also have updates for their original BIOS which may solve this problem if you wish to upgrade your BIOS.
Apparently there were two design motivations that went sideways in these machines when they were built. First was Microsoft's insistence that something be done about those awful USB viruses and so they demanded that Intel and other BIOS vendors change how USB bootup was handled, and in particular writing to the boot sectors on USB devices (including hard disks) and so that was part of the design of BIOS.
The OTHER part of the problem in their BIOS design is twofold. First, the defaults and secondly their "cheats" to make them boot up faster by "remembering" the previous bootup (into Windows or whatever had been booted previously) inside that added UEFI BIOS memory. One or both are the cause here as now confirmed in having a couple of affected customers try what we had them try out with success in each case so far.
The "defaults" assume that USB sticks will never be larger than 4GB since in the 32 bit world, that's all she wrote. Sticks are formatted in FAT32 usually and you can't go further than 4GB without going to either NTFS formatting or "extFAT" formatting which was introduced in Vista. We do UFS which is good for terabytes.
In their BIOS therefore, USB devices are set in BIOS for "auto" ... and that's probably the problem if your USB stick is larger than 4GB, as this was the maximum size expected for USB boot back in those days. When BIOS is set for USB boot in "auto mode" then BIOS will ignore any devices larger than 4GB and expect anything that large to be a hard disk instead. And so it boots the hard disks and fails to find KNOS because KNOS is not actually on a hard disk, it's on a USB stick which it ignores.
My Intel guy suggests the following: "In the BIOS under Boot section set the USB mass storage emulation type to All Fixed disks. The default option Auto assumes the large capacity USBs as hard disks and will not boot through them. It worked for me. Hope this fixes your problem also."
The OTHER angle at play with that BIOS has to do with speeding up boot artificially by not ever shutting down actually. It goes into a "sleep" mode and remembers the last thing it had booted when it was up and doesn't even BOTHER to read the boot sector when you try to boot from something else other than a DVD. After all, once Windows has been installed, who would EVER boot anything else?
Cure for THIS one (if the other above doesn't work) is to force the BIOS to boot up whatever it's told to each time. Buried somewhere in those BIOS settings is the other potential culprit: "restore state / power-up at power-applied" feature ... this is defaulted to ON and that makes your regular boot "sticky" and stores your prior bootup so as to make boot ignore any devices (OTHER than a DVD) when you try to boot something else ...
If all else fails, then you'll need to check your manufacturer's site and see if they have a BIOS upgrade available for your machine. If so, then they will have made the necessary changes that will allow you to properly boot from a USB drive. One or more of these should solve your problem.
This fix also applies to KNOS 8 users, and therefore I'll put a copy of this in the regular KNOS 8 customer support section as well.