1) способ организации совместного функционирования 2 типов ЗУ (отличающихся временем доступа и стоимостью хранения данных, позволяет уменьшить средний время доступа к данным за счет динамического копирования в быстрое ЗУ наиболее частое используемой информации и медленного ЗУ)
2) одно из устройств, быстрое ЗУ
Кэширование - это метод пригодный для ускорения доступа к оперативной памяти, диску и к другим видам ЗУ. Содержимое кэш памяти это совокупность записи обо всех загруженных в нее элементов данных из основной памяти. . При каждом обращении к основной памяти по физическому адресу просматривается содержимое кэш памяти, чтобы определить не находятся ли там нужные данные, поиск осущ-ся по содержимому. Кэш промах - нужных данных нет, данные считываются из основной памяти, передаются источнику запроса и одновременно копируются в кэш память. Кэш попадание – нужные данные есть.
Функционирование кэш памяти
· Пространственная локальность(если произошло обращение по некоторому адресу то с высокой степенью вероятности в ближайшее время произойдет обращение к соседним адресам)
· Временная локальность (если произошло обращение по некоторому адресу, то сл обращение по этому адресу с большой вероятностью произойдет в ближайшее время)
Проблемы кэш памяти
· вытеснение данных из кэша в основную память, интенсивность обращения)
· (согласование данных кэша и основной памяти)
Решение проблем кэширования
· Сквозная запись (если кэш промах то запись выполняется только в основную память, в противном случае и в кэш и в основную память)
· Обратная запись (при кэш промахе запись только в основную, при попадании только в кэш память)
Способы отображения основной памяти на кэш
· Случайное отображение (элемент основной памяти вместе с ее адреса размещается в любом месте кэш памяти)
· Детерминированное отображение (элемент основной памяти всегда отображается в одно место кэш памяти)
· Смешанная стратегия (произвольный адрес основной памяти отображается на некоторую группу адресов кэша)
При использовании 2хуровневого кеширования при выполнении запроса сначала осущ-ся поиск в кэше 1го уровня. Если произошел промах, то поиск продолжается в кэше 2го уровня. При промахе и здесь, то в основной памяти.
При такой иерархически организованной памяти необходимо обеспечить многоуровневое копирование и непротиворечивость данных на всех уровнях.
Многоуровневое кэширование является компромиссом между скоростью и размером кэша.
Файловая система (ФС)
Файл – это формально неопределяемое понятие . С точки зрения смысла файл – это множество данных, объединенных некоторой логической связью. С другой стороны файл относится к объекту однозначно описываемому следующими признаками:
o объединяет множество данных
o Обладает именем
o С целью долговременного и надежного хранения информации располагается на внешнем устройстве(относительно оперативной памяти Н: диски, накопители..)
o Предполагает многократное использование информации с разрывом во времени
o Предполагает совместное использование информации с несколькими приложениями или пользователями
Файловая система – это подсистема включающая в себя:
· Набор структур данных, использующих для управления файлами(каталоги файлов, дескрипторы фалов, таблицы распределения свободного и занятого пространства на диске)
· Комплекс системных программных средств, реализующих управление файлами(позволяют создавать, уничтожать, считывать, записывать, поиск, наименование файлов)
Файловая система - это совокупность всех файлов на диске.
Общая задача ФС – это предоставление пользователя логической модели для работы с файлами и отображение этой модели на физическую организацию внешнего устройства.
Логическая модель:
Обеспечивает удобный для пользователя интерфейс и скрывает физическую организацию работы с внешними устройствами.
Основные логич.операции и средства:
· Именование файлов
· Поддержка различных типов файлов
· Задание атрибутов файлов
· Организация хранения множества файлов
· Поддержка логической организации файлов
· Предоставление програмного интерфейса для работы с различными файлами
Отображение логической модели на физическую организацию внешнего устройства: (реализации логич.модели на физическом уровне)
· Отображение имен фалов в адреса внешней памяти
· Размещение данных на устройстве
· Обеспечение доступа к данным (Н: в Linux для каждого файла разные права: на чтение, запись..)
· Буферизация обмена (когда записываем данные и они поступают быстрее чем могут записываться)
· Организация совместного использования файлов
· Защита файлов от несанкционированного доступа другими пользователя
· Восстановление файлов, в случае возникновения ошибок различного рода (системных сбоев, из - за пользователя..)
· Обеспечивание устойчивости ФС к сбоям питания и программно – аппаратным ошибкам
· Обеспечивание работы с файлами в сети
Логическая организация ФС:
Имена файлов:
· Правила формирования имен файлов определяются ОС, при это учитываются ограничения на используемые символы, длину и структуру имени ( Н: Windows регистра независимые, в Linux – регистра зависимые)
· Понятие расширения зависит от ОС, оно было введено в ОС MSDOS и поддерживается в ОС семейства Windows. В ОС семейства Unix оно отсутствует.
Несколько имен для одного файла, в некоторых системах одномe и тому же файлу не может быть дано несколько разных имен (Н: windows), в других такое ограничение отсутствует(Н: Linux), в таких системах с каждым файлом ФС система связывает индексный дескриптор .
Типы файлов:
· Обычные фалы
Содержат информацию произвольного характера. Это информация заносится пользователем или программой
o Текстовые
Состоят из строк символов, представленных в ASCII- коде и интерпретируются пользователем как текст, их можно прочитать на экране, распечатать на принтере, это могут быть документы, исходные тексты программ
o Двоичные
Создаются программным путем и их структура определяется программой создателем (Н: исполняемы код, архивный файл..)
Все Ос должны распознавать хотя бы 1ин тип файлов их собственные исполняемы файлы (Н: в Windows exe- файлы)
· Каталог
Это системный файл, содержащий системную информацию о группе файлов его составляющих. Содержится список файлов входящих в него и устанавливается соответствие между файлами и их атрибутами. Организация каталогов и их содержимое различается в разных ОС. (Н: каталог Unix – это таблица, запись которой соответствует некоторому файлу и содержит имя файла и указатель на доп.информацию-inode (индексный дескриптор). Каталог в MSDOS хранит имена файлов и целый ряд
атрибутов- дата создания, последнего доступа и изменения, текущий размер фала, только для чтения, архивный, скрытый, системный файл, указывается номер начального кластера файла)
· Специальные файлы
Это фалы, ассоциированные с устройствами ввода – вывода, которые позволяют пользователя выполнять операции ввода- вывода использую обычные команды записи в файл или чтения из файла.
· Символьная связь ( только в Unix)
Особый тип файла, позволяющих косвенно адресовать другой файл. Цель - использование файла некоторого каталога в другом каталоге.
· Именованный канал, файл, отображенный на память.
Это типы файлов, используемые для связи между процессами.
Атрибут – это информация, описывающая некоторые свойства фала или некоторые характеристики файла.
Дерево каталогов:
На уровне пользователя файлы организуются в дерево каталогов. Используются везде, а в Unix дерево может преобразовываться в сеть. РИС_1 В ос семейства Windows каталог высшего уровня называется главным или корневым. В Windows он один не имеет имени и обозначается как имя дисковода :\ (Н: С:\) . В Unix / без указания накопителя.
Текущий каталог – это тот, с которым в данный момент работает пользователь.
Путь к файлу – это последовательность имен каталогов, разделенным знаком \ прямым или обратных в зависимости от ОС (Н: в Windows- обратный) начиная с имени текущего каталога и до каталога, в котором находится файл.
Полное имя файла – путь от корня к файлу.
Относительное имя файла – путь от текущего каталога к фалу.
Монтирование:
Комп оснащен большим количеством дисковых накопителей. В большинстве файлы одного пользователя находятся на различных устройствах, поэтому на каждому из устройств устанавливается автономная ФС.( Для Unix ФС организует единое дерево каталогов путем монтирования – присоединение произвольной ФС к общему дереву каталогов в любой его точке, при это м одно из устройств является системным, на нем находится загрузчик и основные файлы системы, при этом корневой каталог системного устройства считается корневым каталогом системы)
2 подхода к логической организации файлов:
1) Единица данных для обмена с внешним устройством осмыслена и определяется программистом, при этом информация о том, что является такой записью, явно присутствует в программе или сообщается ОС на соответствующем языке. ОС должна обеспечивать к отдельной записи как неделимой единице
Способ доступа к записям файлов определяет порядок их обработки:
o Последовательный (доступной для обработки является запись непосредственно следующая за обработанной )
o Прямой (каждая запись имеет некоторый ключ и доступной для обработки является запись с заданным ключом независимо от того какая запись была доступна ранее)
Способ доступа к записям и способ структурирования файлов взаимосвязаны.
2) Приложение полностью берет на себя интерпретацию содержимого файла, а обмен между оперативной и внешней памятью осущ-ся последовательностью байтов заданной длины
Преимущества: увеличение эффективности работы ОС;
нужно учитывать: в программе характеристики блока обязаны присутствовать и прежде всего должно быть определено, что будет выступать в качестве блока; в практических операциях прямого доступа в качестве ключа рассматривается номер записи; для чтения данных, записанных ввиде обычного текста должны использоваться операторы, понимающие текст как последовательно включающая числа, символы и строки