question-6

Вопрос 6

Операционная система Unix — ядро ОС и файловая система

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

Характерные особенности UNIX:

  • использование простых текстовых файлов для настройки и управления системой;
  • широкое применение утилит командной строки;
  • взаимодействие пользователя с системой через терминал;
  • представление устройств и некоторых средств межпроцессного взаимодействия в виде файлов.
  • использование конвейеров (pipelines), позволяющих объединять несколько программ, каждая из которых выполняет одну задачу;
  • модульная архитектура, основанная на принципе «одна программа — одна функция».

Ядро UNIX — центральная часть ОС, управляющая процессами, памятью, ВУ и файловой системой, а также обеспечивающая взаимодействие программ с аппаратным обеспечением.

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

Ядро UNIX разработано таким образом, что его сравнительно легко адаптировать под различные аппаратные платформы и микропроцессоры.

Основные подсистемы ядра:

  • управление памятью (MMU);
  • управление процессами и потоками (Scheduler);
  • виртуальная файловая система (VFS);
  • сетевая подсистема;
  • драйверы устройств;
  • платформозависимый код.

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

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

Когда говорят, что в UNIX всё представлено в виде файлов, это значит ВСЁ: обычные файлы, каталоги, процессы (/proc), ВУ (/dev), информация о ядре (/sys), каналы, сокеты и др.

Корневой каталог имеет имя /. Каждый файл и каталог имеет уникальный полный путь от корня файловой системы. Также может использоваться относительный путь, задаваемый относительно текущего каталога.

В каждом каталоге присутствуют специальные ссылки: “.” — текущий каталог; “..” — родительский каталог. 

Для хранения информации о файле используется структура inode (index node). Она содержит метаданные файла: тип, права доступа, владельца, размер, время создания и изменения и другую служебную информацию. Имя файла в inode не хранится.

Единое дерево каталогов может объединять несколько файловых систем, расположенных на разных носителях. Для их подключения к дереву каталогов ядро выполняет монтирование, присоединяя файловую систему к точке монтирования. Каждая файловая система имеет уникальный UUID, а каждый файл внутри нее — inode

Ссылки на файлы: - Жёсткая ссылка (hard link) — дополнительное имя файла, имеющее тот же inode, что и исходный файл; - Символическая ссылка (symbolic link) — специальный файл, содержащий путь к другому файлу. При удалении исходного файла такая ссылка остаётся, но становится недействительной.

Ссылка на оригинал


question-34

Вопрос 34

Интерфейсы ввода-вывода. Контроллеры внешних устройств. Уровни стандартизации, сопряжения с системной шиной, циклы обмена. Регистры контроллера.

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

Уровни стандартизации интерфейсов

Выделяют три уровня:

  • Логический уровень — правила обмена (команды, режимы работы, последовательность операций)
  • Электрический уровень — параметры сигналов (напряжение, ток, синхронизация)
  • Физический уровень — разъёмы, кабели, конструкция подключения

Контроллер внешнего устройства (КВУ)

КВУ — это аппаратный посредник между системной шиной ЭВМ и внешним устройством.

Причины использования контроллера:

  • различие форматов данных ВУ и ЭВМ
  • различие скоростей работы
  • необходимость преобразования сигналов

Типы контроллеров:

  • параллельные (например, ИРПР)
  • последовательные (например, ИРПС)
  • аналого-цифровые и цифро-аналоговые
  • программируемые (настраиваются через регистры управления)

Сопряжение с системной шиной (аппаратная топология)

  1. Процессор -> КВУ: Происходит на материнской плате. Процессор подключается к КВУ через системную шину (адрес, данные, управление), считывая и записывая биты в регистры контроллера (SR, DR, CR).
  2. Контроллеры -> ВУ: Происходит на границе компьютера. КВУ общается с физическим прибором через специализированный кабель/разъем (интерфейс ВУ). КВУ переводит цифровые байты из своего регистра DR в физические сигналы, понятные конкретному устройству.

Циклы обмена (логика управления)

io-diargam.png

Ввод

  1. Процессор выставляет адрес ВУ
  2. Активируется сигнал «чтение»
  3. Контроллер получает данные от ВУ
  4. Данные помещаются в регистр данных
  5. Процессор считывает данные с шины

Вывод

  1. Процессор выставляет адрес ВУ
  2. Помещает данные на шину
  3. Активируется сигнал «запись»
  4. Контроллер передаёт данные в ВУ
  5. Формируется сигнал готовности

Способы организации обмена:

  • Программно-управляемый обмен
    • процессор сам выполняет все операции
    • возможен polling или прерывания
  • Прерывания
    • ВУ само сигнализирует о готовности
    • процессор переключается на обработчик
  • ПДП (DMA)
    • обмен напрямую между ВУ и ОЗУ
    • процессор не участвует в передаче

Так же для взаимодействие с ВУ существует понятие драйвер. Если контроллер (КВУ) — это аппаратный посредник, то драйвер — это программный посредник. (это специальная низкоуровневая программа операционной системы, которая «знает» точные адреса регистров конкретного КВУ и распределение бит внутри них.)

Регистры контроллера

Контроллер содержит регистры:

  • DR (Data Register I/O) — данные
  • SR (Status Register) — состояние устройства
  • CR (Control Register) — управление режимами работы

Регистр состояния отражает готовность ВУ, ошибки и статус обмена. Регистр управления задаёт режим работы контроллера (ввод/вывод, прерывания, синхронизация и т.д.).

Ссылка на оригинал