Làm thế nào để có được thông tin về từ, kích thước địa chỉ, kích thước bus địa chỉ, kích thước bus dữ liệu và kích thước bus hướng dẫn?


12

Tôi đã tự hỏi làm thế nào để có được thông tin về những điều sau đây từ dòng lệnh trong Linux:

  • từ (tức là kích thước mà CPU có thể xử lý cùng một lúc, có thể không phải là độ sâu bit của hệ điều hành),
  • kích thước địa chỉ (tức là số bit trong một địa chỉ thực tế),
  • Kích thước bus địa chỉ (không chắc chắn nếu nó giống với kích thước địa chỉ theo định nghĩa, nhưng tôi nghĩ chúng khác nhau và có thể không đồng ý),
  • kích thước bus dữ liệu,
  • kích thước chỉ dẫn?

Nhiều trong số này không được xác định rõ (có nhiều hơn một xe buýt và tất cả chúng đều không có cùng kích cỡ). Ngay cả những thứ như kích thước từ CPU CPU không được xác định rõ ràng, một số CPU (ví dụ: tất cả các CPU PC) có một số kích cỡ từ.
Gilles 'SO- ngừng trở nên xấu xa'

Câu trả lời:


9

Làm một cat /proc/cpuinfovà nhìn vào kết quả:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Genuine Intel(R) CPU           U4100  @ 1.30GHz
stepping        : 10
cpu MHz         : 1200.000
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm
bogomips        : 2593.48
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

Rất nhiều thông tin mà bạn đang tìm kiếm có thể được suy ra từ đây.


Cảm ơn! (1) Về kích thước địa chỉ vật lý, có thể đó không phải là kích thước bus địa chỉ? (2) Có đúng là đầu ra không cho từ CPU không?
Tim

@Tim Đầu ra cho kích thước từ của CPU theo cách khó hiểu: tất cả các CPU i386 có thể làm 8, 16 và 32 và lmcờ cho biết CPU amd64, tức là CPU có thể thực hiện 64. Kích thước từ cho số học số nguyên giống như cho các địa chỉ trong họ CPU này (trừ khi bạn đếm các thanh ghi phân đoạn, nhưng đó là một câu chuyện hoàn toàn khác).
Gilles 'SO- ngừng trở nên xấu xa'

@Gilles: Cảm ơn! (1) Lm nghĩa đen là gì? (2) Ý bạn là gì khi "trừ khi bạn đếm các thanh ghi phân khúc"?
Tim

Tên cờ CPU @Tim có xu hướng tối nghĩa và đôi khi không chính xác vì tên cờ đã được xử lý trước chức năng chính xác của nó. Kiểm tra danh sách tính năng CPU Linux x86 ; lmLà chế độ lâu dài. Các thanh ghi phân đoạn là tốt nhất để lại cho các nhà sử học PC (không có hệ điều hành hiện đại nào sử dụng chúng); nhưng PAE , tăng kích thước địa chỉ lên 36 bit trên nền tảng 686, được hỗ trợ bởi hầu hết các HĐH PC hiện đại lớn.
Gilles 'SO- ngừng trở nên xấu xa'

address sizeskhông có mặt trên ARM thật không may.
Ciro Santilli 新疆 心 心

17
  1. getconf WORD_BIT
  2. getconf LONG_BIT (kích thước của số nguyên dài)
  3. arch

Ví dụ: trên hệ thống Fedora 14 x64:

% uname -a
Linux grinchy 2.6.35.14-106.fc14.x86_64 #1 SMP Wed Nov 23 13:07:52 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

% getconf WORD_BIT
32

% getconf LONG_BIT
64

% arch
x86_64
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.