Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
sppo.doc
Скачиваний:
1
Добавлен:
20.04.2019
Размер:
1.17 Mб
Скачать
  1. Контроллеры и Шины

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

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

Если говорить о 32-х битовой архитектуре процессора, он имеет 52 бита; из них шине принадлежат 32 разряда.

Контроллеры – процессоры малой мощности, выполняющие команды ввода/вывода. Различаются на программируемые и непрограммируемые(с зашитой программой). Чем «интеллектуальнее» контроллер, тем больше свободы дается процессору.

4. Понятие о прерываниях как средстве управления ресурсами кс. Режимы функционирования ос.

Прерывание – программно-аппаратное средство для приостановки одной программы с целью выполнения другой.

Аппарат прерывания есть основа системы управлении ресурсами ОС.

Процесс является единицей работы процессора. В ОС процесс – совокупность кода программы, данных, которые она обрабатывает и управляющей информации, необходимой для обслуживания процесса. В момент выполнения программа «погружается» в ОС. Процессор, выполняющий код программы, работает по следующему алгоритму:

  1. Выбирает команду из памяти

  2. Дешифрует выбранную команду

  3. Вычисляет адрес следующей команды

  4. Исполнение текущей команды

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

PSW – статусная информация процессора (адрес хранения следующей команды и набор флагов).

Процессор обращается в PSW, извлекает адрес следующей команды, извлекает ее и т.д. Если процессор не остановить, то он будет выполнять эти шаги до окончания программы. Чтобы этого избежать и существует прерывание.

Прерывания

  1. Синхронное (вызывается самим процессом).

  2. Асинхронное (вызывается извне, не зависимо от выполняемого программного процесса).

Microsoft называет прерывания в общем виде ловушками, и уточняет:

  1. Прерывания – асинхронные ловушки

  2. Исключения – синхронные ловушки

По типу прерывания различают:

  1. Программное (например деление на 0 и т.п.).

  2. Ввода / Вывода :

    1. Синхронное (процесс приостановился).

    2. Асинхронное (устройство известило об окончании операции В/В).

  3. Сервисные (по обращении за сервисом к ядру ОС).

  4. От схем контроля машины.

  5. Внешнее (например по таймеру).

В процессе выполнения прерываний может возникать асинхронные прерывания. Часть обработки кода прерываний может происходить в закрытых масках – новые прерывания либо игнорируются, либо становятся в очередь, т.е. прерывания маскируются. Процессор получает информацию из регистров. Существуют несколько слов, чтобы переключиться на нужный обработчик. Данные сохраняются в PSW. Обработчик данных сохраняет их еще в одном месте.

5. Понятие о файлах и наборах данных. Записи и блоки. Логическая организация файлов.

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

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

Последовательные файлы

Последовательные файлы представляют собой последовательность записей, без каких-либо управляющих команд. Для прочтения N-ой записи необходимо прочесть все N-1 запись ей предшествующих. С последовательными фалами работают такие устройства, как клавиатура, монитор, принтер. Последовательная организация файла – самая простая, но самая неэффективная.

Индексно-последовательная

К каждой записи в файле прилагается уникальный (принадлежащий только этой записи) КЛЮЧ. В начале файла помещается так называемая ТАБЛИЦА КЛЮЧЕЙ. Каждому ключу в таблице сопоставлен адрес записи, которой он принадлежит. Программа, обращаясь к файлу, последовательно читает таблицу ключей, находит нужный ключ и переходит к нужной записи. В шаблоне файла адреса, соответствующие ключам записей - пустые. В общем виде, индексно-последовательный файл представляет собой двухуровневый последовательный файл: первый уровень – файл ключей, второй – записей. Обработка ключа быстрее обработки записей. Если в файле очень много записей, можно добавить уровни ключей, указывающих на боки ключей более низкого уровня. Эффективность данной структуры тем больше, чем размер записи больше размера ключа.

Библиотечные файлы

Библиотеки содержат оглавление, состоящее из записей (элементы оглавления содержат необходимую информацию о файлах в библиотеке: имя, местоположение, длину). Файлы библиотеки – разделы. На самом деле разделы – это разные файлы, но фигурируют они как один. Библиотечные файлы экономят память – т.к. ОС выгодно, чтобы файлов было мало.

Два способа работы с библиотеками (претерпевающими изменение):

  • Создание новой копии (метод, простой в реализации, но дорогой в смысле памяти, необходимой для его осуществления).

  • Модификация старой – новый раздел записывается на новое место. (Для реализации необходимы дополнительные средства, зато метод экономичен т.к. обычно библиотека заранее включает в себя место для добавки. Для правильной «модернизации на месте» необходимо использовать так называемые сборщики мусора, очищающие память от старых ненужных и временных файлов.)

Типы записей

Логические записи:

  1. Fixed length – в записях одинаковой длины содержится в основном только полезная информация (без справочной), часто эффективность мала, т.к. записи могут быть пустыми или частично пустыми. Но ОС с ними удобнее.

  2. Variable length – позволяет компактно хранить файлы с большим разбросом записей по длине. В начале каждой записи помещается ДЕСКРИПТОР, обычно содержащий длину записи.

  3. Undefined length – похожи на файлы прямого доступа. Длина записи неопределенна и ОС не предоставляет средств для ее чтения (программа, создающая такие файлы доджна сама знать как с ними работать).

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

Физические записи (размещение записей на внешних носителях)

  1. F (фиксированные) – длина одной записи равна длине блока.

  2. FB (фиксировано - блокируемые) – в одном блоке содержится несколько записей одинакового типа.

  3. VS (переменно-сегментированные) – на одном блоке не менее одной записи переменной длины (не может быть такого: часть записи на одном блоке). Каждый блок снабжен дескриптором блока, содержащим информацию о количестве записей на блоке и их общей длине и методе обработки.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]