Шина. Мультипрограммирование.

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

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

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

Шины бывают параллельными (данные переносятся по словам, распределенные между несколькими проводниками) и последовательными (данные переносятся побитово).

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

Мультипрограммирование — способ организации выполнения нескольких программ на одном компьютере.

Разделяют мультипрограммирование в пакетных системах, системах реального времени и в системах разделения времени.

Пакетная обработка используется для достижения максимальной эффективности использования ресурсов вычислительной машины при выполнении вычислительных задач путём сбалансированной загрузки её компонентов, как например, АЛУ и УВВ.

Системы разделения времени используются для «одновременного» выполнения нескольких программ в интерактивном режиме. В отличие от пакетного режима, все программы получают определённые временные промежутки времени для выполнения, затем система инициирует переключение.

Системы реального времени отличаются от систем с разделением времени тем, что они должны быть предсказуемы в следующих ситуациях:

  1. Высокая степень планируемости: временные ограничения должны выполняться и при высокой степени использования ресурсов.
  2. Время отклика должно быть в пределах допустимого даже в наихудшем случае.
  3. Стабильность при вре́менной нагрузке: в случае перегрузки система должна успевать выполнять наиболее важные задачи в срок, жертвуя менее важными.

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