Операционная система UNIX. Руководство программиста




ВВЕДЕНИЕ


В текущей версии системы UNIX реализованы два вида блокировки сегментов и файлов: слабая и сильная. Назначение этих средств - дать возможность программам, одновременно обрабатывающим одни и те же данные, синхронизировать свою работу. Поскольку подобный режим обработки данных характерен для многопользовательских приложений, необходимость общего решения проблемы синхронизации признана такими авторитетными в области стандартов организациями, как /usr/group, которая объединяет многочисленных пользователей системы UNIX во многих странах.

Слабая блокировка файлов и сегментов может быть использована для взаимной синхронизации процессов. При использовании сильной блокировки стандартные подпрограммы и системные вызовы ввода-вывода учитывают выполнение протокола блокировок. Таким образом, сильная блокировка обеспечивает дополнительный контроль очередности обращений к данным за счет небольшой потери эффективности.

Далее приводится описание использования возможностей блокировки сегментов и файлов. Рассматриваются примеры корректного исполь- зования средств блокировки сегментов. Мы старались рассеять возможные заблуждения относительно уровня защиты данных, который обеспечивается блокировкой сегментов: она должна рассматриваться в качестве средства синхронизации, а не как механизм обеспечения безопасности данных.

В связи с тем, что ниже содержатся ссылки на описания системного вызова fcntl(2), библиотечной функции lockf(3C), а также на команды и структуры данных fcntl(5), Вам, прежде чем продолжать чтение, следует ознакомиться с соответствующими разделами Справочника программиста.




Содержание  Назад  Вперед