Содержание
- 2. Содержание курса Процессы Модель процесса Создание, завершение процесса Иерархии, состояния, реализации процессов Потоки Применение потоков Классическая
- 3. Процесс Процесс – абстрактное понятие, описывающие работу программы. В современных ОС многозадачность реализована за счет предоставления
- 4. Модель процесса Все ПО исполняемое на компьютере, а иногда и операционная система, организовано в виде последовательных
- 5. Модель процесса (2) Концептуальная модель четырех независимых друг от друга последовательных процессов. Четыре программы, работающие в
- 6. Модель процесса (3) Центральный процессор переключается между процессами, следовательно, скорость вычислений процесса всегда будет разной. Процессы
- 7. Создание процесса В универсальных системах определенные способы создания и прекращения процессов по мере необходимости. Способы создания
- 8. Создание процесса. Инициализация операционной системы. При загрузке ОС создается несколько процессов. Процессы, обеспечивающие взаимодействие с пользователями
- 9. Создание процесса (системный вызов) Новый процесс формируется на основании системного запроса от текущего процесса. В роли
- 10. Создание процесса (системный вызов) В UNIX существует только один системный запрос: fork (ветвление). Этот запрос создает
- 11. Завершение процесса Завершение процесса: Обычный выход (преднамеренно); Выход по ошибке (преднамеренно); Выход по неисправимой ошибке (непреднамеренно);
- 12. Иерархия процессов В некоторых системах родительский и дочерний процессы остаются связанными между собой определенным образом. Дочерний
- 13. Иерархия процессов (2). Пример. В образе загрузки присутствует специальный процесс init. При запуске этот процесс считывает
- 14. Иерархия процессов (3). Пример. В Windows не существует понятия иерархии процессов, и все процессы равноправны. Единственное,
- 15. Состояние процессов
- 16. Состояние процессов Несмотря на самостоятельность каждого процесса, наличие собственного счетчика команд и внутреннего состояния, процессам зачастую
- 17. Состояние процессов (2) Возможны два вида блокировки процесса: Процесс блокируется с точки зрения логики приложения (из-за
- 18. Состояние процессов (диаграмма состояния) Три возможных состояния процесса: Работающий Готовый к работе Заблокированный
- 19. Переходы 2 и 3 вызываются планировщиком процессов Состояние процессов (диаграмма состояния)
- 20. Реализация процессов Для реализации модели процессов операционная система содержит таблицу процессов. В таблице содержится информация –
- 21. Реализация процессов (таблица процессов)
- 22. Реализация процессов (работа с внешними устройствами) С каждым классом устройств ввода-вывода связана область памяти называемая вектором
- 23. Реализация процессов (схема обработки прерываний) Аппаратное обеспечение сохраняет в стеке счетчик команд и т. п. Аппаратное
- 24. Моделирование многозадачности При использовании многозадачности повышается эффективность загрузки центрального процессора. Грубо говоря, если средний процесс выполняет
- 25. Моделирование многозадачности
- 26. Моделирование многозадачности (пример) Предположим, что компьютер имеет 2 Гб памяти, 1 Гб отдано операционной системе, а
- 27. Анализ производительности многозадачных систем
- 28. Поток
- 29. Потоки В обычных операционных системах каждому процессу соответствует адресное пространство и одиночный управляющий поток. Фактически это
- 30. Использование потоков Основной причиной использование потоков является выполнение большинством приложений существенного числа действий. В случае параллельных
- 31. Использование потоков (пример) Пользователь пишет книгу. С точки зрения автора проще всего хранить книгу в одном
- 32. Использование потоков (пример) (2)
- 33. Использование потоков. Пример. WEB-сервер. Способ организации web-сервера: Один поток, называемый диспетчером, считывает приходящие по сети запросы;
- 34. Использование потоков. Пример. WEB-сервер.
- 35. Использование потоков. WEB-сервер. Модель сервера. сервер создается в виде набора последовательных потоков. Программа диспетчера состоит из
- 36. Использование потоков. Пример (3) Сервер обработки данных. Способы конструирования сервера:
- 37. Классическая модель потоков
- 38. Модель потока Модель процесса, базируется на двух независимых концепциях: группирование ресурсов; выполнение программы.
- 39. Модель потока. Группировка ресурсов. Процесс можно рассматривать как способ объединения родственных ресурсов в одну группу. У
- 40. Модель потока. Выполнение программы. Процесс можно рассматривать как поток исполняемых команд или просто поток. Компоненты потока:
- 41. Модель потока (2)
- 42. Модель потока (3) Различные потоки в одном процессе не так независимы, как различные процессы. У всех
- 43. Модель потока (4)
- 44. Модель потока (5) Каждый поток обладает собственным стеком
- 45. Потоки в POSIX IEEE standard 1003.1с — стандарт создания переносимых многопоточных программ. Пакет Pthreads, реализует работу
- 46. Потоки в POSIX Функции пакета Ptheads
- 47. Реализация потоков Есть два основных способа реализации пакета потоков: в пространстве пользователя и ядре.
- 48. Реализация потоков (смешанная реализация)
- 49. Активация планировщика Цель активации планировщика заключается в имитации функциональных возможностей потоков на уровне ядра, но при
- 50. Активация планировщика При использовании активации планировщика ядро назначает каждому процессу определенное количество виртуальных процессоров, а системе
- 51. Всплывающие потоки Потоки часто используются в распределенных системах. Пример: обработка входящих сообщений. При поступлении сообщения система
- 52. Всплывающие потоки Создание нового потока при поступлении сообщения
- 53. Межпроцессорное взаимодействие
- 54. Межпроцессорное взаимодействие Процессам часто бывает необходимо взаимодействовать между собой. Например, в конвейере ядра выходные данные первого
- 55. Состояние состязания В некоторых операционных системах процессы, работающие совместно, могут сообща использовать некое общее хранилище данных.
- 56. Состояние состязания (2) Процессы находятся в состязательной ситуации. Пример №2. Студент в столовой.
- 57. Критические области. Состязания между процессами. Основным способом предотвращения любой ситуации, связанной с совместным использованием памяти, файлов
- 58. Критические области. Состязания между процессами. Формулировка состояния состязания: Некоторый промежуток времени процесс занят внутренними расчетами и
- 59. Критические области Для правильной совместной работы параллельных процессов и эффективного использования общих данных необходимо выполнение четырех
- 60. Критические области Взаимное исключение использования критических областей
- 61. Взаимное исключение с активным ожиданием Запрещение прерываний Переменные блокировки Строгое чередование Алгоритм Петерсона Команда TSL Семафоры
- 62. Взаимное исключение с активным ожиданием способы реализации
- 63. Запрещение прерываний Запрет всех прерываний при входе процесса в критическую область и разрешение прерываний по выходе
- 64. Запрещение прерываний (пример) Пример: процесс пользователя отключил все прерывания и в результате какого-либо сбоя не включил
- 65. Переменные блокировки Рассмотрим одну совместно используемую переменную блокировки, изначально равную 0. Если процесс хочет попасть в
- 66. Переменные блокировки (недостатки) Один процесс считывает переменную блокировки, обнаруживает, что она равна 0, но прежде, чем
- 67. Строгое чередование Третий метод реализации взаимного исключения.
- 68. Строгое чередование Переменная turn=0 отслеживает, чья очередь входить в критическую область. Вначале процесс 0 проверяет значение
- 69. Алгоритм Петерсона
- 70. Команда TSL Рассмотрим решение, требующее участия аппаратного обеспечения. Многие компьютеры, особенно разработанные с расчетом на несколько
- 71. Команда TSL
- 72. Примитивы межпроцессного взаимодействия Оба решения - Петерсона и с использованием команды TSL - корректны, но они
- 73. Примитивы межпроцессного взаимодействия. Пример. Этот алгоритм не только бесцельно расходует время процессора, но, кроме этого, он
- 74. Примитивы межпроцессного взаимодействия Теперь рассмотрим некоторые примитивы межпроцессного взаимодействия, применяющиеся вместо циклов ожидания, в которых лишь
- 75. Семафоры В 1965 году Дейкстра (Е. W. Dijkstra) предложил использовать целую переменную для подсчета сигналов запуска,
- 76. Семафоры. Операции: down и up. Операция down сравнивает значение семафора с нулем. Если значение семафора больше
- 77. Мьютексы Иногда используется упрощенная версия семафора, называемая мьютексом (mutex, сокращение от mutual exclusion - взаимное исключение).
- 78. Мьютексы Мьютекс - переменная, которая может находиться в одном из двух состояний: блокированном или неблокированном. Для
- 79. Мониторы В 1974 году Хоар (Ноаге) и Бринч Хансен (Brinch Hansen) предложили примитив синхронизации более высокого
- 80. Передача сообщений Этот метод межпроцессного взаимодействия использует два примитива: send и receive, которые скорее являются системными
- 81. Барьеры Последний из рассмотренных нами механизмов синхронизации предназначался скорее для групп процессов, нежели для ситуаций с
- 82. Планирование
- 83. Поведение процесса Практически все процессы чередуют периоды вычислений с операциями ввода-вывода. Обычно процессор некоторое время работает
- 84. Когда планировать ? Ключевым вопросом планирования является выбор момента принятия решений. Оказывается, существует множество ситуаций, в
- 85. Когда планировать ? (2) Алгоритмы планирования можно разделить на две категории согласно их поведению после прерываний.
- 86. Категории алгоритмов планирования В различных средах требуются различные алгоритмы планирования. Это связано с тем, что различные
- 87. Категории алгоритмов планирования В системах пакетной обработки нет пользователей, сидящих за терминалами и ожидающих ответа. В
- 88. Категории алгоритмов планирования В интерактивных системах необходимы алгоритмы планирования с переключениями, чтобы предотвратить захват процессора одним
- 89. Категории алгоритмов планирования В системах с ограничениями реального времени приоритетность, как это ни странно, не всегда
- 90. Задачи алгоритмов планирования Все системы Равнодоступность — предоставление каждому процессу справедливой доли времени центрального процессора. Принуждение
- 91. Планирование в системах пакетной обработки заданий «Первым пришел – первым ушел»
- 92. «Первым пришел – первым ушел» Алгоритм без переключений «первым пришел - первым обслужен» является, пожалуй, самым
- 93. «Кратчайшая задача - первая» Рассмотрим еще один алгоритм без переключений для систем пакетной обработки, предполагающий, что
- 94. Наименьшее оставшееся время выполнения Версией предыдущего алгоритма с переключениями является алгоритм наименьшего оставшегося времени выполнения. В
- 95. Трехуровневое планирование Системы пакетной обработки позволяют реализовать трехуровневое планирование. По мере поступления в систему новые задачи
- 96. Трехуровневое планирование (2)
- 97. Планирование в интерактивных системах Циклическое планирование Приоритетное планирование Несколько очередей «Самый короткий процесс – следующий» Гарантированное
- 98. Циклическое планирование Одним из наиболее старых, простых, справедливых и часто используемых является алгоритм циклического планирования. Каждому
- 99. Приоритетное планирование Необходимость принимать во внимание подобные внешние факторы приводит к приоритетному планированию. Основная идея проста:
- 100. Приоритетное планирование (2)
- 101. Несколько очередей Один из первых приоритетных планировщиков был реализован в системе CTSS (compatible time-shared system -
- 102. «Самый короткий процесс – следующий» Поскольку алгоритм «Кратчайшая задача – первая» минимизирует среднее оборотное время в
- 103. Гарантированное планирование Принципиально другим подходом к планированию является предоставление пользователям реальных обещаний и затем их выполнение.
- 104. Лотерейное планирование Хотя идея обещаний пользователям и их выполнения хороша, но ее трудно реализовать. Для более
- 105. Справедливое планирование До сих пор мы предполагали, что каждый процесс управляется независимо от того, кто его
- 106. Планирование в системах реального времени Системы реального времени делятся на жесткие системы реального времени, что означает
- 107. Планирование в системах реального времени (2) Внешние события, на которые система должна реагировать, можно разделить на:
- 109. Скачать презентацию










































































































Періодичність тригонометричних функцій. Побудова графіків тригонометричних
Презентация на тему Классификация компьютеров по функциональным возможностям
Влияние плавания на осанку
Конструктор современного урока
Надлежащее качество управления бюджетным процессом (I Степень качества)
Brand Building Miracle
О распределенных фактографических системах
В ногу со временем! Компания SMART photographer
Барбитураты
online version
Государственная (итоговая) аттестация выпускников 9 классов по алгебре и русскому языку в новой форме.
Короткая дистанция (2)
Преступность. Что такое преступность?
В уездном городе
Требования к одежде обучающихся
Лк.6-37 22 Закон об осуждении Не судите да не судимы будете
РЯДЫ ДИНАМИКИ
Министерство образования и молодежной политики Чувашской Республики Республиканское государственное образовательное учрежден
Политическая жизнь современной России
Summer
Космонавтика России
Организация и проведение государственной (итоговой) аттестации выпускников 9 классов в 2009 году
Борьба с иноземными захватчиками
Мониторы
Речевая разминка
ПРОГРАММА«ТРИ ШАГА К УНИКАЛЬНОМУ СЕРВИСУ»GLOBAL SOLUTIONS Ltd.
Toyota Way to Lean leadership
Проект на тему: «Детский лагерь Саласпилс, кто увидел не забудет» Авторы проекта: Алехина Татьяна, Иванова Людмила, Дейнеко