Processor serial number for guest OS

This is for discussing general topics about how to use VirtualBox.
Post Reply
Jhedron
Posts: 5
Joined: 20. Jun 2008, 17:10

Processor serial number for guest OS

Post by Jhedron »

I'm currently running VirtualBox 1.6.2 under Windows Vista Business, with Windows XP Professional SP3 installed as a guest operating system. I am attempting to run a program on the guest OS that requires a processor serial number in order to activate its license. Without an activated license, the program will not run. It seems that this information is not set in the guest OS.

I did find this line in the log file:

Code: Select all

00:15:08.685 PSN - Processor Serial Number          = 0 (0)
Is there a way to set this value for the virtual machine, perhaps using something like:

Code: Select all

vboxmanage setextradata MyVM PSNKey
frank
Oracle Corporation
Posts: 3362
Joined: 7. Jun 2007, 09:11
Primary OS: Debian Sid
VBox Version: PUEL
Guest OSses: Linux, Windows
Location: Dresden, Germany
Contact:

Post by frank »

No, there is currently no way. Please open a bug report for this issue. Though PSN 0 (0) means that even your host seems to have a disabled processor serial number. In case this is a Linux host I assume that Linux disables the serial number for privacy reasons (not sure about that).
Jhedron
Posts: 5
Joined: 20. Jun 2008, 17:10

Post by Jhedron »

In case this is a Linux host...
Nope, Windows Vista Business on an Intel Core 2 CPU.
Though PSN 0 (0) means that even your host seems to have a disabled processor serial number.
I may have confused the issue. The program is attempting to obtain the processor id using WMI, not the processor serial number. I found the following information at some place called eggheadcafe:
I think you guys are missing a key point... the ProcessorID that is returned in WMI is NOT the 64-bit processor serial number !!

The ProcessorID is the return of the CPUID, EAX=1 function (that returns the family, model, stepping, etc). They are by no means unique! The 64-bit portion of the 96-bit PSN is the result of CPUID, EAX=3.

There is a provision in WMI for UniqueID which could be used for this purpose, however I don't know of any WMI provider that currently uses this field. (But that's doesn't mean you can't roll your own).
I can use this program without problems on the host machine, and in a virtual machine running Windows XP Pro SP3 in Virtual PC. For reference, the value I get for processorId on my host machine is BFEBFBFF000006F2. I'm not all that familiar with WMI or this CPUID business.
Jhedron
Posts: 5
Joined: 20. Jun 2008, 17:10

Post by Jhedron »

After doing some research on MSDN, I found the following information in a reference for WMI:
ProcessorId
Data type: string
Access type: Read-only

Processor information that describes the processor features. For an x86 class CPU, the field format depends on the processor support of the CPUID instruction. If the instruction is supported, the property contains 2 (two) DWORD formatted values. The first is an offset of 08h-0Bh, which is the EAX value that a CPUID instruction returns with input EAX set to 1. The second is an offset of 0Ch-0Fh, which is the EDX value that the instruction returns. Only the first two bytes of the property are significant and contain the contents of the DX register at CPU reset—all others are set to 0 (zero), and the contents are in DWORD format.
So I guess I'm not sure why the guest OS does not have access to this information if the host CPU supports the instruction? Is it because of the dual cores? Is this a bug in VirtualBox?
Jhedron
Posts: 5
Joined: 20. Jun 2008, 17:10

Post by Jhedron »

This is just an update. I didn't want to leave this thread hanging, as it were, without offering some concluding remarks in case some one else runs into the same problem.

I've poked and prodded, but I can't seem to find a solution. I can't get a ProcessorId through WMI on the guest OS no matter what settings I try. It would be really nice if we could get this to work because Virtual PC (my company's current virtualization solution) does not support USB or serial ports, which is an important feature for us. Of course, if we can't even access the application, it doesn't really matter.

If anyone has any ideas, let me know. I've had to move on to other projects so I can no longer actively investigate this matter on company time.

Setup Summary:
Host: Windows Vista Business (32-bit) on a 64-bit Intel Core 2 CPU with 2 GB of RAM
Guest: Windows XP Professional SP3 (32-bit) with 512 MB of RAM
paulsiu
Posts: 56
Joined: 2. Nov 2007, 20:26

Post by paulsiu »

I am not sure if this is even possible. When you use a guest, the guest environment has its own processors. Basically, no matter which cpu you use as a host, it appears as a Pentium II to the guest.
gabster2
Posts: 10
Joined: 4. Nov 2009, 01:31
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: Vista

Re:

Post by gabster2 »

Frank Mehnert wrote:No, there is currently no way. Please open a bug report for this issue. Though PSN 0 (0) means that even your host seems to have a disabled processor serial number. In case this is a Linux host I assume that Linux disables the serial number for privacy reasons (not sure about that).
Has there ever been a official bug report done concerning this?
I am having the same issue that Jhedron was having this is still not working today. I can get the processorID from my Host but not from my Guest machine.
I have a software that REQUIRES this Identification for licensing purpose that both VMware and Virtual PC 2007 have.
I would really like to use VirtualBox but unless this issue is resolved, there are many users that will not be able to implement VirtualBox as their Virtualization software of choice.

Please advise
Attachments
2009-12-25_235600.png
2009-12-25_235600.png (12.14 KiB) Viewed 12394 times
Jhedron
Posts: 5
Joined: 20. Jun 2008, 17:10

Re: Processor serial number for guest OS

Post by Jhedron »

Has there ever been a official bug report done concerning this?
Unfortunately, I never got around to posting a bug report myself, and I do not know if anyone else ever posted a bug report. My company decided to switch to VMWare (not sure why, as I was not a part of the decision making process) and I never had a chance to come back to this issue and play with it on my own time.
gabster2
Posts: 10
Joined: 4. Nov 2009, 01:31
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: Vista

Re: Processor serial number for guest OS

Post by gabster2 »

I posted a bug report # 5846.
Hope we can get this resolved soon. Will keep you posted.
ediaz
Posts: 7
Joined: 4. Apr 2011, 19:23
Primary OS: Debian other
VBox Version: PUEL
Guest OSses: Windows

Re: Processor serial number for guest OS

Post by ediaz »

This happen to me too. At least on Virtualbox 5.0 is not solved.

There is no software emlutator for this?.

regards!
scottgus1
Site Moderator
Posts: 20965
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows, Linux

Re: Processor serial number for guest OS

Post by scottgus1 »

Take a look at the manual, section 9.12 and 9.13, and try searching the pdf version of the manual for "cpuid". Lots of stuff, no idea if any is right for you.

PS don't go around bumping every thread on the forum that mentions this issue. You'll earn the ire of the Mods.
Post Reply