Tôi lưu ý rằng SMBios Loại 20 sẽ giúp ích ở đây, nhưng nó là tùy chọn như phiên bản 2.5 (2006-09-05) trang 25, L796 và trang 131 , trong khi loại 16, 17 và 19 là bắt buộc, nhưng không hoàn toàn Cứu giúp.
Mảng bộ nhớ vật lý (Loại 16)
Có một trong những cấu trúc này cho toàn bộ hệ thống, giải thích những gì có thể trên bảng này.
Handle 0x1000, DMI type 16, 23 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC
Maximum Capacity: 768 GB
Error Information Handle: Not Provided
Number Of Devices: 24
Thiết bị nhớ (Loại 17)
Có một bản ghi cho mỗi Dimm, cho bạn biết các Dimms vật lý được cài đặt trên bảng.
Handle 0x1100, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 2048 MB
Form Factor: DIMM
Set: 1
Locator: DIMM_A1
Bank Locator: Not Specified
Type: DDR3
Type Detail: Synchronous Registered (Buffered)
Speed: 1600 MHz
Manufacturer: XXXX
Serial Number: XXXX
Asset Tag: XXXX
Part Number: XXXX
Rank: 1
Configured Clock Speed: 1333 MHz
Địa chỉ đã ánh xạ mảng bộ nhớ (Loại 19)
Có thể có nhiều bản ghi này và mỗi bản ghi liệt kê một loạt các địa chỉ vật lý.
Đây là đầu ra với hai thanh 2GB:
Handle 0x1300, DMI type 19, 31 bytes
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000CFFFFFFF
Range Size: 3328 MB
Physical Array Handle: 0x1000
Partition Width: 2
Handle 0x1301, DMI type 19, 31 bytes
Memory Array Mapped Address
Starting Address: 0x00100000000
Ending Address: 0x0012FFFFFFF
Range Size: 768 MB
Physical Array Handle: 0x1000
Partition Width: 2
Và đây là đầu ra với 4 gậy; 2 * 2GB và 2 * 4GB:
Handle 0x1300, DMI type 19, 31 bytes
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000CFFFFFFF
Range Size: 3328 MB
Physical Array Handle: 0x1000
Partition Width: 2
Handle 0x1301, DMI type 19, 31 bytes
Memory Array Mapped Address
Starting Address: 0x00100000000
Ending Address: 0x0032FFFFFFF
Range Size: 8960 MB
Physical Array Handle: 0x1000
Partition Width: 2
Lưu ý rằng trong đầu ra mẫu đầu tiên ở trên, có hai DIMM 2 GB, nhưng hai phạm vi 3,3 GB và 0,7 GB. Với 4 Dimms, hệ thống cũng sẽ kết hợp vùng địa chỉ được ánh xạ mảng bộ nhớ thành hai khối, vì nó chỉ đại diện giống như bản đồ e820, tức là phạm vi địa chỉ vật lý của bộ nhớ hợp lệ.
1 đến nhiều bản ghi Loại 20 được gắn với chính xác một thiết bị bộ nhớ loại 17, có nghĩa là có thể biết toàn bộ phạm vi vật lý:
Thí dụ
$ sudo dmidecode -t 20
# dmidecode 2.12
SMBIOS 2.6 present.
Handle 0x002F, DMI type 20, 19 bytes
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000FFFFFFFF
Range Size: 4 GB
Physical Device Handle: 0x002B
Memory Array Mapped Address Handle: 0x002E
Partition Row Position: 1
Handle 0x0030, DMI type 20, 19 bytes
Memory Device Mapped Address
Starting Address: 0x00100000000
Ending Address: 0x001FFFFFFFF
Range Size: 4 GB
Physical Device Handle: 0x002C
Memory Array Mapped Address Handle: 0x002E
Partition Row Position: 1
Dường như có thể đi từ địa chỉ đến DIMM cho EDAC - Mục đích phát hiện và sửa lỗi , nhưng không phải từ DIMM đến toàn bộ phạm vi.
Nhìn vào mã nguồn của mcelog , nó cũng đang sử dụng loại 20 để giải mã.
lshw
sử dụng dmidecode
làm cơ sở mã và dmidecode -t 20
cung cấp thông tin mong muốn. Nhưng, như đã lưu ý, bởi phiên bản 2.5 của SMBIOS, cấu trúc lưu giữ thông tin này "Địa chỉ được gắn thiết bị bộ nhớ" hay còn gọi là Loại 20 hoặc vị trí ngân hàng là tùy chọn - do đó, Q là nếu có một cách khác để lấy thông tin tương tự. - Mối liên hệ giữa type 17
's Locator giá trị và dải địa chỉ vật lý (như tùy chọn được cung cấp bởi Type 20
).
dmidecode -t 20
đầu ra mẫu , bạn có thể giải thích giá trị định vị của loại 17 so với bổ sung vật lý, loại 20 không?
dmidecode
vàlshw
, nhưng tôi nghĩ rằng bạn đang tìm kiếm nhiều hơn những gì những cung cấp?