Техническая реализация многозадачности

Модератор: Модераторы разделов

Аватара пользователя
Victor Gr.
Сообщения: 98

Техническая реализация многозадачности

Сообщение Victor Gr. »

В случае однозадачной ОС программа монопольно владеет всеми ресурсами ПК: микропроцессором, кэшами двух уровней, оперативной памятью.
В этом случае, скорость программы прямо пропорциональна качеству алгоритма и кода, а также производительности всех узлов ПК.

В условиях многозадачной ОС, программа уже не владеет ПК все время своего выполнения, а вынуждена делить его с ПО, работающим одновременно с ней.

Известно, что в еденицу времени один процессор не может выполнять две задачи одновременно, значит иллюзию многозадачности можно создать только быстро-быстро переключаясь между задачами.

По моим представлениям, программа, выполняющаяся в однозадачной среде, выйграет по скорости аналогичную в многозадачной среде, при прочих равных. По крайней мере не будет потерь на переключение задач.

Интересует меня именно техническая реализация этих переключений. Что делает ОС во время переключения между процессами? Что происходит с кэшем, памятью... И сколько времени на это уходит?
Спасибо сказали:
Аватара пользователя
Kuzja
Сообщения: 675
Статус: розовая хрюшка

Re: Техническая реализация многозадачности

Сообщение Kuzja »

Victor Gr.
ответы на такие вопросы ищутся в умных книжках, а не на форумах...
/Ubuntu-Dapper6/Xorg7.0/GNOME-2.14.1/
Спасибо сказали:
Phantom
Сообщения: 24

Re: Техническая реализация многозадачности

Сообщение Phantom »

Тем более, что сам вопрос некорректно поставлен.
В связи с ненадобностью аккаунта и невозможностью его удалить предоставляю его в public domain
login: wwk
passwd: gtyudby
Спасибо сказали:
Topper
Бывший модератор
Сообщения: 2088
Статус: Насильник бабушек-педофилок
ОС: Windows 10

Re: Техническая реализация многозадачности

Сообщение Topper »

(Kuzja @ Dec 4 2005, в 00:14) писал(а):ответы на такие вопросы ищутся в умных книжках, а не на форумах...

например, в книге "Современные ОС" Энди Таненбаума. шикарно все описано.
Хрю.
Спасибо сказали:
Аватара пользователя
slasher
Сообщения: 92
ОС: Arch

Re: Техническая реализация многозадачности

Сообщение slasher »

Если в кратце, то нужно сохранить и загрузить регистры и карты памяти (при постраничной подкачке), обновить таблицы и списки, сохранить и перезагрузить кэш и т. п. А производительность зависит от выбранного алгоритма планирования и, соответственно, от размера кванта.
А вообще, правильно Topper говорит, читайте "Современные операционные системы" Э. Таненбаума.
P. S. Таненбаума зовут Эндрю
Today would be a good day to DIE.
Спасибо сказали:
Аватара пользователя
Victor Gr.
Сообщения: 98

Re: Техническая реализация многозадачности

Сообщение Victor Gr. »

ОК! Спасибо за наводку! Именно это и интересовало!

Буду читать эту книгу...
Спасибо сказали: