Làm cách nào để kiểm tra xem HĐH của tôi là 64 bit hay 32 bit?


9

Cách tốt nhất để xác định hệ điều hành của tôi là 64 bit hay 32 bit là gì?

Giả sử rằng, tôi trực tiếp trên một số os và tôi sẽ cài đặt một phần mềm trên nó. Nhưng làm thế nào để xác định, hệ điều hành là 32 bit hay 64 bit,

Hệ điều hành có thể là bất cứ điều gì, như

  • cửa sổ xp
  • vista
  • cửa sổ 7
  • os x báo
  • os x báo tuyết
  • Mũ đỏ linux

Ý tôi là - cách tốt nhất và phổ biến để xác định os là 64 bit hay 32 bit? Ý tôi là, tôi đang nói chung. Tôi chưa cài đặt os trên máy của ai đó và nếu tôi bảo bạn xác định hệ điều hành của nó - 64 hoặc 32? sau đó bạn sẽ làm gì

Cảm ơn trước vì đã chia sẻ kiến ​​thức của bạn. Đường.


Nhưng còn OSX thì sao?
Sagar R. Kothari

Câu trả lời:


5

Trong nhiều hệ thống giống Unix, bạn có thể nhập:

uname -a

Đối với FreeBSD, nó trông giống như:

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 có nghĩa là hạt nhân này là 64 bit)

Đối với 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 có nghĩa là hạt nhân này là 32 bit)

Đối với 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 có nghĩa là hạt nhân này là 64 bit)


1
Hoặc chỉ "uname -p" sẽ trả về kết quả như i386, x86_64, amd64 :)
Janne Pikkarainen

i386 là gì? uname -p hoạt động nhưng tôi không hiểu i386
Sagar R. Kothari

1
Hãy nhớ rằng trên OSX, ngay cả khi bạn có CPU x86_64, (một số) hạt nhân có thể chạy trong 32 bit. Điều này đúng với MacBook đầu năm 2008 (4,1) chẳng hạn.
trolle3000

@sugar, i386 là kiến ​​trúc CPU 32 bit và x86_64 là kiến ​​trúc 64 bit.
trolle3000

1
@sugar bạn cũng có thể thấy ở một số nơi i486, i586 hoặc i686 đây cũng là 32 bit nhưng bao gồm nhiều hướng dẫn hơn.
AndrejaKo

7

Nếu bạn đã thực hiện bất kỳ hành động nào bằng cách sử dụng tập lệnh CMD trong Windows, bạn có thể bắt đầu tệp bó như thế này:

@echo off

if %PROCESSOR_ARCHITECTURE% == x86 (
goto :x86
) else (
goto :x64
)

:x86
start "foo.exe"
goto :eof

:x64
start "bar.exe"
goto :eof

đúng những gì tôi cần
Piotr Kula

3

Trong Windows:

Cách thức GUI

  1. Nhấn Win + R để mở hộp thoại Run ...
  2. Nhập winmsd
  3. Tìm kiếm Bộ xử lý hàng hoặc Loại hệ thống

Nếu họ bắt đầu với x86, bạn có 32-bit nếu không bạn có 64-bit

Sử dụng cmd.exe
Nhập SET PROCESSOR_ARCHITECTURE
x86 có nghĩa là 32-bit, nếu không, đó là 64-bit

Sử dụng Powershell
Enter $env:PROCESSOR_ARCHITECTURE
Ý nghĩa tương tự như với việc sử dụng cmd.exe

Cẩn thận
Có hai loại kiến ​​trúc 64 bit khác nhau.
Một là AMD64 cho x64, một là ia64 cho Itanium (không chắc giá trị này chính xác như thế, không bao giờ hoạt động với bất kỳ ai trong số họ)


ia64 dành cho bộ xử lý Itanium có kiến ​​trúc hoàn toàn khác biệt và không thuộc họ x86. Họ có thể chạy các chương trình x86 nhưng chế độ 64 bit của họ về cơ bản hoàn toàn khác với x86 và yêu cầu các trình biên dịch khác nhau và toàn bộ chương trình cấp thấp. Amd64 được đặt theo tên AMD vì họ đã thực hiện các phần mở rộng 64 bit cho tập lệnh x86. Bộ xử lý của họ vẫn là x86 nhưng có thể hoạt động với 64 bit và chúng liên quan nhiều hơn đến 32 bit x86 so với itanium.
AndrejaKo

2

Những cách ngu ngốc cho Linux:

  1. Để xác định kernel, cat / Proc / kallsyms, hãy kiểm tra xem các ký hiệu cho kernel rộng 32 bit hay rộng 64 bit. Sau đó, bạn sẽ biết kernel là 32 bit hoặc 64 bit.

  2. Đối với ứng dụng người dùng, chỉ cần chạy: $ file / bin / ls Để kiểm tra xem lệnh ls là 32 bit hay 64 bit, vì os có thể chứa cả ứng dụng 32 bit và 64 bit, điều này có thể không sai.


2

@paradroid - Cảm ơn bạn đã động não ^^

Bây giờ tôi sử dụng điều này cho một chương trình Java mà tôi phân phối cần người dùng Windows để sử dụng javac. Kịch bản lệnh này kiểm tra kiến ​​trúc của họ và mở tải xuống phiên bản JDK thích hợp trong trình duyệt mặc định của họ ...

@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
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.