Saya perhatikan bahwa SMBios Type 20 akan membantu di sini, tapi itu opsional pada versi 2.5 (2006-09-05) hlm. 25, L796, dan hlm. 131 , sedangkan tipe 16, 17 dan 19 adalah wajib, tetapi tidak cukup Tolong.
Array Memori Fisik (Tipe 16)
Ada salah satu dari struktur ini untuk keseluruhan sistem, menjelaskan apa yang mungkin terjadi pada board ini.
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
Perangkat Memori (Tipe 17)
Ada satu catatan per setiap Dimm, yang memberi tahu Anda Dimms fisik yang dipasang di papan tulis.
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
Alamat Array Memori yang Dipetakan (Tipe 19)
Mungkin ada beberapa catatan ini, dan setiap catatan berisi daftar alamat fisik.
Ini adalah output dengan dua tongkat 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
Dan ini adalah output dengan 4 batang; 2 * 2GB dan 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
Perhatikan bahwa pada output sampel pertama di atas, ada dua DIMM 2GB, tetapi dua rentang 3,3GB dan 0,7GB. Dengan 4 Dimms, sistem juga akan menyatukan array alamat memori yang dipetakan wilayah menjadi dua potongan, karena hanya mewakili sama dengan peta e820, yaitu rentang alamat fisik memori yang valid.
Rekaman 1 hingga banyak Tipe 20 terikat dengan tepat satu perangkat memori tipe 17, yang berarti bahwa seluruh rentang fisik dapat diketahui:
Contoh
$ 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
Tampaknya mungkin untuk beralih dari alamat ke DIMM untuk EDAC - Tujuan Deteksi Kesalahan & Koreksi , tetapi tidak dari DIMM ke seluruh rentang.
Melihat kode sumber mcelog , ia juga menggunakan tipe 20 untuk decoding-nya.
lshw
digunakan dmidecode
sebagai basis kode dan dmidecode -t 20
memberikan informasi yang diinginkan. Tetapi, seperti yang disebutkan, pada versi 2.5 SMBIOS struktur yang menyimpan informasi ini "Memory Device Mapped Address" alias Tipe 20 atau lokasi bank adalah opsional - jadi Q adalah jika ada cara lain untuk mengambil informasi yang sama. - Link antara type 17
's Locator nilai dan rentang alamat fisik (seperti opsional disediakan oleh Type 20
).
dmidecode -t 20
output, dapatkah Anda menjelaskan nilai locator tipe 17 vs addr fisik, tipe 20?
dmidecode
danlshw
saya pikir Anda mencari lebih dari yang disediakan oleh ini?