Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Программирование под Unix/Linux > сделать копию процесса на нелокальную машину |
Автор: boostcoder 12.9.2010, 19:34 |
есть надобность, сделать копию процесса(типа clone) на нелокальную машину. в какую сторону гуглить? |
Автор: xvr 13.9.2010, 12:01 |
В сторону сброса core файла и загрузки его на 'нелокальной' машине в копию оригинального процесса |
Автор: boostcoder 13.9.2010, 17:12 |
xvr, а есть какие-то ключевые слова? функции? |
Автор: xvr 13.9.2010, 17:49 | ||
При убивании проги (например с помощью abort) она может оставить core (если это не отключено в limits'ах). Видимо как то можно и програмно бросить core (функцию на память не скажу). Читать core явно умеет gdb - можно взять оттуда. Дальше надо искать ![]() |
Автор: asd 14.9.2010, 08:04 |
boostcoder, Имхо, чтобы можно было скопировать процесс, он должен быть достаточно специфичным. Т.к. открытые описатели файлов, сокеты, и т.п. скопировать не получится. |
Автор: proc_maker 14.9.2010, 10:29 |
Чтото мне подсказывает что нельзя так делать. Начиная с того что на удаленной машине менеджер памяти должен как-то быть синхронизирован с теми данными которые были проалокейчены вашим менеджером памяти. Дескрипторы файлов, мютексы и пр., переменные окружения и тд... В общем любое решение тут мне кажется будет "слегка" некрасивым либо не переносимым. Я бы посоветовал посмотреть в сторону сохранения-загрузки настроек или данных. Тогда вся задача сводится к запуску вашей же программы и скармливанию ей сохраненных данных. |
Автор: djamshud 14.9.2010, 10:40 |
Гляньте, как работает openMPI. На лету копий процессов он не делает, но мыслей для размышления может подкинуть. |
Автор: boostcoder 14.9.2010, 12:08 |
понятно. значит тупик. всем спасибо. |