Какво представляват системните прекъсвания?

Мейнфрейм компютър

Приоритетните прекъсвания позволяват на компютрите да изпълняват много програми едновременно.

Кредит на изображението: Jupiterimages/Photos.com/Getty Images

Въпреки че някои компютри, като този, който управлява вашата тостерна фурна, изпълняват една задача в даден момент, настолните компютри, смартфоните и мейнфреймовете имат няколко процеса, работещи едновременно. Компютърът управлява това чрез системни прекъсвания, механизъм, чрез който една програма временно получава приоритет пред други. Централният процесор позволява различни видове прекъсвания въз основа на предварително определена йерархия на задачите.

Множество програми

Модерен компютър, смартфон или сървър съхранява няколко програми в паметта, въпреки че процесорът работи само шепа във всеки даден момент; повечето са бездействащи. Програмите включват приложения като вашия текстов процесор, електронна таблица и имейл, помощни функции като монитори на паметта и спулери за печат, както и програмите, които управляват мрежовата карта на вашия компютър, клавиатурата и високоговорители. Когато важна програма се нуждае от обслужване, тя издава прекъсване на процесора, което спира друга текуща работа, за да се погрижи за неотложната задача. Процесорът обслужва прекъсването само ако то има приоритет пред други задачи.

Видео на деня

Хардуерни прекъсвания

Твърдите дискове, мрежовите карти, принтерите и други устройства издават хардуерни прекъсвания, за да привлекат вниманието на процесора. Например, програма изисква данни от твърдия диск; въпреки че тази задача отнема около 10 милисекунди, това е много време за процесора, който извършва друга работа по време на междинния период. Когато твърдият диск намери данните, той издава хардуерно прекъсване, като казва на процесора да спре временно това, което прави, и да достави данните на заявената програма.

Софтуерни прекъсвания

Програмите издават софтуерни прекъсвания за обработка на специални заявки през операционната система на компютъра. Например във вашия текстов процесор искате да поставите датата в заглавие на страница. Текстовият процесор издава софтуерно прекъсване, като изисква датата от Microsoft Windows. Текстовият процесор изчаква за кратко, докато Windows извлича датата от системния календар. Когато датата е готова, Windows връща контрола към текстообработващия процесор. Софтуерните прекъсвания имат относително нисък приоритет. ако, докато получава датата, процесорът получи заявка от твърдия диск, процесорът първо обслужва прекъсването на твърдия диск, след което завършва извличането на датата.

CPU капани

Операционната система запазва няколко прекъсвания с много висок приоритет за спешни случаи. Например данните на програмата се повреждат, което води до срив. Операционната система издава CPU trap, който спира програмата и показва предупредително съобщение на екрана, което ви уведомява какво се е случило. В по-екстремни случаи самата операционна система развива сериозен проблем. Той издава друг CPU trap, който показва диагностично съобщение и спира цялата обработка.