Файловая система

Автор работы: Пользователь скрыл имя, 09 Февраля 2011 в 16:48, реферат

Описание работы

Файл – это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные. Для управления этими данными создаются соответствующие файловые системы.

Содержание работы

1. Файловая система.
1.1. Введение
1.2. Типы файловых систем
1.3. Заключение
2. Архитектура драйвер-мини-драйвер
2.1. Введение
2.2. Пример применения мини-драйвера
2.3. Заключение

Файлы: 1 файл

ОС.doc

— 98.00 Кб (Скачать файл)

     Универсальный драйвер содержит базовый программный код для поддержки определенного класса устройств (таких как модемы или принтеры), обеспечивающий взаимодействие с соответствующими компонентами операционной системы (такими как подсистема печати или коммуникации). Мини-драйвер – это небольшой и простой драйвер, содержащий любые дополнительные команды, необходимые для работы определенных устройств. Во многих случаях универсальный драйвер для определенной категории устройств, также, содержит программный код, необходимый для работы устройств данной категории.

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

    1. Пример применения мини-драйвера

     В качестве примера применения мини-драйвера рассмотрим автомобильное телематическое устройство, подключенное к шине CAN.

     Компания QNX Software Systems Ltd является мировым лидером  в области технологий микроядерных операционных систем реального времени. Решения QNX внедрены в миллионы устройств по всему миру. Такие компании, как Cisco, DaimlerChrysler, Lockheed Martin, Panasonic, Siemens и General Electric, используют технологии QNX для создания сверхнадежных систем, предназначенных для рынков сетевого, автомобильного, медицинского, военного оборудования и систем промышленной автоматизации. Компания QNX Software Systems основана в 1980 году.

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

     Мини-драйвер состоит из двух основных компонентов:

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

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

  • Опрос. Во время начальной загрузки система опрашивает функцию обработчика мини-драйвера в различные моменты времени для определения того, приняты ли данные периферийным устройством. Для осуществления этого опроса загрузочный код может обращаться к функции обработчика с заданными пользователем интервалами.
  • Опрос на основе прерываний по таймеру. Функция обработчика подключается как обработчик псевдопрерывания, срабатывающий по системному таймеру. Вызов обработчика выполняется с фиксированным интервалом времени. В этом случае мини-драйвер по-прежнему находится в режиме опроса, однако системе не требуется явно обращаться к функции обработчика во время исполнения загрузочного кода.
  • Прерывание от устройства. Механизм прерывания от устройства подключает функцию обработчика непосредственно к источнику прерывания устройства. Этот механизм также позволяет избежать опросов и вызывает обработчик прерываний только при возникновении аппаратных событий.

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

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

     Работа  мини-драйвера сводится к следующим простым шагам:

  1. Мини-драйвер принимает на себя управление в заданные интервалы времени в ходе начальной загрузки. Этот процесс выполняется на основе опроса, поскольку аппаратные прерывания на этом этапе еще не работают. С мини-драйвером может быть связан небольшой стек протоколов. Он реализует минимальный объем логики для выполнения следующих операций:
    • инициализации оборудования;
    • буферизации входящих сообщений в памяти данных;
    • реагирования на критические события.
  2. В определенный момент фазы начальной загрузки включаются прерывания. После этого система может вызывать мини-драйвер с использованием прерываний. (Так как системный таймер сам по себе является прерыванием, механизм опроса при необходимости по-прежнему может использоваться.)
  3. После загрузки ОС мини-драйвер передает управление полной версии драйвера.
  4. С полной версией драйвера связан полный стек протоколов. После запуска драйвер может читать и обрабатывать все данные, собранные мини-драйвером в процессе начальной загрузки.

     При такой схеме начальной загрузки процессор общего назначения может  работать как специализированный. Например, лабораторные испытания системы на основе процессора Freescale MPC5200 с тактовой частотой 396 МГц показали, что мини-драйвер может легко обеспечить обработку потока сообщений, поступающих каждую миллисекунду. Другими словами, если при включении питания данные посылаются в устройство каждую миллисекунду, мини-драйвер может успешно принять и обработать все данные, поступившие во время начального запуска системы. Аналогичные результаты могут быть получены и при использовании процессоров на основе архитектур SH-4 и ARM.

    1. Заключение

     В персональных компьютерах архитектура  драйвер-мини-драйвер напрямую связана с технологией Plug and Play («Подключай и работай»).

     С точки зрения системы Plug and Play существуют следующие три типа драйверов:

  • Шинный  драйвер (драйвер шины) обслуживает контроллер шины, адаптер, мост или любое устройство, которое имеет дочерние устройства. Шинные драйверы относятся к обязательным драйверам и обычно поставляются Microsoft. Для каждого типа шины в системе имеется собственный шинный драйвер.
  • Функциональный драйвер — это основной драйвер устройства, который предоставляет интерфейс с этим устррйством. Этот драйвер является обязательным, за исключением случаев, когда ввод/вывод устройства осуществляется шинным драйвером или любыми драйверами фильтра. Функциональный драйвер устройства обычно реализуется в виде пары драйвер/мини-драйвер. В таких парах драйвер класса (обычно разрабатываемый Microsoft) обеспечивает функциональные возможности, необходимые всем устройствам этого типа, а мини-драйвер (обычно разрабатываемый фирмой-поставщиком конкретного устройства) обеспечивает специфические функциональные особенности устройства. Plug and Play Manager загружает по одному функциональному драйверу для каждого устройства.
  • Драйвер фильтра сортирует запросы ввода/вывода для шины, устройства или класса устройств. Драйверы фильтра являются необязательными и могут существовать в любом количестве, располагаясь на различных уровнях – как выше, так и ниже функционального драйвера и шинного драйвера.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  1. Список  используемой литературы:
 
    1. Таненбаум Э., Вудхалл А. Операционные системы. Разработка и реализация. [Текст]: 3-е изд., - СПб.: Питер, 2007. – 704 с.: ил.
    2. Гордеев, А. В. Операционные системы [Текст]: Учебник для вузов, 2-е изд., 2004. – 415 с.:ил.
    3. Олифер, В. Г. Сетевые операционные системы [Текст]: СПб.: Питер, 2003. – 539 с.: ил.
    4. [Электронный ресурс] // URL: http://www.swd.ru/index.php3?pid=777

Информация о работе Файловая система