Преимущества использования потоков
1. Упрощение программы в некоторых случаях, за счет использования общего адресного пространства.
2. Быстрота создания потока, по сравнению с процессом, примерно в 100 раз.
3. Повышение производительности самой программы, т.к. есть возможность одновременно выполнять вычисления на процессоре и операцию ввода/вывода. Пример: текстовый редактор с тремя потоками может одновременно взаимодействовать с пользователем, форматировать текст и записывать на диск резервную копию.
4.2.4Реализация потоков в пространстве пользователя, ядра и смешанное
А - потоки в пространстве пользователя
B - потоки в пространстве ядра
В случае А ядро о потоках ничего не знает. Каждому процессу необходима таблица потоков, аналогичная таблице процессов.
Преимущества случая А:
o Такую многопоточность можно реализовать на ядре не поддерживающим многопоточность
o Более быстрое переключение, создание и завершение потоков
o Процесс может иметь собственный алгоритм планирования.
Недостатки случая А:
o Отсутствие прерывания по таймеру внутри одного процесса
o При использовании блокирующего (процесс переводится в режим ожидания, например: чтение с клавиатуры, а данные не поступают) системного запроса все остальные потоки блокируются.
o Сложность реализации
Дата добавления: 2018-08-06; просмотров: 210; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!