내 Windows OS를 찾는 방법은 x64 또는 ia64입니까?


12

ProtectionID로 Windows 디렉토리에서 실행 파일을 거의 스캔하지 않으면 Windows 탐색기를 스캔했습니다. 결과는 다음과 같습니다.

Scanning -> C:\Windows\explorer.exe
File Type : 64-Bit Exe (Subsystem : Win GUI / 2), Size : 2871808 (02BD200h) Byte(s)
[!] Warning : Cpu is AMD, this file is for IA64 (incompatible)
[x] Warning - FileAlignment seems wrong.. no solution calculated (using NULL)
[File Heuristics] -> Flag : 00000000000001001101000000000000 (0x0004D000)
[CompilerDetect] -> Visual C++ 9.0 (Visual Studio 2008)
[!] File appears to have no protection or is using an unknown protection
- Scan Took : 0.548 Second(s)

내 프로세서가 Core 2 Duo이고 경고 플래그가 발생하는 x64 아키텍처라는 것을 알고 있습니다. 그러나 내가 설치 한 OS는 Windows 7 x64입니다. 위의 결과는 내 OS가 x64 또는 IA64라는 질문을 제기합니까? 어떻게 찾을 수 있습니까?

업데이트 최신 ProtectionID 빌드에서는이 잘못된 경고가 수정 된 것으로 보입니다.


3
내가 볼 수있는 한, Windows의 서버 에디션에만 Itanium 아키텍처 (일명 IA64) 용 버전이 있으며 Win7 64 비트는 "일반적인"x64 명령어 세트 만 지원합니다. 당신이 100 % 확실 당신은 윈도우 7의 64 비트 버전을 설치 한? 그리고 CPU가 확실히 64 비트인지 100 % 확신합니다 (모든 Core 2 Duos가 있는지 확인하지 않았습니다). 오, 그리고 exe 일이 있습니까 (다른 OS에 심각한 문제가 있다고 가정합니다)? 그렇다면 소프트웨어에 유효한 판독 값이 제공되는지 의심 스러울 수 있습니다.
DMA57361

CPU 유형은 환경 변수 %PROCESSOR_ARCHITECTURE%echo %PROCESSOR_ARCHITECTURE%있어야하며 명령 프롬프트에서 AMD64(Core 2 Duo를 사용한다고 말하면) 알려 주어야합니다 . x86-64 프로세서 msinfo32.exe에서 "시스템 유형"필드도 있어야합니다 x64-based PC. IA64 시스템 바이너리가 어떻게 / 왜 있는지 잘 모르겠습니다.
Bob

6
또는 ProtectionID가 손상되었습니다.

어떤 버전의 ProtectionID?
David Schwartz

@ DMA57361-Core 2 Duo E7300을 사용했습니다. Windows 7 x64 Ultimate을 사용했습니다. 내 taskmgr에 따르면 x86 호환 모드에서 실행되는 프로세스의 약 40 %, 즉 이미지 이름 뒤에 * 32 접미사가 있습니다.
Jones

답변:


18

CPU 유형은 환경 변수 %PROCESSOR_ARCHITECTURE%echo %PROCESSOR_ARCHITECTURE%있어야하며 명령 프롬프트 AMD64에 x86-64 프로세서가 있어야합니다 . msinfo32.exe에는 "시스템 유형"필드도 있어야합니다.이 필드에는 x86-64 프로세서에서 x64 기반 PC가 표시됩니다. IA64 시스템 바이너리가 어떻게 / 왜 있는지 잘 모르겠습니다 ...


ProtectionID에 문제가있는 것 같습니다.

Scanning -> C:\Windows\explorer.exe
File Type : 64-Bit Exe (Subsystem : Win GUI / 2), Size : 2871808 (02BD200h) Byte(s)
[!] Warning : Cpu is AMD, this file is for IA64 (incompatible)
[x] Warning - FileAlignment seems wrong.. no solution calculated (using NULL)
[File Heuristics] -> Flag : 00000000000001001101000000000000 (0x0004D000)
[CompilerDetect] -> Visual C++ 9.0 (Visual Studio 2008)
[!] File appears to have no protection or is using an unknown protection
- Scan Took : 0.828 Second(s)

