Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Диаграмма состояний процесса. Процессы и потоки.



Классификация СПО.

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

СПО можно разделить на 5 групп:

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

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

3) Интерактивные оболочки предназначены для упрощения взаимодействия пользователя с ОС, т.е. предоставляют средства для управления и настройки пользовательского окружения и приложений. Большинство ОС поддерживают различные интерфейсные оболочки, при этом с точки зрения оболочки конкретная ОС предоставляет программный интерфейс, при помощи которого оболочка взаимодействует с ОС, а взаимодействие оболочки с пользователем может быть представлено различными средствами.

4) Системы и среды программирования. Основными компонентами являются трансляторы с различных языков программирования, компоновщики, отладчики, интегрированные среды разработки. В большинстве случаев система программирования поддерживает компиляцию под другие аппаратные платформы или под другие ОС, разрабатываясь при этом под конкретные ОС.

5) Утилиты – программы, позволяющие обслуживать, настраивать, управлять ОС, подготавливать для работы внешние носители и устройства, оптимизировать системные данные, производить другие работы, связанные с обслуживанием вычислительной системы.

 

Диаграмма состояний процесса. Процессы и потоки.

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

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

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

В зависимости от доступности или недоступности процесс может находиться в нескольких состояниях:

· Активное – участвует в конкуренции за ресурсы

ü Состояние выполнения – имеет ресурсы и выполняется на процессоре;

ü Готовность к выполнению – имеет все ресурсы (они доступны), но процессор не доступен;

ü Режим ожидания (блокировки) – возникает когда один или несколько видов ресурсов недоступны либо операция ввода – вывода не завершена;

· Пассивное – не участвует, но известен процессору.

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

· Идентификатор процессора pid (целое число);

· Класс процесса на основе которого ОС выделяет ресурсы данному процессу;

· Приоритет процесса;

· Некоторая область памяти предназначенная для хранения состояния выполнения процесса, называемая контекстом процесса (входит все программное окружение);

· Состояние процесса;

· Программное окружение процесса.

 

 

Планирование и диспетчеризация процессов и задач. Дисциплины диспетчеризации.

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

При планировании задач возможны различные стратегии выбора решения:

 - Последовательное выполнение задач в том порядке, в котором они поступали в очередь;

 - Использовать оценку времени выполнения задания в качестве критерия сортировки. При этом короткие должны выполняться первыми;

 - Использование одинаковых интервалов для решения каждой задачи.

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

Дисциплины диспетчеризации:

Без приоритетные: Линейные: (В порядке очереди, Случайный выбор процесса) Циклические: (Циклические, Алгоритм с разделением величины интервалов времени в зависимости от важности, Приоритетные)

С фиксированным приоритетом (Относительный приоритет, Абсолютный приоритет, Адаптивный приоритет)

С динамическим приоритетом (Зависит от времени ожидания, Зависит от времени обслуживания)

Рассмотрим наиболее распространенные и применяемые дисциплины:

FCFS – в порядке очереди. Первый пришел – первый обслужен.

SJN (shortest jump next) – постановка на выполнение наиболее короткого задания.

SRT (shortest remain time) – постановка задач с наименьшим оставшимся временем выполнения.

RR (Round Robin) – циклическая (карусельная) дисциплина. Часто используется с модификациями.

 

Классификация СПО.

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

СПО можно разделить на 5 групп:

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

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

3) Интерактивные оболочки предназначены для упрощения взаимодействия пользователя с ОС, т.е. предоставляют средства для управления и настройки пользовательского окружения и приложений. Большинство ОС поддерживают различные интерфейсные оболочки, при этом с точки зрения оболочки конкретная ОС предоставляет программный интерфейс, при помощи которого оболочка взаимодействует с ОС, а взаимодействие оболочки с пользователем может быть представлено различными средствами.

4) Системы и среды программирования. Основными компонентами являются трансляторы с различных языков программирования, компоновщики, отладчики, интегрированные среды разработки. В большинстве случаев система программирования поддерживает компиляцию под другие аппаратные платформы или под другие ОС, разрабатываясь при этом под конкретные ОС.

5) Утилиты – программы, позволяющие обслуживать, настраивать, управлять ОС, подготавливать для работы внешние носители и устройства, оптимизировать системные данные, производить другие работы, связанные с обслуживанием вычислительной системы.

 

Диаграмма состояний процесса. Процессы и потоки.

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

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

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

В зависимости от доступности или недоступности процесс может находиться в нескольких состояниях:

· Активное – участвует в конкуренции за ресурсы

ü Состояние выполнения – имеет ресурсы и выполняется на процессоре;

ü Готовность к выполнению – имеет все ресурсы (они доступны), но процессор не доступен;

ü Режим ожидания (блокировки) – возникает когда один или несколько видов ресурсов недоступны либо операция ввода – вывода не завершена;

· Пассивное – не участвует, но известен процессору.

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

· Идентификатор процессора pid (целое число);

· Класс процесса на основе которого ОС выделяет ресурсы данному процессу;

· Приоритет процесса;

· Некоторая область памяти предназначенная для хранения состояния выполнения процесса, называемая контекстом процесса (входит все программное окружение);

· Состояние процесса;

· Программное окружение процесса.

 

 


Поделиться:



Последнее изменение этой страницы: 2019-05-08; Просмотров: 158; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.018 с.)
Главная | Случайная страница | Обратная связь