Презентация по "Операционным системам" на тему "Треды"

  • Презентации учебные
  • pptx
  • 05.06.2017
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Презентация по дисциплине "Операционные системы" для студентов третьего курса специальности "Компьютерные сети" Презентация на тему "Треды (Потоки)". В презентации описывает процессы и треды с точки зрения операционной системы. На примерах и схемах объясняется общий принцип многопоточности процессов. Даются определения ядра и микроядра ОС.Презентация по дисциплине "Операционные системы" для студентов третьего курса специальности "Компьютерные сети" по теме "Треды (Потоки)"
Иконка файла материала 40 Треды(потоки).pptx
Треды Презентация № 40
Процесс с точки зрения ОС • Владение процесса • Планирование/Исполнение
• Theard(поток, тред) – элемент выполнения процесса • Task(задача) – элемент владения
Тред зрения ОС (поток выполнения) наименьшая единица обработки с точки
Многопоточность • Способность платформы или приложения запускать несколько параллельных потоков (тредов) в рамках процесса
Потоки в процессе • Состояние (state) • Если не запущен – контекст • Стек выполнения • Локальные данные • Доступ к ресурсам процесса
Отличия от процессов • Поток зависим от его процесса и является его частью • Потоки используют одно адресное пространство, а процессы разные • Переключение между потоками происходит быстрее чем переключение между процессами
threa d ol contr block user stack threa d ol contr block user stack kerne stack l kerne stack l threa d ol contr block user stack kerne stack l proce contr ss ol block user addre ss space proce contr ss ol block user addre ss space user stack kerne stack l processcontrolblockprocesscontrolblockthreadcontrolblockthreadcontrolblockthreadcontrolblock
Зачем? • Создать новый трейд быстрее чем создавать процесс • Уничтожить – быстрее … • Переключиться между тредами – • Треды могут общаться друг с быстрее… другом
• Решение ОС по поводу процесса влияет на все потоки этого процесса – Приостановка процесса приводит к приостановке всех потоков – Завершение процесса приводи к завершению всех процессов • Потоки имеют состояния и могут синхронизироваться с другими потоками (аналогично процессам)
Процесс с одним потоком запрос запрос сервер сервер
Процесс с двумя потоком запрос запрос сервер запрос сервер
На каком уровне «думать» о потоках ? • На уровне ядра • На уровне пользователя
На уровне ядра user space kernel space процесс
• ОС знает о потоках и может
• Параллелизация - распределение задач на несколько процессоров (на несколько модулей)
Категории компьютерных систем • SISD – одна инструкция с одним блоком данных • SIMD –одна инструкция для каждого блока данных • MISD – несколько инструкций один блок данных • MIMD - каждый процессор обрабатывает свой блок данных
• Распределенная память – сеть, каждый компьютер изолирован, передача памяти одного компьютера другому очень трудоемкая (долго по времени) • Общая память – все процессоры имеют доступ к общей паями. Тратиться время на синхронизацию работы нескольких процессоров
Симметричная мультипроцессорность (Symmetric multiprocessing) • Ядро может запускать процессы на любом процессоре • Части ядра могут работать параллельно на нескольких процессорах
Микроядро • Минимальная реализация функций ядра ОС – Насколько минимальна? – Что нужно включать в ядро?
Входят ли драйверы в микроядро?
Схемы конфигураций ядра ОС ru.wikipedia.org/wiki/Гибридное_ядро