В лекции рассматриваются понятие потока thread и многопоточное выполнение multi-threading
В лекции рассматриваются понятие потока thread и многопоточное выполнение multi-threading - Лекция, раздел Электроника, 8. Лекция: Потоки (Threads) И Многопоточное Выполнение Программ (Mult...
8. Лекция: Потоки (threads) и многопоточное выполнение программ (multi-threading)
В лекции рассматриваются понятие потока (thread) и многопоточное выполнение (multi-threading); модели многопоточности; пользовательские потоки и потоки ядра; потоки в "Эльбрусе", Solaris, Linux, POSIX, Windows 2000, Java.
Содержание
Введение
Однопоточные и многопоточные процессы
История многопоточности
Пользовательские потоки и потоки ядра
Проблемы многопоточности
Потоки POSIX (Pthreads)
Потоки и процессы в Solaris
Потоки в Windows 2000
Потоки в Linux
Потоки в Java
Ключевые термины
Краткие итоги
Набор для практики
Вопросы
Упражнения
Темы для курсовых работ, рефератов, эссе
Введение
Многопоточность (multi-threading) – одна из наиболее интересных и актуальных тем в данном курсе и, по-видимому, в области ИТ вообще, и, кроме того, одна из излюбленных тем автора. Актуальность данной темы особенно велика, в связи с широким распространением многоядерных процессоров. В лекции рассмотрены следующие вопросы:
Рис. 10.1. Однопоточный и многопоточный процессы.
Как видно из схемы, однопоточный процесс использует, как обычно, код, данные в основной памяти и файлы, с которыми он…
Концепция многопоточности начала складываться, по-видимому, с 1980-х гг. в системе UNIX и ее диалектах. Наиболее развита многопоточность была в… Далее, в середине 1990-х гг. была выпущена ОС Windows NT, в которую была также… Однако в разных операционных системах API для многопоточности существенно отличались. Поэтому многопоточные программы,…
Низкоуровневые потоки, в которые отображаются пользовательские потоки, называются потоками ядра (kernel threads).Они поддержаны и используются на… Существуют различные модели многопоточности– способы отображения… - Модель много / один (many-to-one)– отображение нескольких пользовательских потоков в один и тот же поток ядра.…
Семантика системных вызовов fork() и exec().Как уже отмечалось, в классической ОС UNIX системный вызов forkсоздает новый "тяжеловесный"… Прекращение потоков. Важной проблемой является проблема прекращения потоков:… Обработка сигналов. Сигналыв UNIX – низкоуровневый механизм обработки ошибочных ситуаций. Примеры сигналов: SIGSEGV…
Рис. 10.5. Потоки в Solaris.
На рис. 10.6 изображена схема организации процесса в ОС Solaris.
Потоки в Windows 2000
Как уже отмечалось, в системе Windows реализована модель многопоточности "один / один". Каждый поток содержит:
идентификатор потока (thread id);
набор регистров
отдельные стеки для пользовательских и системных процедур;
область памяти для локальных данных потока (thread-local storage – TLS).
Потоки в Linux
В системе Linux потоки называются tasks (задачами),а не threads. Поток создается системным вызовом clone (). Данный системный вызов позволяет дочерней задаче использовать общее адресное пространство с родительской задачей (процессом).
Потоки в Java управляются JVM. Возможно создание групп потоков и иерархии таких групп.
Возможные состояния потоков в Java изображены на рис. 10.7. Подобно потокам в…
POSIX Pthreads – потоки, специфицированные стандартом POSIX и используемые в POSIX-приложениях.
Solaris threads – пользовательские потоки в ОС Solaris.
Thread – класс, представляющий поток, в языке Java.
Модель один / один– модель многопоточности, при которой каждый пользовательский потокотображается в один определенный поток ядра.
Мьютекс (mutex)– аналог семафоров, обеспечивающий взаимное исключение,… Облегченный процесс (lightweight process)– процесс, работающий в общем пространстве виртуальной памяти с…
Впервые понятие процесса, близкое современной концепции потока, было реализовано в системе "Эльбрус" в конце 1970-х гг. Многопоточность… Архитектура потоков – многоуровневая: потоки пользовательского уровня… Многопоточность ставит ряд интересных проблем: семантика системных вызовов fork и exec; прекращение потоков; обработка…
Понятие правоотношения. Понятие, виды
И эта значимость не случайна, она вытекает из самой сущности правового регулирования общественных отношений.Несмотря на то, что каждая отрасль… Право особый, официальный, государственный регулятор общественных отношений. В… Их участники наделяются правосубъектностью, юридическими правами и обязанностями. Эти отношения становятся…
Новости и инфо для студентов