Перемикання контексту – це процес зміни середовища, в якому відбувається активність. В інформаційних технологіях перемикання контексту може відбуватись в багатозадачних системах. Перемикання контексту процесу, це перемикання виконання від однієї програми до іншої, при тому не вимикаючи інші задачі, а також перемикання контексту між різними потоками в рамках виконання однієї програми (процесу).
Перемикання контексту дозволяє реалізовувати одночасне виконання процесів за допомогою одного центрального процесора, це важлива особливість багатозадачної операційної системи, але під час процесу перемикання контексту відбувається збереження середовища, стану поточного об'єкту (потоку, процесу), та завантаження нового, на це витрачається ресурси процесора. Часте перемикання контексту призводить до надмірної трати ресурсів, що приводить до уповільнення продуктивності.
З точки зору процесора, який є безпосередньо виконавцем перемикання контексту, існують окремі стани, регістри та оптимізації для реалізації перемикання контексту.
Накладні витрати та оптимізація
Перемикання контексту потребує значних обчислювальних зусиль. Окрім користувацьких застосунків, воно також використовується для потреб операційної системи, обробки даних від внутрішніх та зовнішніх пристроїв, мережі, а також перехід між режимом ядра та користувача. Значна частина розробки операційних систем та процесорів спрямована на оптимізацію цього процесу.
Під час перемикання з одного процесу на інший виникає невелика затримка на виконання адміністративних операцій, таких як збереження та завантаження регістрів та адресних просторів, оновлення різних таблиць і списків. Точні дії під час перемикання контексту залежать від архітектури процесора, операційної системи та кількості ресурсів, необхідних для відтворення стану.
Зменшити витрати на перемикання контексту можна декількома методами: зменшити частоту та ймовірність потреби в перемиканні контексту та оптимізування самого процесу перемикання, в тому числі апаратні оптимізації для швидкого збереження та відновлення регістрів та адресних просторів.
Зменшенню вірогідності суттєво допомагає збільшення обчислювальних ядер (потоків) в процесорах, а також оптимізацією займається планувальник багатозадачності операційної системи.
Для оптимізації процесу використовуються більш легковажні потоки в рамках спільного процесу. Вони мають деякі однакові структури спільного процесу, тому перемикання контексту між ними витрачає менше часу, такий підхід надає перевагу в тому, що в системах з декількома процесорними ядрами можливе використання одночасно більше ніж одного ядра одним процесом.
Див. також
Примітки
- Tanenbaum, Andrew S.; Bos, Herbert (20 березня 2014). Modern Operating Systems (англ.) (вид. 4th). Pearson. ISBN .
Посилання
- Context Switching at OSDev.org
- by The Linux Information Project (LINFO)
- Context Switches from the Microsoft Developer Network (MSDN)
- General Architecture and Design -Interrupt Handling at FreeBSD.org
- OS Context Switching - Computerphile
Це незавершена стаття про операційні системи. Ви можете проєкту, виправивши або дописавши її. |
Ця стаття потребує додаткових для поліпшення її . (8 квітня 2024) |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Peremikannya kontekstu ce proces zmini seredovisha v yakomu vidbuvayetsya aktivnist V informacijnih tehnologiyah peremikannya kontekstu mozhe vidbuvatis v bagatozadachnih sistemah Peremikannya kontekstu procesu ce peremikannya vikonannya vid odniyeyi programi do inshoyi pri tomu ne vimikayuchi inshi zadachi a takozh peremikannya kontekstu mizh riznimi potokami v ramkah vikonannya odniyeyi programi procesu Peremikannya kontekstu dozvolyaye realizovuvati odnochasne vikonannya procesiv za dopomogoyu odnogo centralnogo procesora ce vazhliva osoblivist bagatozadachnoyi operacijnoyi sistemi ale pid chas procesu peremikannya kontekstu vidbuvayetsya zberezhennya seredovisha stanu potochnogo ob yektu potoku procesu ta zavantazhennya novogo na ce vitrachayetsya resursi procesora Chaste peremikannya kontekstu prizvodit do nadmirnoyi trati resursiv sho privodit do upovilnennya produktivnosti Z tochki zoru procesora yakij ye bezposeredno vikonavcem peremikannya kontekstu isnuyut okremi stani registri ta optimizaciyi dlya realizaciyi peremikannya kontekstu Nakladni vitrati ta optimizaciyaPeremikannya kontekstu potrebuye znachnih obchislyuvalnih zusil Okrim koristuvackih zastosunkiv vono takozh vikoristovuyetsya dlya potreb operacijnoyi sistemi obrobki danih vid vnutrishnih ta zovnishnih pristroyiv merezhi a takozh perehid mizh rezhimom yadra ta koristuvacha Znachna chastina rozrobki operacijnih sistem ta procesoriv spryamovana na optimizaciyu cogo procesu Pid chas peremikannya z odnogo procesu na inshij vinikaye nevelika zatrimka na vikonannya administrativnih operacij takih yak zberezhennya ta zavantazhennya registriv ta adresnih prostoriv onovlennya riznih tablic i spiskiv Tochni diyi pid chas peremikannya kontekstu zalezhat vid arhitekturi procesora operacijnoyi sistemi ta kilkosti resursiv neobhidnih dlya vidtvorennya stanu Zmenshiti vitrati na peremikannya kontekstu mozhna dekilkoma metodami zmenshiti chastotu ta jmovirnist potrebi v peremikanni kontekstu ta optimizuvannya samogo procesu peremikannya v tomu chisli aparatni optimizaciyi dlya shvidkogo zberezhennya ta vidnovlennya registriv ta adresnih prostoriv Zmenshennyu virogidnosti suttyevo dopomagaye zbilshennya obchislyuvalnih yader potokiv v procesorah a takozh optimizaciyeyu zajmayetsya planuvalnik bagatozadachnosti operacijnoyi sistemi Dlya optimizaciyi procesu vikoristovuyutsya bilsh legkovazhni potoki v ramkah spilnogo procesu Voni mayut deyaki odnakovi strukturi spilnogo procesu tomu peremikannya kontekstu mizh nimi vitrachaye menshe chasu takij pidhid nadaye perevagu v tomu sho v sistemah z dekilkoma procesornimi yadrami mozhlive vikoristannya odnochasno bilshe nizh odnogo yadra odnim procesom Div takozhBagatozadachnist Planuvalnik operacijnoyi sistemiPrimitkiTanenbaum Andrew S Bos Herbert 20 bereznya 2014 Modern Operating Systems angl vid 4th Pearson ISBN 978 0133591620 PosilannyaContext Switching at OSDev org by The Linux Information Project LINFO Context Switches from the Microsoft Developer Network MSDN General Architecture and Design Interrupt Handling at FreeBSD org OS Context Switching Computerphile Ce nezavershena stattya pro operacijni sistemi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno 8 kvitnya 2024