El Macbook de mi novia se bloqueó al intentar restaurar desde un archivo hibernado. La barra de progreso se detuvo en ~ 10%, después de lo cual reiniciamos la computadora para un inicio normal.
Esta imagen de memoria hibernada tenía un documento sin guardar abierto en Pages, que nos gustaría recuperar. Hay una sleepimage
en la /private/var/vm
que supongo que es la imagen de hibernación, que nunca nos correctamente restaurado. Respaldamos esto para mantenerlo vivo.
Lo intentamos strings sleepimage | grep known_substring
pero no devolvió nada. grep -a known_substring sleepimage
tampoco hizo nada, así que supongo que Pages no mantuvo los datos de texto en la memoria como texto sin formato.
Editar: después de leer esta respuesta en Binary grep , intenté hacerlo perl -ln0777e 'print unpack("H*",$1), "\n", pos() while /(null_padded_substring)/g' sleepimage
, una vez más fue infructuoso. Lo rellené con nulos para intentar una coincidencia para el texto UTF-8. Luego lo intenté con .*
globos entre cada personaje, aún sin dados.
Por lo tanto, Pages probablemente no almacena texto mediante ninguna codificación común en la memoria. Necesitaría encontrar una regla de traducción entre la cadena ASCII y la representación de datos de Pages: estoy pensando que tal vez sea algún tipo de búfer de cadena Objective C. Para mí, parece muy extraño almacenar datos de caracteres como algo más que una secuencia de caracteres, pero esto parece ser lo que está haciendo Pages.
Si tiene alguna idea sobre cómo resolver la representación en memoria del texto dentro de Pages, puede ser muy útil para resolver este problema. ¿Tal vez puedo volcar y leer la memoria del proceso de alguna manera simple?
Otra solución posible es más simple: supongo que de alguna manera es posible reiniciar la computadora desde esto sleepimage
, pero no puedo encontrar ninguna documentación sobre cómo proceder con eso. Algunos otros usuarios ( macrumores ) parecen haber encontrado esto, pero para todas las preguntas del foro que he encontrado, ninguno de ellos tiene respuestas.
La versión de OS X es Snow Leopard, 10.6.8.
Sugerencias complejas que involucran programación son bienvenidas. Hago C y Python.
Gracias.
sleepimage
. Examinar otra imagen en busca de texto único sería igual de difícil, ya que la imagen aún tendría un tamaño de 4 GB, y el bloque de memoria de Páginas se asignaría en algún lugar al azar en ese archivo. Sin embargo, supongo que podría poner a cero la RAM, luego abrir páginas y luego buscar secuencias distintas de cero en la imagen del sueño. Sin embargo, Pages consume 200 MB de memoria de todos modos, sigue siendo una pequeña aguja en el pajar.