Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Файлы, отображаемые на адресное пространство памяти




Операции с файлами

Атрибуты файла

Доступ к файлам

Основные виды доступа к файлам:

· Последовательный - байты читаются по порядку. Использовались, когда были магнитные ленты.

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

Основные атрибуты файла:

· Защита - кто, и каким образом может получить доступ к файлу (пользователи, группы, чтение/запись). Используются в Windows и UNIX.

· Пароль - пароль к файлу

· Создатель - кто создал файл

· Владелец - текущий владелец файла

· Флаг "только чтение" - 0 - для чтения/записи, 1 - только для чтения. Используются в Windows.

· Флаг "скрытый" - 0 - виден, 1 - невиден в перечне файлов каталога (по умолчанию). Используются в Windows.

· Флаг "системный" - 0 - нормальный, 1 - системный. Используются в Windows.

· Флаг "архивный" - готов или нет для архивации (не путать сжатием). Используются в Windows.

· Флаг "сжатый" - файл сжимается (подобие zip архивов). Используются в Windows.

· Флаг "шифрованный" - используется алгоритм шифрования. Если кто-то попытается прочесть файл, не имеющий на это прав, он не сможет его прочесть. Используются в Windows.

· Флаг ASCII/двоичный - 0 - ASCII, 1 - двоичный

· Флаг произвольного доступа - 0 - только последовательный, 1 - произвольный доступ

· Флаг "временный" - 0 - нормальный, 1 - для удаления файла по окончании работы процесса

· Флаг блокировки - блокировка доступа к файлу. Если он занят для редактирования.

· Время создания - дата и время создания. Используются UNIX.

· Время последнего доступа - дата и время последнего доступа

· Время последнего изменения - дата и время последнего изменения. Используются в Windows и UNIX.

· Текущий размер - размер файла. Используются в Windows и UNIX.

 

Основные системные вызовы для работы с файлами:

· Create - создание файла без данных.

· Delete - удаление файла.

· Open - открытие файла.

· Close - закрытие файла.

· Read - чтение из файла, с текущей позиции файла.

· Write - запись в файл, в текущею позицию файла.

· Append - добавление в конец файла.

· Seek - устанавливает файловый указатель в определенную позицию в файле.

· Get attributes - получение атрибутов файла.

· Set attributes - установить атрибутов файла.

· Rename - переименование файла.

 

Иногда удобно файл отобразить в памяти (не надо использовать системные вызовы ввода-вывода для работы с файлом), и работать с памятью, а потом записать измененный файл на диск.

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

При использовании сегментной организации памяти, файл загружают в отдельный сегмент.

 

Пример копирования файла через отображение в памяти.

Алгоритм:

1. Создается сегмент для файла 1

2. Файл отображается в памяти

3. Создается сегмент для файла 2

4. Сегмент 1 копируется в сегмент 2

5. Сегмент 2 сохраняется на диске

Недостатки этого метода:

· Тяжело определить длину выходного файла

· Если один процесс отобразил файл в памяти и изменил его, но файл еще не сохранен, второй процесс откроет это же файл, и будет работать с устаревшим файлом.

· Файл может оказаться большим, больше сегмента или виртуального пространства.

 




Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 307; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.