Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OSb.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
251.39 Кб
Скачать

1. Виды ресурсов и возможности их разделения

• Термин ресурс обычно применяется по отношению к многократно используемым, относительно стабильным и часто недостающим объектам, которые запрашиваются, задействуются и освобождаются в период их активности. Другими словами, ресурсом называется всякий объект, который может распределяться внутри системы.

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

• Основные виды ресурсов вычислительной системы:

• 1. Процессор, точнее — процессорное время. Процессорное время делится попеременно (параллельно).

• 2. Память. Оперативная память может делиться и одновременно, и попеременно. Внешняя память может разделяться и одновременно, а доступ к ней всегда разделяется попеременно.

• 3. Внешние устройства, как правило, могут разделяемыми и выделенными.

• 4. Программные модули (прежде всего, системные). Могут быть однократно и многократно используемыми. Однократно используемые могут быть правильно выполнены только один раз, являются неделимым ресурсом. Повторно используемые программные модули могут быть непривилегированными, привилегированными и реентерабельными.

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

• Существуют еще повторно входимые программные модули. Они состоят привилегированных секций.

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

2. Процессы и потоки.

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

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

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

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

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

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

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

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