why on earth are you using bochs to load linux? that is totally unnecessary.
As ron says you dont need bochs to load linux. However, using your numbers you provided 512Megs in 12 seconds would be 43 MB/s. To achieve that rate you must be using either a RAID setup or a >= 10k rpm drive. That might explain why you need Bochs.
40 to 50 MB/s jives with what I see as the average stream speed for a 10k drive. So from the info you have provided it looks like to me that your limit is not Bochs but rather the IO stream speed of the media you are loading from. Unless you are using some sort of raid array.
Rather than attempting to speed up the load time perhaps you should attempt to reduce the size of your image that you need to load. Perhaps break it into 2 parts with a smaller initrd that loads a bigger ramdisk and then piviot root. IO access routines in Linux will be more close to optimal than Bochs routines.
Bochs itself is too slow in executing the things. I observed that it is around 20 times slow than LinuxBIOS which is
executing before Bochs.
How did you measure this?
Bochs runs in real mode rather than protected but other than the fact that it uses i386 instructions so yeah it might be a bit slower but 20 times seems excessive. Perhaps your ADLO shadow area init is doing something to mess up the cache settings?
-- Richard A. Smith