Jump to content











Photo
- - - - -

Understanding the Double-RAM Requirement


  • Please log in to reply
2 replies to this topic

#1 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 25 April 2011 - 11:23 AM

Scenario #1:

Suppose I have a Windows PE .ISO called: WINPE.ISO

Suppose WINPE.ISO is 400 MiB.

Now suppose I burn it to a CD and boot a computer with it. Suppose my computer has 512 MiB RAM.

Suppose that when the Windows PE CD boots, it will load the BOOT.WIM file into RAM. Suppose BOOT.WIM is 399 MiB.

512 MiB - 399 MiB = 113 MiB available. No problem.

Scenario #2:

Suppose I have an HDD image called: MY_SAN.HDD

Suppose that I have a partition in that image file and a FAT32 filesystem on that partition. Suppose I have GRUB4DOS installed to the image file's MBR and to the FAT32 filesystem.

Suppose I plop the WINPE.ISO file into the FAT32 filesystem.

Suppose I boot the HDD image from gPXE or iPXE like this:

sanboot iscsi:192.168.0.54::::my_san:my_san

GRUB4DOS will boot from the MBR and load the rest of itself from the FAT32 filesystem.

Suppose I do this from GRUB4DOS:

root (hd0,0)

map /WINPE.ISO (hd32)

map --hook

root (hd32)

chainloader (hd32)

boot

The SAN-boot and GRUB4DOS have a negligible RAM requirement, so let's say I still have 512 MiB of RAM available.

Suppose that when the Windows PE .ISO image file boots as a virtual CD, it will load the BOOT.WIM file into RAM. Remember that BOOT.WIM is 399 MiB.

512 MiB - 399 MiB = 113 MiB available. No problem.

Scenario #3:

Suppose that I use PXELINUX and I boot the WINPE.ISO file with MEMDISK:

/tftpboot/pxelinux.cfg/default:

DEFAULT winpe

LABEL winpe

  KERNEL memdisk

  APPEND iso

  INITRD winpe.iso


INITRD means Initial RAM Disk. The MEMDISK provides a Memory-mapped Disk. These things are hinting that there is a RAM requirement. WINPE.ISO costs us 400 MiB of RAM.

Suppose that when the Windows PE .ISO image file boots as a virtual CD, it will load the BOOT.WIM file into RAM. Remember that BOOT.WIM is 399 MiB.

512 MiB - 400 MiB - 399 MiB = -287 MiB available. OH NO! That does not work!

Scenario #4:

Suppose that I use GRUB4DOS and I boot the WINPE.ISO file with map --mem:

root (hd0,0)

map --mem /WINPE.ISO (hd32)

map --hook

root (hd32)

chainloader (hd32)

boot

map --mem will provide a Memory-Mapped disk. This is hinting that there is a RAM requirement. WINPE.ISO costs us 400 MiB of RAM.

Suppose that when the Windows PE .ISO image file boots as a virtual CD, it will load the BOOT.WIM file into RAM. Remember that BOOT.WIM is 399 MiB.

512 MiB - 400 MiB - 399 MiB = -287 MiB available. OH NO! That does not work!

Summary:

If you memory-map WINPE.ISO as a virtual CD, you should be aware that the CD ITSELF will LOAD BOOT.WIM INTO RAM REGARDLESS OF THE VIRTUAL CD ALREADY BEING IN RAM. SO: You need twice as much RAM as you might have initially thought.

#2 i

i

    Silver Member

  • Advanced user
  • 526 posts
  •  
    United Nations

Posted 25 April 2011 - 01:26 PM

I refuse to believe that people are still stuck with 512 :dubbio:




...but its has nice info regardless. :cheers:

#3 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 25 April 2011 - 06:50 PM

I refuse to believe that people are still stuck with 512 ;)

I have 192 MiB RAM. There are cellular telephones with more RAM now. :)




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users