确定我的操作系统是 64 位还是 32 位的最佳方法是什么?
假设我直接在某个操作系统上安装软件。但如何确定操作系统是 32 位还是 64 位,
操作系统可以是任何东西,例如
- 视窗系统
- 维斯塔
- Windows 7的
- 豹
- os x 雪豹
- 红帽 Linux
我的意思是 - 确定操作系统是 64 位还是 32 位的最佳和常用方法是什么?我的意思是,我只是泛泛而谈。我没有在某人的机器上安装操作系统,如果我告诉你确定其操作系统基础 - 64 位还是 32 位?那么你会怎么做?
提前感谢您分享您的知识。糖。
答案1
在许多类 Unix 系统中你可以输入:
uname -a
对于 FreeBSD 它看起来像:
FreeBSD whiplash 8.0-STABLE FreeBSD 8.0-STABLE #1:
Tue Mar 9 15:38:19 CET 2010 root@beast:/usr/obj/usr/src/sys/WHIPLASH amd64
(amd64表示该内核是64位的)
对于 Linux:
Linux softy.vm 2.6.18-128.el5 #1 SMP
Wed Jan 21 10:44:23 EST 2009 i686 athlon i386 GNU/Linux
(i386表示该内核是32位的)
对于 MacOSX:
Darwin iMac.local 10.0.0 Darwin Kernel Version 10.0.0: Fri Jul 31 22:47:34 PDT 2009;
root:xnu 1456.1.25~1/RELEASE_X86_64 x86_64
(x86_64表示该内核是64位的)
答案2
如果您要在 Windows 中使用 CMD 脚本执行任何操作,则可以启动如下批处理文件:
@echo off
if %PROCESSOR_ARCHITECTURE% == x86 (
goto :x86
) else (
goto :x64
)
:x86
start "foo.exe"
goto :eof
:x64
start "bar.exe"
goto :eof
答案3
在 Windows 下:
GUI 方式
- 按 Win+R 打开运行...对话框
- 输入 winmsd
- 查找行处理器或系统类型
如果它们以 x86 开头,则为 32 位,否则为 64 位
使用 cmd.exe
输入SET PROCESSOR_ARCHITECTURE
x86 表示 32 位,否则为 64 位
使用 Powershell
输入$env:PROCESSOR_ARCHITECTURE
含义与使用cmd.exe相同
谨防
有两种不同类型的 64 位架构。
一种是用于 x64 的 AMD64,另一种是用于 Itanium 的 ia64(不确定这个值是否完全一样,从未使用过其中任何一种)
答案4
@paradroid - 谢谢你的集思广益^^
我现在将它用于我分发的 Java 程序,该程序需要 Windows 用户使用 javac。此脚本检查他们的架构并在其默认浏览器中打开下载到正确版本的 JDK...
@echo off
Title Dragon's JDK Downloader - Runedev Script Compiler
goto menu
:menu
echo.
echo What would you like to do?
echo.
echo 1. Download JDK?
echo 2. Compile Scripts?
echo 3. Quit
echo.
:choice
set /P C=1,2,3?
if "%C%"=="3" goto quit
if "%C%"=="2" goto compile
if "%C%"=="1" goto download
goto choice
:download
if %PROCESSOR_ARCHITECTURE% == x86 (
goto :x86
) else (
goto :x64
)
:x86
START http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u23-windows-i586.exe?BundledLineItemUUID=q9.J_hCupJ8AAAEsXThZDfyg&OrderID=zHCJ_hCujC0AAAEsUjhZDfyg&ProductID=_omJ_hCwMp4AAAEsQIMcKluK&FileName=/jdk-6u23-windows-i586.exe
goto :eof
:x64
START http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u23-windows-x64.exe?BundledLineItemUUID=CMyJ_hCu.vEAAAEsWu9ZDfyf&OrderID=RZ.J_hCuAVkAAAEsUO9ZDfyf&ProductID=ZUuJ_hCwEmwAAAEsOoMcKluK&FileName=/jdk-6u23-windows-x64.exe
goto :eof
:compile
SET cc=javac
SET cflags=
SET scripts=Scripts
SET scriptspre=%scripts%\Precompiled
SET jarpathfile=Settings\path.txt
IF NOT EXIST "%jarpathfile%" (
ECHO Path file does not exist. Please run Runedev and try again.
GOTO menu
)
FOR /F "delims=" %%G IN (%jarpathfile%) DO SET jarpath=%%G
CALL FindJDK.bat
IF NOT EXIST %scripts%\*.java (
ECHO No .java script source files found.
GOTO menu
)
ECHO Compiling scripts
ECHO. > "%scripts%\.class"
DEL /F /Q "%scripts%\*.class" > NUL
"%cc%" %cflags% -cp "%jarpath%" %scripts%\*.java
:end
PAUSE
EXIT
:quit
exit
:end