Чому перемикання контексту погано для продуктивності комп'ютера?
Перемикання контексту, яке відбувається, коли процес зупиняється процесором і інший процес починає працювати, може впливати на продуктивність комп'ютерних систем з декількох причин. Акт зміни контексту сам по собі не вимагає багато часу. Справжній хит продуктивності виникає через те, що різні процеси мають різні адресні простори віртуальної пам'яті, тому всі кеші в системі повинні бути недійсними і змити. Оскільки існує така величезна різниця в тому, як швидко CPU може працювати в порівнянні з тим, як швидко інструкції і дані можуть бути отримані з основної пам'яті, ці речі кешуються поруч з CPU в бортових кешах. Навіть покажчик для перетворення віртуальних адрес на фізичні адреси кешується, щоб доступ до пам'яті був швидшим. Коли новий процес завантажується процесором з іншим адресним простором і переносом від віртуальної до фізичної адреси, всі дані в кешах є недійсними і повинні бути змиті. Це залишає CPU з порожніми кешами, які повинні бути відновлені з нуля для нового процесу, а це означає, що буде велике уповільнення в отриманні інструкцій і даних, оскільки вони тепер будуть надходити з основної пам'яті, яка набагато повільніше, ніж кеш CPU.