Я должен знать, как я могу вывести память в Safari.app в файл.
Я ввел присоединение gdb 6741 (мое сафари PID).
Теперь, что?
Я пытался искать справку на gdb на Google, но я не мог найти ничего, что сказало мне, что сделать, ища, "как вывести память в gdb" :(
Я попробовал "дамп справки", он дал мне набор команд, но ни один из них не работал. Самое близкое я приехал, было:
(gdb) dump memory ~/safaridump.bin 0
Missing stop address.
Таким образом, каков адрес остановки?Я не знаю? Как я предназначен для знания адреса остановки? Я пытался искать на Google ""пропускающий адрес остановки" gdb", он не помог. Я понятия не имею, как я получаю адрес остановки.
Я попробовал это:
(gdb) выводят память ~/safaridump.bin 0 0xffffffff
Это не работало также.
Я получил это:
gdb stack crawl at point of internal error:
0 gdb-i386-apple-darwin 0x0012fd8f internal_vproblem + 316
1 gdb-i386-apple-darwin 0x0012ffd3 internal_verror + 43
2 gdb-i386-apple-darwin 0x00130008 align_down + 0
3 gdb-i386-apple-darwin 0x00130a21 xstrvprintf + 0
4 gdb-i386-apple-darwin 0x00130c25 xmalloc + 40
5 gdb-i386-apple-darwin 0x000045d6 dump_memory_to_file + 241
6 gdb-i386-apple-darwin 0x0012dd3d execute_command + 713
7 gdb-i386-apple-darwin 0x0008815d command_handler + 213
8 gdb-i386-apple-darwin 0x000891af command_line_handler + 1120
9 gdb-i386-apple-darwin 0x001c2486 rl_callback_read_char + 137
10 gdb-i386-apple-darwin 0x000882ed rl_callback_read_char_wrapper + 18
11 gdb-i386-apple-darwin 0x000874b7 handle_file_event + 349
12 gdb-i386-apple-darwin 0x00086e7e process_event + 131
13 gdb-i386-apple-darwin 0x00087c38 gdb_do_one_event + 1178
14 gdb-i386-apple-darwin 0x00081bfd catch_errors + 78
/SourceCache/gdb/gdb-1346/src/gdb/utils.c:1208: internal-error: virtual memory exhausted.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) n
Я действительно не получаю это. Все, что я хочу, моя память в Safari, записанном в файл.
Это действительно важно для меня. Я провел приблизительно 2 часа, выводя мою плохую основу в Safari, записывая некоторую действительно важную информацию. И затем глупый веб-сайт, в который я писал, не принял мою должность, потому что мне потребовалось много времени, пишущий это, что я "выписался". К тому времени, когда я вошел в систему назад, мое сообщение было потеряно.
Я действительно хочу эту обратную запись. Все, что я хочу, является памятью от Safari, таким образом, я могу перерыть, это - содержание для нескольких ключевых слов, чтобы видеть, могу ли я вернуть свою запись.
Какие-либо идеи кто-либо?
По крайней мере, даже если я не верну свою запись, то я узнаю что-то о gdb. Который мог пригодиться в моей разработке программного обеспечения ;)
Спасибо, если можно помочь! Это значило бы так много для меня. Я собираюсь оставить Safari и выполнение gdb, пока я не получаю ответ. Я не собираюсь позволять этому движению, пока я не узнаю, что могу или не могу вернуть свою запись.
Если кто-либо хочет дать более общие ответы о том, как восстановить потерянную работу... это - хорошая вещь. Такой как программы для поиска моего всего жесткого диска определенные строки, которые, возможно, были в VRAM, прежде чем работа была потеряна.
...
http://www.mail-archive.com/use-revolution@lists.runrev.com/msg22978.html Эта страница говорит, что уничтожают-9, не генерирует дамп ядра. Несмотря на то, что эта страница говорит, что http://developer.apple.com/mac/library/technotes/tn2004/tn2124.html#SECCOREDUMPS, эта команда "уничтожает-ABRT (PID ЗДЕСЬ)", не создаст дамп ядра.
ls -la /cores
total 0
drwxrwxr-t@ 2 root admin 68 23 Jun 07:19 .
drwxrwxr-t 38 root admin 1360 14 Dec 16:06 ..
Эй все, я нашел, как генерировать coredump на OSX!
http://osxbook.com/book/bonus/chapter8/core/
Существует загружаемая программа там в исходной форме. Я загрузил его, скомпилировал его, и, ура! Это работало! Это генерировало почти 1 ГБ дампа ядра!
Является ли информация, там не вполне имеет значения теперь. Я изучил, как генерировать coredumps на OSX, который является, определенно мог быть удобный навык как разработчик программного обеспечения ;) Вы никогда не знаете, когда дамп ядра мог пригодиться.
Я могу просто вообразить несколько лет, я делаю важное задание, и мне нужен дамп ядра для выяснения то, что продолжается, и это "gcore" приложение - то, в чем я нуждался. Даже если это окупается однажды... это - хорошая вещь.
Safari сохраняет данные формы для всех форм (если Вы не выключили его, или сайт отмечает форму как not-to-be-saved), в зашифрованном файле базы данных. Можно найти пароль для файла в связке ключей входа в систему, и файл в ~/Library/Safari/Form Values
, так теоретически Вы могли извлечь данные из файла и видеть, там ли то, что Вы ввели.
Однако у меня был взлом, и я не могу разработать, какой формат файл, или как он шифруется, таким образом, я не знаю, как на самом деле достигнуть содержание, я уверен, что кто-то делает хотя :)
Вы могли всегда становиться входящими в систему в GDB set logging on
Затем все, что Вы делаете, печатается к файлу журнала (обычно gdb.txt). Таким образом, можно только начать печатать память с помощью x
команда, и все перейдет к файлу журнала, а также экрану.