Macbook pacar saya macet saat mencoba memulihkan dari file yang terhibernasi. Bilah progres berhenti pada ~ 10%, setelah itu kami me-restart komputer untuk startup normal.
Gambar memori yang di-hibernasi ini memiliki dokumen yang belum disimpan terbuka di Halaman, yang ingin kami pulihkan. Ada sleepimage
dalam /private/var/vm
, yang saya asumsikan adalah gambar hibernate yang tidak pernah dikembalikan dengan benar. Kami mendukung hal ini agar tetap hidup.
Kami mencoba strings sleepimage | grep known_substring
tetapi tidak mengembalikan apa pun. grep -a known_substring sleepimage
juga tidak melakukan apa pun, jadi saya berasumsi bahwa Pages tidak menyimpan data teks dalam memori sebagai teks biasa.
Sunting: Setelah membaca jawaban ini pada Biner grep saya mencoba perl -ln0777e 'print unpack("H*",$1), "\n", pos() while /(null_padded_substring)/g' sleepimage
, lagi-lagi menjadi sia-sia. Saya menambahkannya dengan null untuk mencoba kecocokan untuk teks UTF-8. Lalu saya mencoba dengan .*
gumpalan antara masing-masing karakter - masih tidak ada dadu.
Jadi Halaman mungkin tidak menyimpan teks dengan penyandian umum apa pun dalam memori. Saya perlu menemukan aturan terjemahan antara string ASCII dan representasi data Halaman - Saya pikir mungkin semacam buffer string C Objective. Bagi saya tampaknya sangat aneh untuk menyimpan data karakter sebagai apa pun selain urutan karakter, tetapi tampaknya inilah yang dilakukan Pages.
Jika Anda memiliki ide tentang cara mengetahui representasi teks di dalam memori di dalam Halaman, mungkin akan sangat membantu dalam menyelesaikan masalah ini. Mungkin saya bisa membuang dan membaca memori proses dengan cara sederhana?
Solusi lain yang mungkin lebih sederhana - saya berasumsi mungkin untuk me-reboot komputer dari ini sleepimage
, tapi saya tidak dapat menemukan dokumentasi tentang bagaimana Anda akan melanjutkannya. Beberapa pengguna lain ( macrumors ) tampaknya telah menemukan ini, tetapi untuk semua pertanyaan forum yang saya temukan, tidak ada dari mereka yang memiliki respons.
Versi OS X adalah Snow Leopard, 10.6.8.
Saran kompleks yang melibatkan pemrograman dipersilakan. Saya melakukan C dan Python.
Terima kasih.
sleepimage
. Memilah-milah gambar lain untuk mencari teks unik akan sama sulitnya, karena gambar tersebut masih berukuran 4GB, dan blok memori Pages akan dialokasikan di suatu tempat secara acak dalam file itu. Saya kira saya bisa nol keluar RAM, lalu buka halaman, dan kemudian mencari urutan non-nol di sleepimage, meskipun. Namun Pages memakan memori hingga 200MB - masih ada jarum kecil di tumpukan jerami.