Saya menggunakan basis data redis dan ingin menjelajahi isi RAM yang digunakan aplikasi.
Saya merasakan penjelasan mengapa saya ingin melakukan ini akan lebih masuk akal daripada pertanyaan yang akan saya tanyakan.
Redis adalah toko nilai kunci sederhana yang menyimpan data biner. Saya pikir itu akan menjadi tempat yang baik untuk mengeksplorasi hal-hal seperti pengkodean dan akan menarik bagi saya untuk melakukan hal-hal seperti membaca sekilas RAM mencari set data biner, melakukan hal-hal seperti mencari pola sederhana; mungkin jelajahi ide menulis bahasa permintaan bayi yang dicari dalam RAM.
Saya mendapatkan ide ini setelah membaca bab dalam SICP tentang bahasa query.
Ada pemikiran tentang di mana untuk memulai? Awalnya, saya ingin bertanya "Beri saya ruang alamat untuk aplikasi ini, tolong" ke sistem.
pmap
memformat informasi ini sehingga lebih dapat dibaca manusia.Gunakan debugger, itulah gunanya.
Jika Anda ingin menggulung sendiri, semuanya akan selesai
ptrace
.Anda dapat melihat peta memori proses (daftar isi untuk memori)
/proc/$pid/maps
dan membaca seluruh isi memori dari/proc/$pid/mem
. Anda tidak bisa hanya membuka file terakhir itu secara normal, lihat Bagaimana saya membaca dari / proc / $ pid / mem di Linux?sumber