Читаем Linux API. Исчерпывающее руководство полностью

• MS_DIRSYNC (начиная с версии Linux 2.6) — делает обновление каталогов синхронным. Это напоминает действие флага open() O_SYNC (см. раздел 13.3), но распространяется только на обновления каталогов. Описанный ниже флаг MS_SYNCHRONOUS обеспечивает расширенную функциональность по сравнению с флагом MS_DIRSYNC, позволяя синхронное обновление как файлов, так и каталогов. Флаг MS_DIRSYNC позволяет какому-либо приложению (например, open(pathname, O_CREAT), rename(), link(), unlink(), symlink() и mkdir()) убедиться в том, что обновления каталога синхронизированы, не затрачивая ресурсов на синхронизацию всех обновлений файлов. Назначение флага FS_DIRSYNC_FL (см. раздел 15.5) подобно флагу MS_DIRSYNC, с тем отличием, что флаг FS_DIRSYNC_FL можно применять к отдельным каталогам. Кроме того, в Linux системный вызов fsync(), примененный к файловому дескриптору, который указывает на каталог, позволяет выполнять синхронизацию обновлений каталогов. (Эта особенность работы системного вызова fsync() в Linux не отражена в стандарте SUSv3.)

• MS_MANDLOCK — разрешает обязательное блокирование записи для файлов в данной файловой системе. Мы рассмотрим блокирование записи в главе 51.

• MS_MOVE — автоматически перемещает существующую точку монтирования, указанную в аргументе source, в новое местоположение, определяемое аргументом target. Это соответствует параметру — move системного вызова mount(8). Действие эквивалентно размонтированию поддерева с его последующим монтированием в другом месте, за исключением того, что здесь нет такого момента времени, когда поддерево является размонтированным. Аргумент source должен быть строкой, которая указана в качестве аргумента target для предыдущего вызова mount(). Когда этот флаг указан, аргументы fstype, mountflags и data игнорируются.

• MS_NOATIME — не обновлять время последнего доступа для файлов в данной файловой системе. Назначение этого флага, а также описанного ниже флага MS_NODIRATIME, состоит в том, чтобы избежать избыточного доступа к диску, который необходим для обновления индексного дескриптора файла всякий раз, когда происходит доступ к файлу. Для некоторых приложений отслеживание метки времени не является критичным, и за счет устранения этой операции можно существенно увеличить производительность. Назначение флага MS_NOATIME такое же, как у флага FS_NOATIME_FL (см. раздел 15.5), с тем лишь отличием, что флаг FS_NOATIME_FL можно применять для отдельных файлов. Linux обеспечивает подобную функциональность также с помощью флага O_NOATIME open(), который задает такое поведение для отдельных открытых файлов (см. раздел 4.3.1).

• MS_NODEV — не разрешает доступ к блочным и к символьным устройствам в данной файловой системе. Это функция безопасности, предназначенная для того, чтобы запретить пользователям выполнение таких действий, как вставка съемного диска, содержащего специальные файлы устройств, которые могли бы разрешить произвольный доступ к системе.

• MS_NODIRATIME — не обновлять время последнего доступа для каталогов в данной файловой системе. (Этот флаг обеспечивает часть функциональности, если сравнить его с флагом MS_NOATIME, который не допускает обновление времени последнего доступа для всех типов файлов.)

• MS_NOEXEC — запретить выполнение программ (или сценариев) из этой файловой системы. Эта возможность удобна, если файловая система содержит исполняемые файлы не из Linux.

• MS_NOSUID — отключить программы с полномочиями setuid и setgid в данной файловой системе. Это функция безопасности, которая не позволяет пользователям запускать программы с полномочиями setuid и setgid со съемных устройств.

• MS_RDONLY — монтировать файловую систему только для чтения, чтобы исключить возможность создания новых файлов или изменения уже существующих.

• MS_REC (начиная с версии Linux 2.4.11) — этот флаг используется в сочетании с другими флагами (например, с MS_BIND), чтобы рекурсивно выполнить монтирование для всех точек монтирования в поддереве.

Перейти на страницу:

Похожие книги

C++ Primer Plus
C++ Primer Plus

C++ Primer Plus is a carefully crafted, complete tutorial on one of the most significant and widely used programming languages today. An accessible and easy-to-use self-study guide, this book is appropriate for both serious students of programming as well as developers already proficient in other languages.The sixth edition of C++ Primer Plus has been updated and expanded to cover the latest developments in C++, including a detailed look at the new C++11 standard.Author and educator Stephen Prata has created an introduction to C++ that is instructive, clear, and insightful. Fundamental programming concepts are explained along with details of the C++ language. Many short, practical examples illustrate just one or two concepts at a time, encouraging readers to master new topics by immediately putting them to use.Review questions and programming exercises at the end of each chapter help readers zero in on the most critical information and digest the most difficult concepts.In C++ Primer Plus, you'll find depth, breadth, and a variety of teaching techniques and tools to enhance your learning:• A new detailed chapter on the changes and additional capabilities introduced in the C++11 standard• Complete, integrated discussion of both basic C language and additional C++ features• Clear guidance about when and why to use a feature• Hands-on learning with concise and simple examples that develop your understanding a concept or two at a time• Hundreds of practical sample programs• Review questions and programming exercises at the end of each chapter to test your understanding• Coverage of generic C++ gives you the greatest possible flexibility• Teaches the ISO standard, including discussions of templates, the Standard Template Library, the string class, exceptions, RTTI, and namespaces

Стивен Прата

Программирование, программы, базы данных
1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных