Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на вопросы по СПО.docx
Скачиваний:
55
Добавлен:
25.09.2019
Размер:
263.19 Кб
Скачать
  1. Процедура восстановления в ntfs.

Под восстанавливающимися файловыми системами понимают файловые системы, которые способны восстанавливать свою работоспособность после сбоев. Все эти системы основываются на протоколировании транзакций.

Под транзакцией понимают операцию ввода/вывода, вносящую изменения в системную область диска. Данная операция может выполнена либо целиком , либо отменена полностью (частичное выполнение недопустимо). Каждая транзакция состоит из подопераций, которые необходимо выполнить, чтобы операция ввода/вывода состоялась. В состав NTFS входит журнал транзакций. Журнал транзакций представляет собой некоторый объект.

Восстановление данных осуществляется следующим образом: выполняется 3 прохода (проход анализа, проход повтора, проход отмены). Эти проходы содержат следующие шаги:

1.анализ:

•чтение области рестарта и определения номера записи для последней контрольной точки,

•чтение записи контрольной точки и определение номеров двух служебных таблиц,

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

2. повтор:

•анализ таблицы модифицированных страниц и определение номера самой ранней записи модифицированной страницы.

•чтение журнала в прямом направлении и повторение завершенных транзакций.

3.отмена

•анализ таблицы незавершенных транзакций и определение номера самой поздней подоперации незавершенных транзакций.

•чтение журнала в обратном направлении и отмена действий подопераций незавершенных транзакций.

  1. Основы организации операционной системы Unix.

UNIX— семейство переносимых, многозадачных и многопользовательских операционных систем.

Некоторые отличительные признаки UNIX-систем включают в себя:

-использование простых текстовых файлов для настройки и управления системой;

-широкое применение утилит, запускаемых в командной строке;

-взаимодействие с пользователем посредством виртуального устройства — терминала;

-представление физических и виртуальных устройств и некоторых средств межпроцессового взаимодействия как файлов;

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

В настоящее время UNIX используются в основном на серверах, а также как встроенные системы для различного оборудования. На рынке ОС для рабочих станций и домашнего применения лидером является Microsoft Windows, UNIX занимает только второе (Mac OS X), третье (GNU/Linux) и многие последующие места.

UNIX-системы имеют большую историческую важность, поскольку благодаря им распространились некоторые популярные сегодня концепции и подходы в области ОС и программного обеспечения. Также, в ходе разработки Unix-систем был создан язык Си.

Особенности UNIX, отличающие данное семейство от других ОС приведены ниже.

- Файловая система древовидная, чувствительная к регистру символов в именах, очень слабые ограничения на длину имён и пути.

- Нет поддержки структурированных файлов ядром ОС, на уровне системных вызовов файл есть поток байт.

- Командная строка находится в адресном пространстве запускаемого процесса, а не извлекается системным вызовом из процесса интерпретатора команд (как это происходит, например, в RSX-11).

- Понятие «переменных окружения».

- Запуск процессов вызовом fork(), то есть возможность клонирования текущего процесса со всем состоянием.

- Понятия stdin/stdout/stderr.

- Ввод/вывод только через дескрипторы файлов.

- Традиционно крайне слабая поддержка асинхронного ввода/вывода, по сравнению с VMS и Windows NT.

- Интерпретатор команд есть обыкновенное приложение, общающееся с ядром обыкновенными системными вызовами (в RSX-11 и VMS интерпретатор команд выполнялся как специальное приложение, специальным образом размещенное в памяти, пользующееся специальными системными вызовами, поддерживались также системные вызовы, дающие возможность приложению обращаться к своему родительскому интерпретатору команд).

- Команда командной строки есть не более чем имя файла программы, не требуется специальная регистрация и специальная разработка программ как команд (что являлось обычной практикой в RSX-11, RT-11).

- Не принят подход с программой, задающей пользователю вопросы о режимах своей работы, вместо этого используются параметры командной строки (в VMS, RSX-11, RT-11 программы работали также с командной строкой, но при её отсутствии выдавали запрос на ввод параметров).

- Пространство имён устройств на диске в каталоге /dev, поддающееся управлению администратором, в отличие от подхода Windows, где это пространство имен размещается в памяти ядра, и администрирование этого пространства (например, задание прав доступа) крайне затруднено из-за отсутствия его постоянного хранения на дисках (строится каждый раз при загрузке).

- Широкое использование текстовых файлов для хранения настроек, в отличие от двоичной базы данных настроек, как, например, в Windows

Широкое использование утилит обработки текста для выполнения повседневных задач под управлением скриптов.

- «Раскрутка» ОС после загрузки ядра путём исполнения скриптов стандартным интерпретатором команд.

- Широкое использование конвейеров (pipe).

- Все процессы, кроме init, равны между собой, не бывает «специальных процессов».

- Адресное пространство делится на глобальное для всех процессов ядро и на локальную для процесса части, нет «групповой» части адресного пространства, как в VMS и Windows NT, как и возможности загрузки туда кода и его исполнения там.

- Использование двух уровней привилегий процессора вместо четырёх в VMS.

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

- Отсутствие APC и аналогов, то есть произвольных (а не жестко перечисленных в стандартном множестве) сигналов, не доставляемых до явного пожелания процесса их получить (Windows, VMS).

- Концепция сигнала уникальна для UNIX, и крайне сложна в переносе на другие ОС, такие, как Windows.