2015-07-09 6 views
5

È possibile leggere gli indirizzi di memoria (reali, non virtuali) senza generare un errore di segmento? Desidero leggere tutto dal vivo, utilizzare gli indirizzi di memoria e registrare i risultati.legge la memoria all'esterno di un programma senza errori di segmento

+1

Non direttamente, ma il sistema operativo potrebbe fornire una funzione che è possibile utilizzare per farlo. (So ​​che sia Windows che Linux hanno modi per accedere alla memoria virtuale di altri processi, ma non hanno idea della memoria fisica) – immibis

+1

Su Linux: http://stackoverflow.com/questions/12040303/accessing-physical-address-from-user- spazio, http://stackoverflow.com/questions/7894160/accessing-physical-memory-from-linux-kernel, http://falsinsoft.blogspot.ru/2013/10/access-physical-memory-in-linux. html –

+1

Il lato Linux sembra facile, ma Windows è un po 'complicato (sono un po' HAL arrugginito). Grazie a tutti per l'assistenza. – NationWidePants

risposta

1

Dipende dal sistema operativo in uso.

Dovrebbe essere possibile, ma sarà necessario scrivere un driver del kernel per interfacciare tra il sistema operativo e l'hardware e questo codice dovrà essere eseguito come driver (presupponendo che Windows non possa interfacciarsi direttamente con la memoria fisica) .

Problemi correlati