Понятие вычислительного ресурса

Операционные системы.

Лекция 1. Введение.

 

 

 

ТЕМА 1

 

Основные понятия

 

 

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

Основные задачи, которые решает ОС:

  1. Поддержка пользовательского интерфейса.
  2. Обеспечение ввода-вывода операций.
  3. Управление прикладными программами.
  4. Планирование и распределение ресурсов.

 

Понятие операционной среды

1. Операционная среда- набор функций операционной системы и правил обращения к ней.

2. Операционная среда – набор интерфейсов необходимых программам и пользователю для обращения к ОС.

3. Операционная среда- набор системных программ, с помощью которых исполняется прикладная программа.

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

 

Понятие вычислительного ресурса.

 

Виды выч. Ресурсов:

1. Аппаратура.

2. Оперативная память

3. Процессорное время.

4. Информация (т. е информационные массивы, файлы, используемые прикладными программами).

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

Один и тот же ресурс в разных ситуациях может вести себя как делимый или неделимый.

Любой выч. Ресурс может выделяться в программе в следующих ситуациях:

1. Если он свободен и от других программ на него запросов не приходит.

2. Текущий запрос от программы и ранее введенные запросы допускают разделение ресурса.

3. Ресурс используется программой низшего приоритета и может быть отобран текущей программой.

 

Лекция 2.

 

Понятие процесса.

Одно из самых сложных и важных понятий ОС. Термин процесс был введен Юниксом.

 

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

Процесс - действующая или бездействующая программа, претендующая на вычислительные ресурсы.

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

Состояние "Выполнение" - получены все необходимые ресурсы.

Состояние "Готовности" – процесс может получить все необходимые ресурсы.

Состояние "Ожидание" – процесс не может получить ресурсы.

"Готовность" – промежуточное состояние, когда известно, что система гарантированно предоставит ресурсы.

В состоянии готовности может перейти в следующих случаях:

- по вызову из другого процесса;

- при выборе данного процесса из очереди процессов находящихся в ожидании.

- При наступлении некоторого заданного времени.

- Прерывании от какого-то внешнего устройства.

Для реализации процесса необходимо чтобы операционная система сохранила полную информацию о ней. Полная информация о процессе называется дескриптором. Дескриптор хранится в ОП и включает в себя:

1. PID – индетификатор процесса.

2. Вид процесса.

3. Состояние процесса.

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

5. Адрес памяти куда помещаются результаты взаимодействия процессов.

6. Требуемые вычислительные ресурсы для данного процесса.

7. Причины, по которым процесс был прерван.

8. Квант времени, который выделяется данному процессу.

9. приоритет процесса.

Разные операционные системы содержат разное количество дескрипторов, при этом различают количества дескрипторов, которые могут находиться в памяти. Другой вид ОС сам автоматически определяет кол-во дескрипторов.

 

 

Потоки

 

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

Поток – механизм расщепления процесса на отдельные параллельные ветви.

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

Потоки «соревнуются» за процессорное время, потоки являются программной реализацией процесса.

 

Прерывания:

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

Прерывания можно определить как принудительную передачу управления от выполняемой программы к ОС, а от нее к программе обработки прерываний.

Прерывания – механизм аппаратно-программный.

Любой механизм прерываний выполняет следующие действия:

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

2. запоминание состояния прерванного процесса.

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

4. передача управления программе обработки прерываний.

5. обработка прерываний (т.е. исполнение программы обработки прерываний).

6. восстановление информации, относящейся к прерванному процессу и передача управления прерванному процессу.

Действия 1,2,4 исполняются аппаратно, а остальные программно. 6 действие выполняется не всегда, все зависит от вида прерываний.

Прерывания делятся на 3 класса: внешние, внутренние, программные.

1. Внешние. Они вызываются асинхронными событиями происходящими вне

прерываемого процесса (прерывания от таймера, от внешних устройств ввода-вывода, при нарушении питания от другого процесса).

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

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

 

Лекция3. ТЕМА 2

 

Планирование и управление ресурсами.

 

Цели планирования

 

Основными целями планирования являются:

  1. Максимальное использование всех вычислительных ресурсов в текущий момент времени.
  2. Минимизация конфликтов между процессами за ресурсы.

 

Основными задачами планирования являются:

  1. Диспетчеризация процессов.
  2. Синхронизация процессов.
  3. Выделение (распределение) памяти.

 

Примечание: под задачей диспетчеризации понимается поток или процесс (не разбивается на потоки) стратегии планирования.

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

 

Различают следующие стратегии:

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

 

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

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: