Noto che SMBios Type 20 sarebbe di aiuto in questo caso, ma è facoltativo a partire dalla versione 2.5 (2006-09-05) pp. 25, L796 e pp. 131 , mentre i tipi 16, 17 e 19 sono obbligatori, ma non del tutto Aiuto.
Matrice di memoria fisica (tipo 16)
Esiste una di queste strutture per l'intero sistema, che spiega ciò che è possibile su questa scheda.
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
Dispositivo di memoria (tipo 17)
C'è un record per ogni Dimm, che ti dice i Dimm fisici installati sulla scheda.
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
Indirizzo mappato array di memoria (tipo 19)
Possono esserci più di questi record e ogni record elenca un intervallo di indirizzi fisici.
Ecco l'output con due stick da 2 GB:
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
Ed ecco l'uscita con 4 stick; 2 * 2 GB e 2 * 4 GB:
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
Si noti che nel primo output di esempio precedente, c'erano due DIMM da 2 GB, ma due intervalli di 3,3 GB e 0,7 GB. Con 4 dimmer, il sistema unirà anche la regione di indirizzi mappata dell'array di memoria in due blocchi, poiché rappresenta lo stesso della mappa e820, ovvero gli intervalli di indirizzi fisici di memoria validi.
Da 1 a molti record di tipo 20 sono collegati esattamente a un dispositivo di memoria di tipo 17, il che significa che è possibile conoscere l'intero intervallo fisico:
Esempio
$ 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
Sembra possibile passare dall'indirizzo al DIMM per scopi EDAC - Error Detection & Correction , ma non dal DIMM all'intero intervallo.
Guardando il codice sorgente di mcelog , sta anche usando il tipo 20 per la sua decodifica.
lshw
utilizza dmidecode
come base di codice e dmidecode -t 20
fornisce le informazioni desiderate. Ma, come notato, dalla versione 2.5 di SMBIOS la struttura che contiene queste informazioni "Indirizzo dispositivo di memoria mappato" aka tipo 20 o posizione del banco è opzionale - quindi Q è se esiste un altro modo per recuperare le stesse informazioni. - Collegamento tra type 17
il valore del localizzatore e l'intervallo di indirizzi fisici (come facoltativamente fornito da Type 20
).
dmidecode -t 20
output di esempio , puoi spiegare il valore di localizzazione del tipo 17 rispetto all'add. Fisico, tipo 20?
dmidecode
elshw
, ma penso che tu stia cercando qualcosa di più di quello che offrono?