「CPU」の編集履歴(バックアップ)一覧はこちら
CPU - (2009/08/07 (金) 13:45:18) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
*1. P7350のIntel VT-xの有無について
発表当時、IntelのSPEC表によると搭載されるCPUのスペックが下記となっており、P7350はVT-x無効、P8400はVT-x有効と違いがあり物議をかもした。
[[Intel® Core2 Duo Mobile Processor P7350 (2GHz/3MB/45nm/M0)>>http://processorfinder.intel.com/details.aspx?sSpec=SLB53]]
-Dual Core
-Enhanced Intel Speedstep® Technology
-Intel® EM64T
-Execute Disable Bit
[[Intel Core2 Duo Mobile Processor P8400 (2.26GHz/3MB/45nm/M0) >>http://processorfinder.intel.com/details.aspx?sSpec=SLB4M]]
-Dual Core
-Enhanced Intel Speedstep® Technology
-Intel® EM64T
-&bold(){Intel® Virtualization Technology} ◯
-Execute Disable Bit
実機に搭載されたCPU P7350をツールで確認してみると、VMXフラグが有効となっており、スペック表とは異なりVT-xが有効にされていた。
#image(http://www39.atwiki.jp/macmini/pub/P7350.gif,width=600,height=400,title=Intel Processor Identification Utility 他の判別結果,http://www39.atwiki.jp/macmini/pub/P7350.jpg,blank,center)
Mac miniに採用されたP7350のCPUIDを実機で取得すると下記の通りである。IntelのVirtualization & Software Development フォーラムに記載されたサポート担当の説明から判断すると、VT-xの有無を判断するためのレジスタ値はECX=0x0408E3BD、2進数で表記するとECX=0000/0100/0000/1000/1110/0011/1011/1101であり5bit目が1の為、CPUとしてVT-xはサポートされている。
>0x00000000 : EAX=0x0000000D EBX=0x756E6547 ECX=0x6C65746E EDX=0x49656E69
>0x00000001 : EAX=0x0001067A EBX=0x01020800 &bold(){ECX=0x0408E3BD} EDX=0xBFEBFBFF
>0x00000002 : EAX=0x05B0B101 EBX=0x005657F0 ECX=0x00000000 EDX=0x2CB43048
>0x00000003 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000004 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000005 : EAX=0x00000040 EBX=0x00000040 ECX=0x00000003 EDX=0x03122220
>0x00000006 : EAX=0x00000001 EBX=0x00000002 ECX=0x00000003 EDX=0x00000000
>0x00000007 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000008 : EAX=0x00000400 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000009 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x0000000A : EAX=0x07280202 EBX=0x00000000 ECX=0x00000000 EDX=0x00000503
>0x0000000B : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x0000000C : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x0000000D : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000000 : EAX=0x80000008 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000001 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000001 EDX=0x20100000
>0x80000002 : EAX=0x65746E49 EBX=0x2952286C ECX=0x726F4320 EDX=0x4D542865
>0x80000003 : EAX=0x44203229 EBX=0x43206F75 ECX=0x20205550 EDX=0x50202020
>0x80000004 : EAX=0x30353337 EBX=0x20402020 ECX=0x30302E32 EDX=0x007A4847
>0x80000005 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000006 : EAX=0x00000000 EBX=0x00000000 ECX=0x0C006040 EDX=0x00000000
>0x80000007 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000008 : EAX=0x00003024 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
[[Intelサポート担当によるVT-x有無の判別方法>>http://software.intel.com/en-us/forums/virtualization-software-development/topic/60686/page/1/]]
>1.1.1
>Discovering Support for Intel
>
>® VT (VMX)
>
>The CPUID instruction can be used to determine whether a processor supports Intel VT. >The CPUID instruction returns processor identification and feature information in the EAX, EBX, ECX, and EDX registers. If CPUID.1:ECX.VMX[bit 5] = 1, then VMX operation is supported.
>
>Below are the assembly instructions to read check Intel VT-x capability of CPU:
>
>MOV EAX, 01H
>
>CPUID
>
>Check ECX.[bit 5] -> A value of 1 indicates that the processor supports Intel VT-x
>
>1.1.2
>
>Checking Intel® VT Enabled CPU
>
>Bit 13 of CR4 register can be read to determine if CPU is enabled for Intel VT. A value of for CR4.VMXE[bit13] means CPU is enabled for VMX operations.
>
>Check CR4.VMXE[bit 13] = 1 —> Enables VMX operation when set.
>
>MSR 3A can also be used to check if CPU is VT enabled.
>
>For more information on CPUID, see Chapter 3, "Instruction Set Reference, A-M," in the Intel 64 and IA-32 Software Developer Manual, Volume 2A
>
>Refer to Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 3B, section 19 and appendix G for more info on VMX capability reporting.
また、Windows 7の機能でXPとの互換性を提供するXP Modeが発表され、注意点として下記サイトなどでP7350のVT-x無効が報じられるなど、再度、VT-xの確認有無が問われたが、Windows 7 RC版でXP Modeの動作確認が取れ、Mac miniでは確実にVT-xが有効であると判断された。
[[How many Intel CPUs will fail the XP Mode test in Windows 7?>>http://blogs.zdnet.com/Bott/?p=946&page=3]]
Find your CPU model under its family, and then look in the column to the right. YES means the CPU models in that row all support Intel VT; NO means VT is not supported.
|>|BGCOLOR(skyblue):Mobile CPU products|
|Core 2 Duo Mobile | VT |
|P7350/7450 |NO|
|P8400/8600/8700/9500/9600| YES|
**■結論
フォーラムでのIntelのサポート担当の説明によると、VT-xの有無などプロセッサ機能の一部はOEM先の要望により変更されて出荷されることがある。Appleは、BootCampによるWindowsサポートを提供するだけでなく、VMwareなどの仮想化ソリューションによるWindowsサポートを推進している。その為、VT-xの有無は重要な要素で、VT-xが有効にカスタマイズされたOEM向け用P7350を採用したと考えられる。
なお、CPUはソケットに直付けされており、注文時にBTOオプションで交換する以外は変更できない。また、VT-xが有効にされた製品は上位製品として[[P7370>>http://processorfinder.intel.com/details.aspx?sSpec=SLG8X]]として、P7350とは区別されている。
----
[[戻る>ハードウエア仕様]]
*1. P7350のIntel VT-xの有無について
発表当時、IntelのSPEC表によると搭載されるCPUのスペックが下記となっており、P7350はVT-x無効、P8400はVT-x有効と違いがあり物議をかもした。
[[Intel® Core2 Duo Mobile Processor P7350 (2GHz/3MB/45nm/M0)>>http://processorfinder.intel.com/details.aspx?sSpec=SLB53]]
-Dual Core
-Enhanced Intel Speedstep® Technology
-Intel® EM64T
-Execute Disable Bit
[[Intel Core2 Duo Mobile Processor P8400 (2.26GHz/3MB/45nm/M0) >>http://processorfinder.intel.com/details.aspx?sSpec=SLB4M]]
-Dual Core
-Enhanced Intel Speedstep® Technology
-Intel® EM64T
-&bold(){Intel® Virtualization Technology} ◯
-Execute Disable Bit
実機に搭載されたCPU P7350をツールで確認してみると、VMXフラグが有効となっており、スペック表とは異なりVT-xが有効にされていた。
#image(http://www39.atwiki.jp/macmini/pub/P7350.gif,width=600,height=400,title=Intel Processor Identification Utility 他の判別結果,http://www39.atwiki.jp/macmini/pub/P7350.gif,blank,center)
Mac miniに採用されたP7350のCPUIDを実機で取得すると下記の通りである。IntelのVirtualization & Software Development フォーラムに記載されたサポート担当の説明から判断すると、VT-xの有無を判断するためのレジスタ値はECX=0x0408E3BD、2進数で表記するとECX=0000/0100/0000/1000/1110/0011/1011/1101であり5bit目が1の為、CPUとしてVT-xはサポートされている。
>0x00000000 : EAX=0x0000000D EBX=0x756E6547 ECX=0x6C65746E EDX=0x49656E69
>0x00000001 : EAX=0x0001067A EBX=0x01020800 &bold(){ECX=0x0408E3BD} EDX=0xBFEBFBFF
>0x00000002 : EAX=0x05B0B101 EBX=0x005657F0 ECX=0x00000000 EDX=0x2CB43048
>0x00000003 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000004 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000005 : EAX=0x00000040 EBX=0x00000040 ECX=0x00000003 EDX=0x03122220
>0x00000006 : EAX=0x00000001 EBX=0x00000002 ECX=0x00000003 EDX=0x00000000
>0x00000007 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000008 : EAX=0x00000400 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x00000009 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x0000000A : EAX=0x07280202 EBX=0x00000000 ECX=0x00000000 EDX=0x00000503
>0x0000000B : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x0000000C : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x0000000D : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000000 : EAX=0x80000008 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000001 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000001 EDX=0x20100000
>0x80000002 : EAX=0x65746E49 EBX=0x2952286C ECX=0x726F4320 EDX=0x4D542865
>0x80000003 : EAX=0x44203229 EBX=0x43206F75 ECX=0x20205550 EDX=0x50202020
>0x80000004 : EAX=0x30353337 EBX=0x20402020 ECX=0x30302E32 EDX=0x007A4847
>0x80000005 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000006 : EAX=0x00000000 EBX=0x00000000 ECX=0x0C006040 EDX=0x00000000
>0x80000007 : EAX=0x00000000 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
>0x80000008 : EAX=0x00003024 EBX=0x00000000 ECX=0x00000000 EDX=0x00000000
[[Intelサポート担当によるVT-x有無の判別方法>>http://software.intel.com/en-us/forums/virtualization-software-development/topic/60686/page/1/]]
>1.1.1
>Discovering Support for Intel
>
>® VT (VMX)
>
>The CPUID instruction can be used to determine whether a processor supports Intel VT. >The CPUID instruction returns processor identification and feature information in the EAX, EBX, ECX, and EDX registers. If CPUID.1:ECX.VMX[bit 5] = 1, then VMX operation is supported.
>
>Below are the assembly instructions to read check Intel VT-x capability of CPU:
>
>MOV EAX, 01H
>
>CPUID
>
>Check ECX.[bit 5] -> A value of 1 indicates that the processor supports Intel VT-x
>
>1.1.2
>
>Checking Intel® VT Enabled CPU
>
>Bit 13 of CR4 register can be read to determine if CPU is enabled for Intel VT. A value of for CR4.VMXE[bit13] means CPU is enabled for VMX operations.
>
>Check CR4.VMXE[bit 13] = 1 —> Enables VMX operation when set.
>
>MSR 3A can also be used to check if CPU is VT enabled.
>
>For more information on CPUID, see Chapter 3, "Instruction Set Reference, A-M," in the Intel 64 and IA-32 Software Developer Manual, Volume 2A
>
>Refer to Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 3B, section 19 and appendix G for more info on VMX capability reporting.
また、Windows 7の機能でXPとの互換性を提供するXP Modeが発表され、注意点として下記サイトなどでP7350のVT-x無効が報じられるなど、再度、VT-xの確認有無が問われたが、Windows 7 RC版でXP Modeの動作確認が取れ、Mac miniでは確実にVT-xが有効であると判断された。
[[How many Intel CPUs will fail the XP Mode test in Windows 7?>>http://blogs.zdnet.com/Bott/?p=946&page=3]]
Find your CPU model under its family, and then look in the column to the right. YES means the CPU models in that row all support Intel VT; NO means VT is not supported.
|>|BGCOLOR(skyblue):Mobile CPU products|
|Core 2 Duo Mobile | VT |
|P7350/7450 |NO|
|P8400/8600/8700/9500/9600| YES|
**■結論
フォーラムでのIntelのサポート担当の説明によると、VT-xの有無などプロセッサ機能の一部はOEM先の要望により変更されて出荷されることがある。Appleは、BootCampによるWindowsサポートを提供するだけでなく、VMwareなどの仮想化ソリューションによるWindowsサポートを推進している。その為、VT-xの有無は重要な要素で、VT-xが有効にカスタマイズされたOEM向け用P7350を採用したと考えられる。
なお、CPUはソケットに直付けされており、注文時にBTOオプションで交換する以外は変更できない。また、VT-xが有効にされた製品は上位製品として[[P7370>>http://processorfinder.intel.com/details.aspx?sSpec=SLG8X]]として、P7350とは区別されている。
----
[[戻る>ハードウエア仕様]]