Windows Guest Stuck after upgrade

Discussions about using Windows guests in VirtualBox.
Post Reply
padi22
Posts: 3
Joined: 29. Sep 2023, 02:35

Windows Guest Stuck after upgrade

Post by padi22 »

VirtualBox Version: 7.0.8 r156879 (QT5.15.2) - No guest additions installed
Host: Windows 10 Pro 22H2 x64
Guest: Windows 7 Ultimate x86

Hello, I apologize if my English is not understandable enough, I will do my best to make myself understood.

I recently watched a video that showed what Windows was like from its first version to the current one (I know from Windows 95 onwards), I really liked it and I wanted to replicate the procedure of updating Windows from version 2.1 to version 10.

List:

Windows 2.1
Windows 3.0
Windows 3.1
Windows 95
Windows 98FE
Windows 2000
Windows XP Professional
Windows Vista Ultimate
Windows 7 Ultimate
Windows 8.1 Pro - Problem

So far everything is going perfectly, the only problem I have had so far is when upgrading from Windows 7 to Windows 8.1, keeping the files and settings.

The first thing I get after I restart the system and load the windows logo plus a "configuring" message, once it reaches 100%, the screen goes completely black and does not respond again.

After a restart, the same thing happens, the Windows logo passes and a black screen remains, finally in a second restart the "rollback" is activated

I honestly can't find the problem, the update only works if I choose the "don't keep anything" option, only with that option can I update without problems.

As a last piece of information, I tried going directly from Windows 7 to Windows 10, in this case I can see that the system restarts at 30% of the configuration and I get the same black screen. The only thing new on this screen is the infinite loading circle

I am attaching two log files

The Upgrade file contains the information when I reconfigured the VM to move to Windows 8.1

The Reset File: contains the information from the first reset I performed where I got a black screen again

The "Upgrade 1" and "Upgrade 2" files are separated because they exceed the maximum allowed size.
Attachments
Upgrade 2.log
(96.23 KiB) Downloaded 26 times
Upgrade 1.txt
(84.71 KiB) Downloaded 31 times
Reset.log
(94.09 KiB) Downloaded 30 times
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Windows Guest Stuck after upgrade

Post by mpack »

Windows 8.1 requires that you choose the correct OS template. Win8.1 can't run under the Win7 template as the security requirements took a big leap right then.

Please zip logs in future - getting them in fragments is not convenient.
padi22
Posts: 3
Joined: 29. Sep 2023, 02:35

Re: Windows Guest Stuck after upgrade

Post by padi22 »

Logs.rar
Log VM W2k to W8 fail,
(56.61 KiB) Downloaded 33 times
I understand, so no matter how much I configure the template before updating, if I want to keep the configurations it will still fail, is that correct?

I ask this because if I do a direct installation of Windows 7, I don't have any problems, I can upgrade directly to Windows 10 even

I think I found the problem.

The problem is Windows 2000, I found a person on a reddit forum who did the same thing as me. It worked by updating W98 to WME, I tested it and it worked, I can update up to Windows 10 without any problem
Last edited by padi22 on 30. Sep 2023, 04:59, edited 2 times in total.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Windows Guest Stuck after upgrade

Post by mpack »

padi22 wrote: 29. Sep 2023, 21:23 I understand, so no matter how much I configure the template before updating, if I want to keep the configurations it will still fail, is that correct?
No, that is not correct. You change the template to Win 8.1 then upgrade. Win7 should run just fine, at least long enough to kick off the upgrade process.
padi22 wrote: 29. Sep 2023, 21:23 I ask this because if I do a direct installation of Windows 7, I don't have any problems, I can upgrade directly to Windows 10 even
AFAIK, no you can't. Again, Win10 requires additional security features that are not enabled by the Win7 template.
padi22 wrote: 29. Sep 2023, 21:23 It worked by updating W98 to WME, I tested it and it worked, I can update up to Windows 10 without any problem
And again, I don't believe that. WinME and Win10 aren't even related OSs. They had similar names but totally different architectures. It's like "upgrading" DOS to MacOS. And you still have not explained what counts as an "upgrade". If it's just a wipe of the old and installation of the new then it isn't an upgrade in my book.

And we'd also have the issue that XP and later require activation.
fth0
Volunteer
Posts: 5678
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Windows Guest Stuck after upgrade

Post by fth0 »

mpack wrote: 30. Sep 2023, 11:04 Win10 requires additional security features that are not enabled by the Win7 template.
I'm curious and eager to learn. Can you give more details or an example?

Background information:

I've created two VMs ("Windows 7 (64-bit)" and "Windows 10 (64-bit)"), started both VMs, did not select an ISO image, and shut down the VMs after the "No bootable medium found". The VBox.log files indicate two major configuration differences (USB 2.0 vs. 3.0, 32 GB vs. 50 GB VDI) and some expected smaller ones (e.g. MAC addresses, UUIDs, other random values).

