Ïóáëèêàöèè/2014/ISSC/IlinBobrenok2014

УДК 004.451.21

РАЗРАБОТКА МЕНЕДЖЕРА БЛОКИРОВОК
ДЛЯ РАСПРЕДЕЛЁННЫХ СИСТЕМ

А. В. Ильин, С. И. Бобренок
Учебно-исследовательская лаборатория НГУ-Parallels
Новосибирский государственный университет

Одной из основных задач при проектировании распределённых систем
является организация конкурентного доступа процессов к совместно ис-
пользуемым ресурсам. Это достигается путём взаимного исключения про-
цессов, запрашивающих разрешение на использование некоторого ресурса.
В централизованных системах можно воспользоваться примитивами син-
хронизации, предоставляемыми операционной системой. Разрабатывае-
мый в рамках данной работы менеджер блокировок служит для органи-
зации критических областей в распределённых системах.
К реализации менеджера блокировок были выдвинуты следующие тре-
бования: ограничения по потребляемым ресурсам, обеспечение одновре-
менного выполнения операций, гарантированное время отклика, отсут-
ствие лицензионных ограничений. После детального изучения уже суще-
ствующих реализаций менеджеров блокировок, таких как Zoo Keeper?,
Chubby, Open DLM?, был сделан вывод, что ни одна из них полностью не
удовлетворяет поставленным требованиям.
Существует несколько алгоритмов реализации взаимных исключений и
критических областей в распределённых системах: централизованный,
распределённый и алгоритм с передачей маркерного кольца. Наиболее
простым для внедрения и контроля является централизованный алгоритм.
Один из узлов сети выбирается координатором, и все процессы, желающие
войти в критическую секцию, взаимодействуют с этим узлом через сеть.
При разработке менеджера блокировок необходимо учитывать струк-
туру блокируемых ресурсов, их гранулярность, а также возможности од-
новременного и эксклюзивного доступа. Например, ресурсы образуют
иерархию, тогда удобнее осуществлять работу с блокировками, если мене-
джер блокировок поддерживает иерархическую структуру блокировок.
В ходе работы были изучены существующие реализации менеджеров
блокировок, проведён анализ задач, возникающих при разработке соб-
ственного менеджера блокировок, а также найдены пути их решения. Ре-
зультатом данной работы является собственный продукт, готовый к ис-
пользованию.
Научный руководитель – канд. физ.-мат. наук, доцент С. Ф. Кренделев