I've got a tri boot system with Windows XP, Windows 7 and Windows 8 - all on different HDs. The boot menu is the one that Windows 8 loads and it displays all the OSes correctly. Whenever I choose a different OS than Windows 8 it reboots my PC and then it loads the chosen OS. What kind of information is WIN 8 not being able to store or whatever else might be happening to explain this?

  • 1
    I don't understand the question. You said it does boot everything as expected, so what's the problem. Are you asking why it needs to reboot before loading the chosen OS? If so, then I suspect what is actually happening is that when you select to boot an older OS, Windows 8 writes something to the boot record of the primary drive to load the other OS, then reboots (though how it then comes back to the Win8 boot-menu is strange, but since you said nothing about the boot-menu even being shown after the reboot, perhaps it writes the Win8 bootloader back to the boot record on boot of the other OS). – Synetech Jul 19 '12 at 18:04
  • @Synetech Yes, the main question would be "Why does it need to reboot before loading the chosen OS? ". To be more exact what is that "something" that is being written to boot record? – Darius Jul 19 '12 at 19:04
  • The boot loader. – Synetech Jul 19 '12 at 19:09
  • So when you select Windows XP or 7, what exactly happens? Do you see the BIOS POST? Do you see the Windows 7 boot-menu? – Synetech Jul 19 '12 at 19:10
  • When I select i.e. Win 7 the system reboots, I see BIOS POST and then Win 7 swooshy logo and then it gets me to the usual "Press Ctrl+Alt+Del to logon" – Darius Jul 19 '12 at 19:14

It figured out, it simply adds bootsequence key to {bootmgr} with the GUID of the target loader application.

bcdedit /set {bootmgr} bootsequence {1456fa25-1dec-11e2-97c4-e940ad01c6c6}

Next reboot, bootmgr takes the second OS to boot and removes the bootsequence entry by itself (before the second OS is loading).

BCD booting to second OS:

Bezeichner              {bootmgr}
device                  partition=C:
description             Windows Boot Manager
locale                  de-DE
inherit                 {globalsettings}
integrityservices       Enable
default                 {default}
resumeobject            {1456fa20-1dec-11e2-97c4-e940ad01c6c6}
displayorder            {default}
bootsequence            {1456fa25-1dec-11e2-97c4-e940ad01c6c6}
toolsdisplayorder       {memdiag}
timeout                 30

Bezeichner              {default}
device                  partition=C:
path                    \windows\system32\winload.exe
description             Windows 8
// ...

Bezeichner              {1456fa25-1dec-11e2-97c4-e940ad01c6c6}
device                  ramdisk=[C:]\WinPE\WinPE.amd64.wim,{1456fa24-1dec-11e2-97c4-e940ad01c6c6}
path                    \windows\system32\winload.exe
description             WinPE4 x64

When Windows 8 is set as default boot choice it is preloaded.

Selecting a different OS in the case of multi booting involves setting a temporary one time boot loader entry in BCD and rebooting.

No boot records are written or updated - only BCD.

  • I still think you can either expand this answer and/or provide a link or two for further reading. – Darius Jul 29 '12 at 6:08

According to NeoSmart Technologies article Microsoft has chosen to completely change the manner in which operating systems are loaded once selected from the boot menu. The usual boot process that just about any bootloader goes through is something like this:

enter image description here

With Windows 8, this boot process has been changed completely, and now something more along these lines takes place:

enter image description here

It’s a subtle change as the boot menu is not shown the second time around, but the PC actually reboots after making the selection. We’re not clear on why Microsoft is doing this, but if I’d had to hazard a really wild guess, I’d say it’s to clean up the environment that’s been altered/modified/corrupted by the new boot menu. Basically, it seems that the new boot menu interface has become it’s own mini-OS, and is possibly running in protected mode (vs the traditional real-mode bootloader), and as such, needs to reboot to bring the system back into a real-mode that the Windows 8 kernel can initialize from and bring the system from real to protected mode itself. In short: the new boot menu is more of an OS and less of a boot menu than ever before.

  • Bolded text is my own emphasis due to the nature of the question – Darius Nov 26 '12 at 17:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.