In the VirtualBox source code, the corresponding templates in Global::sOSTypes[] don't indicate additional differences (with the exception of the initial Video Memory size). But there are many other ways to act on the guest OS type in all areas of the implementation ...

Edit:
I found a difference when using the 32-bit templates (instead of the 64-bit ones): The "Windows 10 (32-bit)" template adds PAE+NX, and that definitely counts as a security-related difference to the "Windows 7 (32-bit)" template.
Last edited by fth0 on 30. Sep 2023, 14:24, edited 1 time in total.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows, Linux

Re: Windows Guest Stuck after upgrade

Post by scottgus1 »

I do remember one thing that was different along the way, when 8 was running well and 8.1 was released: there was a special "long mode" instruction or some such CPU wizardry that had to be enabled between 8.0 and 8.1. Without it, 8.1 couldn't be installed on 8.0's template, so the devs needed to make a special 8.1 template.
fth0
Volunteer
Posts: 5678
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Windows Guest Stuck after upgrade

Post by fth0 »

scottgus1 wrote: 30. Sep 2023, 14:20 I do remember one thing [...]
Now that you've mentioned it, I remember that I was even involved in eliminating that distinction: :)

The key was the CMPXCHG16B instruction. If you follow the first link in the description of my ticket #20034, you'll see the source code fragment that explicitly enumerated all (64-bit) Windows versions starting with Windows 8.1. This was obviously a nightmare to keep up-to-date and a prime example of why you shouldn't distribute such enumerations all over the source code. The templates for Windows 8 and Windows 8.1 were themselves identical all the time (except for the osTypeId field, of course), and now they have to be kept indefinitely for compatibility reasons.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Windows Guest Stuck after upgrade

Post by mpack »

fth0 wrote: 30. Sep 2023, 15:21 The templates for Windows 8 and Windows 8.1 were themselves identical all the time
That does not accord with my memory. IIRC the problems that Scott refers to occurred when Windows 8.1 appeared in beta, and did not occur when Windows 8.0 appeared. In fact we kept having to tell users to select the 8.1 template rather than 8.0, as that ".1" mattered.

The basis of incompatibility between Win7 and Win10 was already given above, Win10 being later than Windows 8.1.

Are you saying that you have successfully tested installation of Win8.1 or later in a VM which uses the Win7 template?
fth0
Volunteer
Posts: 5678
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Windows Guest Stuck after upgrade

Post by fth0 »

mpack wrote: 30. Sep 2023, 17:35 In fact we kept having to tell users to select the 8.1 template
Yes, that's fully in line with what I wrote. You had to tell the users to select the "Windows 8.1 (64-bit)" template because one of its columns says that it's an "Windows 8.1 (64-bit)" template (osTypeId == "Windows81_64"). This holds true from VirtualBox 4.2.16 (#11899) up to and including VirtualBox 6.1.22 (#20034). (BTW, your partial quote of my statement (without the text in the parantheses) distorts its meaning.
mpack wrote: 30. Sep 2023, 17:35 The basis of incompatibility between Win7 and Win10 was already given above, Win10 being later than Windows 8.1.
I already admitted (in the "Edit" part of one of my previous posts) that the "Windows 7 (32-bit)" template (and only that) is different. And that will play a role for the OP's upgrade path.
mpack wrote: 30. Sep 2023, 17:35 Are you saying that you have successfully tested installation of Win8.1 or later in a VM which uses the Win7 template?
No. I'd expect problems in a 32-bit to 32-bit upgrade but not in a 64-bit to 64-bit upgrade.
padi22
Posts: 3
Joined: 29. Sep 2023, 02:35

Re: Windows Guest Stuck after upgrade

Post by padi22 »

you still have not explained what counts as an "upgrade". If it's just a wipe of the old and installation of the new then it isn't an upgrade in my book
I should have explained it as well as the issue of templates.

When I want to start a system update, that is, when I want to migrate from Windows 7 to Windows 8.1. First, I make sure the disk has space, change the template from Windows 7 to Windows 8.1 and activate the necessary options for it.

Once I have done all this, I start the update with its corresponding ISO image, this is how I have been doing from Windows 2.1 to Windows 7.

Now I have discovered that by doing this process in two virtual machines with a slight modification, I can get to Windows 10 without any problem.

VM1: Win 2.1 > Win 3.0 > Win 3.1 > Win 95 > Win 98 > Win 2000 > Win XP > Win Vista > Win 7 > Win 8.1 = Error!

VM2: Win 2.1 > Win 3.0 > Win 3.1 > Win 95 > Win 98 > Win ME > Win XP > Win Vista > Win 7 > Win 8.1 > Win 10 = Success!

I think the problem must be some Windows 2000 configuration or some driver that remains and causes conflict with Windows 8.1 and Windows 10. As I explained, Windows 10 restarts at 30% of the installation at a point that, from what I read, While the installer informs you of everything that is happening, at 30% it is configuring drivers, but I don't know if it is because of that or something else
Post Reply