Реализация многонитевой обработки в WINDOWS
В операционной ситстеме Windows 95 понятию «нить» соответствует “поток,” и многонитевая обработка представляет собой многопоточную обработку. Подробнее рассмотрим, как выполняется многопоточная обработка и управление памятью в Windows 95.
Планировщик процессов Windows 95 отвечает за выделение системных ресурсов приложениям и другим процессам и за распределение времени.
В Windows 95 применяются кооперативная многозадачность (cooperative multitasking) и вытесняющая (preemptive multitasking) .
В Windows 3.1 применяется только кооперативная многозадачность. ОС требовала, чтобы приложение периодически проверяло очередь сообщений и передавало управление другим приложениям. Этого обычно не происходило, и программы захватывали все процессорное время.
Кооперативный режим применяется в Windows 95 исключительно из соображений совместимости с Win - 16
- приложениями.
В Win-32 используется вытесняющая многозадачность. ОС сама решает, у какой программы отобрать управление и какой передать. В Win-32 приложение может использовать многопоточность, что упрощает реализацию одновременного исполнения нескольких программ. Приложение - процесс. Процесс состоит, как минимум, из одного потока. Поток - часть кода программы, которую можно использовать одновременно с другими частями кода. В Win-32
можно инициировать несколько процессов, что позволяет улучшить рабочие характеристики приложений.
В Windows 95 каждое открытое окно - поток. И если выполняется копирование между двумя окнами папок,то оно выполняется потоком окна - приемника. При этом можно выполнять операции с другими окнами.
В текстовом процессоре для увеличения скорости обработки реализуется несколько потоков. Первый поток обрабатывает ввод с клавиатуры, другой - проверку орфографии, третий - фоновую печать и т. д.