Архитектура современных операционных систем
26 Перед уничтожением файла каждый раз проверяется, не существует ли элемента в СТД, ссылающегося на индексный дескриптор (что обозначает, что файл открыт процессом). Если это обнаружено, то физическое уничтожение от- кладывается, пока файл не будет закрыт всеми использующими его процесса- ми. Основные функции работы с файлами Функции работы с файлами можно подразделить на 3 вида: 1. Работающие с именами файлов. 2. Работающие с описателями файлов. 3. Управления файлами. К функция по работе с именами относятся: Open (имя, флаги, режим) – открытие файла. Флаги определяют различные режимы открытия. Режимы определяют режим доступа и режим разделения (как другие процессы будут одновременно работать) доступа к фай- лу. Функция возвращает описатель открытого файла, т.е. ссылку на элемент в ТОФ. Create (имя, режим) – создание нового файла, с характеристиками указанными при вызове. Возвращает описатель файла. Unlink – функция удаления файла. К функция по работе с описателями относятся: Read (описатель файла, буфер, размер) – чтение последовательно- сти байт из файла с указанным описателем в указанный буфер. Возвращает ко- личество реально прочитанных байт. Write (описатель файла, буфер, размер) – запись данных из указан- ного буфера в файл с указанным описателем. Возвращает количество реально записанных байт. Lseek (описатель файла, указатель чтения/записи) – изменение по- ложения указателя чтения/записи не выполняя ввода/вывода (необходима т.к. функции read и write изменяют УЧЗ). Новое значение может быть указанно от-
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY0OTYy