Возобновление счета для объектов, сохраненных в файле объектов. Научный руководитель: Илюшин А.И. Чугунов Арсений
Общая цель – создать систему управления вычислительными моделями для МВС. Желаемый результат: прикладной программист получает средства для создания и хранения вычислительных моделей в виде множества программных объектов на дисках; система управления автоматически распределяет объекты по процессорам, входящим в состав МВС; система управления обеспечивает синхронизацию взаимодействия объектов по их локальным временам; система управления определяет связи между объектами по их локальным координатам.
Цели работы: Освоить существующие средства системного программирования для достижения сформулированной задачи; Написать и отладить макетные варианты программ, реализующих: –сериализацию объектов и процессов; –операции с файлом объектов; –возобновление счета для объектов, сохраненных в файле объектов.
Схема работы системы Программные объекты в оперативной памяти сериализация Файл Объектов десериализация Вычислительная модель в виде множества объектов на диске
Восстановление счёта объектов. В какой момент времени происходит остановка и, соответственно, возобновление счёта объекта с точки зрения самого объекта? Прикладной программист заранее некоторым образом определяет возможность создания контрольной точки (мгновенного «снимка» объекта). Вопрос о том, в каком месте можно создать контрольную точку, конечно, зависит от самого прикладного объекта, и должен быть решён отдельно для каждого случая. В качестве признака возможности создания контрольной точки можно использовать переменную типа boolean, назовём её stop. В предполагаемом месте установки контрольной точки прикладной программист ставит условие по проверке переменной stop. Во время операции по созданию контрольной точки монитор выставляет значение stop в «истину». Объект, доходя в процессе счёта до проверки переменной stop, завершает свой счёт, если её значение - «истина». После десериализации монитор снова устанавливает значение это переменной на «ложь». Таким образом, объект продолжает счёт с последней контрольной точки, предшествующей его остановке. Также после десериализации объекта монитор восстанавливает ссылки на «соседей», так как они могли успеть измениться, пока объект хранился в файле.
Что сделано: В ходе работы были освоены выбранные для достижения основной задачи средства программирования и написана макетная реализация системы, позволяющая: создавать прикладные объекты; сериализовать объекты; сохранять объекты в файле объектов; читать объекты из файла в оперативную память; возобновлять счёт объекта. Что планируется сделать: Дорабатывать систему, переводить её с уровня макетной реализации на уровень, когда её можно будет использовать для счёта реальных прикладных задач; дополнить систему поддержкой удалённого вызова (над этой задачей работа уже начата); Устранить зависимость данной реализации системы от типа прикладного объекта.