그러나 PE Stuff 탭에서 :

스크린 샷 (IMAGE_FILE_MACHINE_AMD64
전체 크기를 보려면 클릭


같은 보트에서 항해! 또한 기타 도구-> 기타 도구 / 시스템 정보-> 프로세서 아키텍처에 'Intel (x86) 기반'이라고 표시되어 있음
Jones

5

Q 노트에 대한 첫 번째 의견으로 Windows 7의 IA64 빌드는 없습니다. IA64 버전의 경우 서버를 사용해야합니다.

이 정보를 확인하는 가장 신뢰할 수있는 방법은 WMI 및 Win32_OperatingSystemWin32_ComputerSystem 클래스를 사용하는 것 입니다.

PowerShell 및 gwmi별명을 사용하여 Get-WmiObject:

PS> gwmi win32_computersystem-컴퓨터 1,2, 로컬 호스트 | 피트 __SERVER, 시스템 유형

__SERVER 시스템 유형
-------- ----------
ONE X86 기반 PC
x64 기반 PC 2 대
x64 기반 PC 3 대

하나는 64 비트가 아니고 다른 두 개는 모두 x64이고 IA64는 없습니다. 1 다음 :

PS [64] E : \ # 12> gwmi win32_operatingsystem-하나, 둘, 로컬 호스트 작성 | 피트 __ 서버, 캡션

__ 서버 캡션
-------- -------
하나의 Microsoft® Windows Server® 2008 Standard
두 가지 Microsoft Windows Server 2008 R2 표준
3 개의 Microsoft Windows 7 Ultimate

따라서 1은 Win2k8 32 비트이고 2는 Win2k8R2 64 비트이며 3 (localhost)은 Win7 64 비트입니다.


1SystemType 필드의 가치를 확인할 IA64 시스템 이 없습니다.


3

IA64 아키텍처는 x86-64 (일명 AMD64) 아키텍처와 완전히 다릅니다. 이는 대부분의 사람들이 64 비트를 말할 때 의미하는 것입니다. 따라서 IA64 호환 버전의 Windows 7 (다른 사람들이 지적했듯이 1 없음 ) 이 있더라도 Itanium 프로세서 가 필요하므로 Core 2에 설치할 수 없습니다 듀오 또는 기타 x86-64 시스템

편집 : 또한 명령 프롬프트 또는 PS에서 WMI를 사용하여 프로세서 아키텍처를 얻는 다른 방법 :

wmic CPU get Architecture

CPUWin32_Processor 클래스 의 별명이며 가능한 값 2 는 괄호 안의 의미입니다.

  • 0 (x86)
  • 9 (x86-64)
  • 6 (이타 늄)

1 IA64를 지원하는 마지막 클라이언트 버전은 Windows XP입니다. Windows Server 2008 R2가 마지막 서버 버전이 됩니다.
2 MIPS, Alpha 및 PowerPC와 같은 아키텍처에는 몇 가지가 있지만 대부분 레거시 이유로 인해 존재합니다. 자세한 내용은 위의 MSDN 기사를 참조하십시오.


@ William.Ebe 예상대로 표준 x86-64 CPU. 그렇다면 문제는 ProtectionID에 있습니다. 기꺼이 도와 드리겠습니다. 옆에있는 녹색 확인 표시 개요를 클릭하면 가장 도움이되는 답변을 수락하십시오.
Indrek

-1

명령 창을 열고 다음을 실행하십시오.

C:\>set | findstr ARCH

PROCESSOR_ARCHITECTURE=x86

2
이름을 이미 알고 있으면 모든 변수를 나열한 다음 필터링하는 것이 효율적이지 않습니다. 대답에 설명 된대로 환경 변수를 직접 사용하십시오.
Bob
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.