Slow USB RAM boot

  • Thread starter Thread starter Mark K Vallevand
  • Start date Start date
M

Mark K Vallevand

I'm booting a ramdisk SDI from USB and reading the USB device through the
BIOS is very very slow. It takes about 20 minutes to read the SDI file from
the USB device. Its USB 1.1, so I expected it to be slow, but not that
slow. Anyone have any ideas about speeding it up?
 
What is the size of your SDI image?
How long does it take for you to copy SDI file from flash to HDD using the
Win XP. This is almost a maximum speed you can achieve.

If your BIOS is slow, you could write code that will read USB disk directly
without BIOS (this will require you to do significant programming).
You can make code that will read from flash at slightly greater speeds that
windows can.

Regards,
Slobodan
 
My SDI image is 120 mb. It takes about 2 minutes to copy it from USB device
to HDD.

Is there a way to make ntldr use the BIOS USB read more efficiently?
 
Mark,

Major problem lies in inefficient BIOS implementation that supports disk's
on USB.
So there is a little that you can do with ntldr. (I don't think that MS will
make special support for USB boot).
You can create your bootloader that will load SDI data to RAM and then you
can follow:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnxpesp1/ht
ml/ram_sdi.asp

Alternative is to find new BIOS or board with faster support for USB disks.
Sorry.

Regards,
Slobodan
 
Yes. I'd be extremely happy to get close to this value. But, I'm getting
closer to 1500 seconds to read 120 mb thru the BIOS Int 13.

--
Regards.
Mark K Vallevand


Isaac Chen said:
120 MB / 120sec = 1 MB/sec. Pretty close to the USB 1.1 maximum.

Isaac Chen
 
If you are reading from USB trough int 13 then don't read one sector at one
time.
Read block like 32 or 64 sectors at one time. This could speed up things in
some BIOS-es.

Regards,
Slobodan


Mark K Vallevand said:
Yes. I'd be extremely happy to get close to this value. But, I'm getting
closer to 1500 seconds to read 120 mb thru the BIOS Int 13.
 
But, I don't have control over how the sectors are read. I'm doing a USB
ramdisk boot. It takes 25 minutes for the loader to read the SDI file.
Once the SDI file is loaded, of course, it runs really fast.

--
Regards.
Mark K Vallevand


Slobodan Brcin said:
If you are reading from USB trough int 13 then don't read one sector at one
time.
Read block like 32 or 64 sectors at one time. This could speed up things in
some BIOS-es.

Regards,
Slobodan
 
Sorry,

I thought that you have created your bootloader.

You can try with changing your Device, USB Disk or BIOS.
Or wait for MS to make new ntldr. ;-)

Regard,
Slobodan
 
Back
Top