Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Диаграмма состояний процесса. Процессы и потоки.Стр 1 из 3Следующая ⇒
Классификация СПО. В большинстве литературных источников к СПО относят программы, предназначенные для использования технических ресурсов компа, для автоматизации разработки новых программ или для организации выполнения уже существующих программ. СПО можно разделить на 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; Нарушение авторского права страницы