Тутум чалуу менен үзгүлтүктүн ортосундагы айырма

Тутум чалуу менен үзгүлтүктүн ортосундагы айырма
Тутум чалуу менен үзгүлтүктүн ортосундагы айырма

Video: Тутум чалуу менен үзгүлтүктүн ортосундагы айырма

Video: Тутум чалуу менен үзгүлтүктүн ортосундагы айырма
Video: ТӨӨ МЕНЕН БОДО МАЛДЫ КУРМАНДЫККА ЧАЛУУ 2024, Ноябрь
Anonim

Система чалуу жана үзгүлтүккө учуратуу

Кадимки процессор көрсөтмөлөрдү бирден аткарат. Бирок процессор убактылуу токтоп, учурдагы инструкцияны кармап, башка программаны же код сегментин (башка жерде жашаган) аткарууга туура келген учурлар болушу мүмкүн. Муну аткаргандан кийин процессор кадимки аткарууга кайтып келип, токтогон жеринен улантат. Системалык чалуу жана үзгүлтүккө учуратуу ушундай учурлар болуп саналат. Системалык чалуу - бул системага орнотулган подпрограммага чакыруу. Үзгүлтүк – бул тышкы аппараттык окуялардан улам пайда болгон программаны башкаруунун үзгүлтүккө учурашы.

Тутум чалуу деген эмне?

Системалык чалуулар компьютерде иштеген программаларды операциялык система менен сүйлөшүү үчүн интерфейс менен камсыз кылат. Программа операциялык тутумдун ядросунан кызмат сурашы керек болгондо (анын уруксаты жок) ал тутумдук чакырууну колдонот. Колдонуучу деңгээлиндеги процесстер операциялык тутум менен түздөн-түз өз ара аракеттенген процесстер менен бирдей уруксаттарга ээ эмес. Мисалы, тышкы I/O түзмөгү менен байланышуу же башка процесстер менен иштешүү үчүн программа системалык чалууларды колдонушу керек.

Үзгүлтүк деген эмне?

Компьютер программасынын нормалдуу аткарылышы учурунда CPU убактылуу токтоп калышына алып келген окуялар болушу мүмкүн. Мындай окуялар үзгүлтүккө учуроо деп аталат. Үзгүлтүккө программалык же аппараттык каталар себеп болушу мүмкүн. Аппараттык үзгүлтүктөр (жөн гана) Үзгүлтүктөр деп аталат, ал эми программалык үзгүлтүктөр Exceptions же Тузак деп аталат. Үзгүлтүк (программалык камсыздоо же аппараттык камсыздоо) көтөрүлгөндөн кийин, башкаруу үзгүлтүккө учураган шарттарды чече ала турган ISR (Үзүлүү кызматынын тартиби) деп аталган атайын подпрограммага өткөрүлүп берилет.

Жогоруда айтылгандай, үзгүлтүккө учуроо термини адатта аппараттык үзгүлтүктөр үчүн сакталат. Алар тышкы аппараттык окуялардан улам келип чыккан программаны башкаруу үзгүлтүктөрү. Бул жерде CPU үчүн тышкы каражаттар. Аппараттык үзгүлтүктөр адатта таймер чиптери, перифериялык түзүлүштөр (клавиатура, чычкан ж.б.), киргизүү/чыгаруу порттору (сериялуу, параллелдүү ж.б.), диск дисктери, CMOS сааты, кеңейтүү карталары (үн картасы, видео) сыяктуу ар кандай булактардан келип чыгат. карта жана башкалар). Бул аппараттык үзгүлтүктөр аткарылуучу программага байланыштуу кандайдыр бир окуядан улам дээрлик эч качан пайда болбойт дегенди билдирет. Мисалы, колдонуучу клавиатурадагы баскычты басышы сыяктуу окуя же ички аппараттык таймердин таймеринин таймеринин мындай түрү үзгүлтүккө учурашы мүмкүн жана CPUга белгилүү бир түзүлүшкө бир аз көңүл буруу керек экенин билдире алат. Ушундай кырдаалда CPU эмне кылганын токтотот (б.а. учурдагы программаны тындырат), түзмөк талап кылган кызматты көрсөтөт жана кадимки программага кайтып келет.

Система чалуу менен үзгүлтүктүн ортосунда кандай айырма бар?

Системалык чалуу бул системага орнотулган подпрограммага чалуу, ал эми үзгүлтүккө учуратуу процессордун учурдагы аткарылышын убактылуу кармап турган окуя. Бирок негизги айырмачылыктардын бири системалык чалуулар синхрондуу, ал эми үзгүлтүктөр эмес. Бул тутум чалуулары белгиленген убакытта (көбүнчө программист тарабынан аныкталат) ишке ашат дегенди билдирет, бирок үзгүлтүктөр каалаган убакта күтүлбөгөн окуядан улам пайда болушу мүмкүн, мисалы, колдонуучу клавиатурадагы баскычты басышы. Демек, качан системалык чалуу болгон сайын процессор кайда кайтуу керек экенин гана эстеп калуусу керек, ал эми үзгүлтүккө учураганда процессор кайтып келе турган жерди да, системанын абалын да эстеп калышы керек. Системалык чалуудан айырмаланып, үзгүлтүктүн учурдагы программага эч кандай тиешеси жок.

Сунушталууда: