Үй / терезелерге шолу / Бір irq ішінде екі құрылғы не істеу керек. Аппараттық үзілістер. Үзіліс контроллері. Арнайы утилитамен жүктерді бақылау

Бір irq ішінде екі құрылғы не істеу керек. Аппараттық үзілістер. Үзіліс контроллері. Арнайы утилитамен жүктерді бақылау

Компьютердің, әсіресе үйдегі компьютердің, ешқашан жаңартусыз немесе жаңа құрылғыларды қоспай-ақ өмір бойы өмір сүретіні сирек. Көптеген жағдайларда, әрине, ең қарапайым ережелерді сақтай отырып, мұндай операция ауыртпалықсыз, ерекше проблемаларды тудырмайды. Бірақ шамамен әрбір оныншы (тіпті жиырмасыншы) компьютер жұмыс істемейтін күйге келтіріледі: ол жиі қатып қалады, кез келген функцияны орындаудан бас тартады немесе тіпті бәріміз жақсы көретін компьютерге түсіп кетеді. көк экранөлім. Әдетте, мұндай проблемалардың ең ықтимал себебі аппараттық ресурстарды ортақ пайдаланбаған аппараттық қақтығыстар (жаңа және ескі) болып табылады. Жарайды, егер сіздің біліктілігіңіз туындаған мәселелерді шешуге мүмкіндік берсе немесе жақын жерде сізге көмектесетін біреу бар ма, бірақ ондай ештеңе болмаса? Дегенмен, бұл құдайлар емес, сіз білетіндей, кәстрөлдер өртеніп кетті, отырайық, ойланайық - сіз қарап шығыңыз және бұзыңыз, өйткені бәрі соншалықты қиын емес, дегенмен ең әртүрлі жабдықтардың үйлесімділігі мәселесі, оның пайда болғанынан бері. 80-жылдардың ортасында әлі де азайған жоқ. Ұсынылған мақала пайдаланушыға жабдыққа қажетті аппараттық ресурстардың бір түрімен және көбінесе қайшылықтардың барлық түрлерінің негізгі себебімен - аппараттық үзілістермен (IRQ) күресуге көмектеседі.

Жүйенің аппараттық ресурстары

Компоненттер жұмыс істеу үшін әртүрлі аппараттық ресурстардың үш негізгі түрін қажет етуі мүмкін. Әрбір дерлік құрылғы бір немесе бірнеше енгізу/шығару порттарын пайдаланады. AT бұл жағдайбұл сериялық немесе параллель порт емес, жай ғана арнайы мекенжай, жедел жадтағы мекенжай сияқты нәрсе. Бұл порттар жұмыс істейді арнайы топтарорталық процессор, оның көмегімен кез келген ақпарат портқа жазылады немесе одан оқылады. Көбінесе процессор мен құрылғы арасындағы ақпарат алмасу тек порттар арқылы жүреді, ал кейбір құрылғылар ондаған немесе одан да көп порт адрестерін қабылдайды, олардың әрқайсысы белгілі бір функцияны орындауға қызмет етеді.

Direct Memory Access (DMA) арналары әлдеқайда сирек пайдаланылады. Бұл әрекеттесу түрі үлкен деректер блоктарымен алмасатын құрылғыларға арналған Жедел Жадтау Құрылғысы, Мысалға, диск жетектерінемесе принтерлер. Бүкіл алмасу орталық процессорды айналып өтеді, ол тек алмасу операциясын бастайды және басқа жұмыстарды орындауға дереу кіріседі. Бұл тәсіл бүкіл жүйенің өнімділігін айтарлықтай арттыра алады.

Ал ресурстың үшінші түрі – жүйенің сыртқы оқиғаларға әрекет етуінің негізгі механизмі болып табылатын аппараттық үзілістер. Аппараттық үзілістер, әдетте IRQ (үзу сұраулары) деп аталады, бұл құрылғы контроллері сұрауды өңдеу үшін процессорды хабардар ету үшін пайдаланатын физикалық сигналдар. Әдетте, үзілістерді өңдеу схемасы келесідей болуы мүмкін:

  • процессор үзіліс сигналын және оның нөмірін қабылдайды;
  • арнайы кестені пайдаланып, берілген нөмірмен үзіліспен жұмыс істеуге жауапты программаның адресі – үзу өңдеушісі табылады;
  • процессор ағымдағы тапсырманың орындалуын тоқтатады, аралық нәтижелерді сақтайды және үзу өңдеушісінің орындалуына ауысады;
  • процессор құрылғыға кіріп, үзіліс себебін тексереді;
  • сұралған әрекеттер іске қосылады - инициализация, құрылғы конфигурациясы, деректер алмасу және т.б.;
  • барлық қажетті операциялар аяқталғаннан кейін процессор үзілген тапсырмаға оралады.

Орындаушы қолданбалы бағдарлама арқылы іске қосылған бағдарламалық үзілістерден айырмашылығы, аппараттық үзілістер ең күтпеген уақытта орын алуы мүмкін, сонымен қатар бірнеше үзілістер бір уақытта орын алуы мүмкін. Жүйе бірінші кезекте қандай үзіліспен қызмет көрсету туралы «тым көп ойланбауы» үшін арнайы басымдық схемасы бар. Әрбір үзіліске өзінің бірегей басымдығы тағайындалады. Егер бірнеше үзілістер бір уақытта келсе, онда жүйе басқа маңызды емес үзілістерді өңдеуді біраз уақытқа кейінге қалдыра отырып, ең жоғары басымдыққа артықшылық береді.

Үзіліс бөлу

Стандартты компьютерде үзілістер әдетте қалай таратылатынын қарастырыңыз. Кейбір нөмірлер белгілі бір құрылғыларға қатаң байланысты, кейбіреулері босатылып, сіздің қажеттіліктеріңіз үшін пайдаланылуы мүмкін. Тәртіппен бастайық:

  • IRQ 0- жүйелік таймерді үзу. Секундына 18,2 рет жасалды. Бірінші IBM ДК жасалғаннан бері осы сипатта қолданылған (бұл нөмір басқа мақсаттарда қолжетімді емес);
  • IRQ 1- пернетақтаның үзілуі. Пернені басқан сайын пернетақта контроллері арқылы жасалады (нөмір басқа мақсаттарда қолжетімді емес);
  • IRQ2тек 8 үзу желісін пайдаланатын XT класындағы компьютерлерде жүйені одан әрі кеңейту үшін сақталған және AT класындағы компьютерлерден бастап екінші контроллерді қосу үшін пайдаланылған. Бүгінгі күні IRQ 2 жүйемен ескі бағдарламалық құралмен үйлесімділік үшін пайдаланылады, нөмір басқа мақсаттарда қол жетімді емес;
  • IRQ 3- COM 2 асинхронды портының үзілуі. Дәл осындай үзуді COM 4 порты арқылы жұмыс істейтін құрылғылар да пайдаланады. Қажет болса, оларды өшіруге болады, бірақ бәрібір басқа ешкім IRQ 3 тағайындай алмайды;
  • IRQ4алдыңғыға ұқсас, бұл үзіліс COM 1 / COM 3 порттарын алатын құрылғыларда қолданылады;
  • IRQ 5бастапқыда LPT2 екінші параллель портымен пайдалануға арналған, бірақ кейін екінші параллель порттан бас тартқанда, IRQ 5 бос болды. Кейінірек оны ISA дыбыс карталарының көпшілігі белсенді түрде қолданды. заманауи PCI дыбыс карталары бұл үзуді тек SB Pro қолдайтын ескі ойындармен үйлесімділік үшін пайдаланады. IRQ 5 басқа мақсаттарда пайдаланылуы және PCI ұясына байланыстырылуы мүмкін;
  • IRQ6, бірінші ДК-ден бастап, иілгіш контроллермен қолданылады (нөмір басқа пайдалану үшін қол жетімді емес);
  • IRQ7- әдепкі бойынша, LPT 1 бірінші параллель портының үзілуі. Егер порт ажыратылған болса (принтер қол жетімді болмаса немесе USB үшін жасалған болса), оны пайдалануға болады. әртүрлі құрылғылар. IRQ 7 PCI ұясына байланыстыруға болады;
  • IRQ8- нақты уақыттағы сағаттық үзіліс, алғаш рет IBM AT жүйесінде енгізілген. Басқа пайдалану мүмкін емес;
  • IRQ 9және IRQ 10 тегін;
  • IRQ 11әдетте USB шинасы үшін сақталған, бірақ оны басқа мақсаттарда пайдалануға болады (ол үшін BIOS жүйесінде USB қолдауын өшіріңіз);
  • IRQ 12 PS/2 тінтуірі үшін пайдаланылады, бірақ басқа мақсаттарда пайдалануға болады (егер PS/2 тінтуірі қол жетімді болмаса немесе өшірілген болса);
  • IRQ 13бастапқыда арифметикалық сопроцессормен пайдаланылған және қазір ескі бағдарламалық құралмен үйлесімділік үшін сақталған (нөмір басқа мақсаттарда қолжетімді емес);
  • IRQ 14және IRQ 15тиісінше бастапқы және қосымша IDE контроллерлері қолданады.

Қалай жасау керектігін біліңіз осы сәтүзу сандары сіздің нақты жағдайда бірнеше жолмен таратылады. Компьютерді іске қосқан кезде, тіпті Windows жүктелмей тұрып, конфигурация мәтіні кестесі пайда болады. Осыдан кейін бірден оларға тағайындалған IRQ нөмірі көрсетілген PCI құрылғыларының тізімі.

Немесе, егер сіз әлі де Windows 9x жүйесін іске қосып жатсаңыз, басқару тақтасында Жүйе белгішесі бар, оны нұқыңыз және «Құрылғылар» қойындысын таңдаңыз. «Компьютер» құрылғысының сипаттарында сіз олардың IRQ-тері бар барлық құрылғылардың тізімін таба аласыз. Windows 2000/XP жүйесінде үзілістерді басқаруға тікелей қатынасымыз жоқ, сондықтан IRQ тізімін көру үшін стандартты ақпараттық қызметтік бағдарламаны (Басқару тақтасы/Әкімшілік құралдар/Компьютерді басқару/Жүйелік ақпарат/Аппараттық ресурстар) пайдалануымыз керек. Және, сайып келгенде, ешкім компьютердің аппараттық және бағдарламалық мүмкіндіктерін сынайтын утилиталарды пайдаланудан бас тартқан жоқ.


Олардың ішінде, сөзсіз, ең танымалы SANDRA болып табылады, ол пайдаланушыға үзілістерді қоса алғанда, жан-жақты ақпарат беруге қабілетті.

Құрылғы қайшылықтары

Тым көп егжей-тегжейге тоқталмай-ақ, конфликт дегеніміз бірнеше объектілердің бір уақытта бір жүйе ресурсына қол жеткізуге тырысатын жағдай деп айта аламыз. Үзіліс қақтығысы бірнеше құрылғылар сұрау сигналын жіберу үшін бір үзу сызығын пайдаланғанда және бұл сұрауларды дәрежелеу механизмі болмаған кезде орын алады, бұл сәтсіздікке немесе құрылғылардың бірінің жұмысын жай ғана тоқтатуға әкеледі. Қақтығыстарды қалай болдырмауға немесе жоюға болатыны туралы нақты түсінікке ие болу үшін IRQ басқару механизмін түсіну керек.

Өзіңіз білетіндей, дербес компьютерлер IBM PC XT арқылы басталды. Оның архитектурасы арнайы контроллермен басқарылатын аппараттық үзулердің тек сегіз жолын қамтамасыз етті. Олардың әрқайсысына үзу басымдылығы мен өңдеушісінің адресін (үзу векторы деп аталатын) анықтайтын өзінің бірегей нөмірі тағайындалды. Архитектураның келесі нұсқасы, IBM PC AT, бар желілерді тағы сегізмен толықтырды, олар бірінші контроллердің үзу сызықтарының біріне қосылған екінші контроллермен басқарылды. Өкінішке орай, бұл архитектура осы сәтте дамуын тоқтатты, сондықтан барлық заманауи компьютерлерде оларда қолданылатын қосымша құрылғылардың саны айтарлықтай өскеніне қарамастан, әлі де он алты үзу сызығы бар, олардың біреуі екінші контроллерді эмуляциялауға арналған.

Бастапқыда IBM PC AT компьютерінде тек бір ғана шина болды, ол арқылы құрылғылар процессормен және жадымен - ISA байланыса алады. Үзіліс желілерінің көпшілігі стандартты ISA құрылғыларына тағайындалды, сондықтан жаңа әмбебап PCI шинасы пайда болған кезде оның үлесінде INT A, INT B, INT C, INT D деп белгіленген төрт бос үзу қалғаны белгілі болды. сондықтан тек төрт PCI құрылғысы жүйеде тәуелсіз үзілістерді қабылдай алады. Бірақ сонымен бірге, IDE контроллері ерекше жағдайда екенін есте ұстаған жөн, бұл төрт құрылғының қатарына кірмейді, өйткені ол деректерді беру әдісі бойынша PCI құрылғысы болғанымен, оның IRQ 14 және IRQ үзулері оған қатаң түрде тағайындалған 15, ескі ISA құрылғылары сияқты. PCI шинасының вариациясы болып табылатын AGP шинасы үшін INT A «құрбандық» болып табылады, ал USB шинасы мыналардың бірі ретінде жүйе құрамдас бөліктері, INT D көмегімен PCI-ге қосылады, бұл «адал» PCI құрылғыларының санын екіге дейін азайтады. Қуатты басқару / Жүйені басқару қуатты басқару ішкі жүйесі туралы ұмытпауымыз керек, ол да өзінің үзілуін талап етеді. Осылайша, нақты өмірде үзілістерді пайдаланатын бірнеше PCI құрылғылары болса, оларды бірегей аппараттық IRQ-мен қамтамасыз ету мүмкін емес және мұндай жағдайларда Plug & Play технологиясына негізделген аппараттық-бағдарламалық әдіс қолданылады, ол теориялық тұрғыдан қайшылықтарды болдырмайды. Шынайы өмірде кез келген нәрсе болуы мүмкін болса да, қалған ISA құрылғылары үзіліс желілерін бөлісе алмайды, сондықтан олар қақтығыстардың негізгі арандатушылары болып табылады. Осылайша, қақтығыстарды шешу мәселесі ISA құрылғыларымен немесе «багги» драйверлерінде ақаулар туындаған жағдайда үзу сандарын дұрыс бөлуге дейін төмендейді.

Жүйеде IRQ нөмірлері физикалық жолдар арасында екі рет бөлінеді. Жүйенің BIOS жүйесі мұны бірінші рет жүйе жүктелгенде жасайды. Әрбір Plug & Play құрылғысына (және оған барлық PCI, заманауи ISA және аналық платаға біріктірілген барлық құрылғылар кіреді) қол жетімділердің ішінен бір нөмір тағайындалады. Егер сандар жеткіліксіз болса, бірнеше жол бір ортақ болады. PCI құрылғылары үшін бұл проблема емес - егер сізде қалыпты драйверлер және операциялық жүйенің қолдауы болса, бәрі жақсы жұмыс істеуі керек. Бірақ егер бірнеше ISA құрылғылары немесе PCI және ISA құрылғыларының кем емес «жарылғыш» қоспасы бірдей нөмірді алса, онда қақтығыс сөзсіз болады, содан кейін автоматты үзілістерді тарату процесіне араласуға тура келеді. Бұл жағдайда барлық пайдаланылмаған ISA құрылғыларын өшіру керек (ISA слоттары жоқ жүйелерде олар дегенмен бар: бұлар COM1, COM2 порттары және дискі). Сондай-ақ, IRQ7 үзуін босатып, LPT портының EPP және ECP режимдерін өшіруге болады. BIOS Setup бағдарламасындағы үзулерді өзгертуге арналған барлық әрекеттер «PCI / PNP конфигурациясы» бөлімінде орындалады. Бөлулерге әсер етудің екі жолы бар IRQ нөмірлері: Белгілі бір нөмірді блоктаңыз және жол нөмірін тікелей тағайындаңыз. Бірінші әдіс барлық BIOS үшін қол жетімді, «IRQ x пайдаланатын:» мәзір элементтері реттеледі (жаңа BIOS-да ол «IRQ ресурстары» ішкі мәзірінде жасырылған). ISA құрылғыларына ғана тағайындалуы керек үзілістер "Бұрынғы ISA" күйіне орнатылуы керек. Осылайша, PCI құрылғылары үшін нөмірлерді таратқанда, бұл үзілістер өткізілмейді. Кез келген ISA құрылғысы PCI құрылғысымен бірдей үзіліске тап болса, мұны істеу керек, сондықтан екеуі де жұмыс істемейді. Бұл жағдайда сіз осы IRQ нөмірін тауып, оны блоктауыңыз керек. PCI құрылғысы жаңа IRQ нөміріне ауысады, ал ISA құрылғысы өзгеріссіз қалады. IRQ нөмірлерін басқарудың екінші жолы - тікелей тағайындау, біріншіге қарағанда біршама күрделірек болса да, ол әлдеқайда тиімді. Өкінішке орай, барлық заманауи аналық платалар бұл операцияға мүмкіндік бермейді. Бірдей BIOS орнату ішкі мәзірінде «X ұяшығы IRQ пайдаланады» (басқа атаулар: «PIRQx IRQ пайдаланады», «PCI ұяшығы x басымдығы», «INT Pin x IRQ») сияқты элементтер болуы мүмкін. Бұл опция PCI және AGP шинасындағы әрбір құрылғы үшін үзілістерді жеке орнатуға мүмкіндік береді. Бұл жағдайда келесі ережелерді сақтау қажет:

  • Әрбір PCI ұясы төрт үзуге дейін белсендіруі мүмкін - INT A, INT B, INT C және INT D;
  • AGP ұясы екі үзуді іске қоса алады - INT A және INT B;
  • Әрбір слоттың INT A ретінде тағайындалуы қалыпты жағдай. Қалған үзулер PCI/AGP құрылғысы бірнеше үзуді қажет етсе немесе сұралған үзу бос емес болса, сақталады;
  • AGP ұясы мен PCI ұясы 1 бірдей үзулерді бөледі;
  • PCI 4 және 5 слоттары да бірдей үзулерді таратады;
  • USB PIRQ_4 пайдаланады.

Төменде PIRQ (бағдарламаланатын үзіліс сұрауы) және INT (үзу) арасындағы байланысты көрсететін кесте берілген:

Сигнал AGP ұясы
PCI ұясы 1
PCI ұясы 2 PCI ұясы 3 PCI ұясы 4
PCI ұясы 5
PIRQ_0 INT A INT D INT C INT B
PIRQ_1 INT B INT A INT D INT C
PIRQ_2 INT C INT B INT A INT D
PIRQ_3 INT D INT C INT B INT A

Әдетте, опцияны АВТО күйінде қалдыру керек. Бірақ, AGP немесе PCI шинасында құрылғы үшін жеке IRQ орнату қажет болса, ең алдымен құрылғы қай ұяшықта орнатылғанын анықтау керек. Содан кейін кестеге сілтеме жасай отырып, негізгі PIRQ орнатуға болады. Мысалы, егер Желілік карта 3-слотқа орнатылған болса, онда негізгі PIRQ PIRQ_2 болады, себебі барлық слоттар мүмкін болса INT A-ға тағайындалады.Осыдан кейін оған сәйкес PIRQ мәнін тағайындай отырып, қажетті IRQ таңдалады. BIOS әр ұяшық үшін INT A үшін PIRQ тағайындауға тырысатынын ескеріңіз. Сонымен, AGP және PCI 1 слоттары үшін негізгі PIRQ PIRQ_0, ал 2-ші PCI ұясы үшін негізгі PIRQ PIRQ_1 және т.б. Екінші рет үзу нөмірлері бөлінеді операциялық жүйе, дегенмен Windows 9x тек төтенше жағдайларда ғана BIOS орындайтын әрекеттерге кедергі жасай бастайды. Windows 98 жүйесінде IRQ тарату жүйесі стандартты құрылғы менеджері арқылы басқарылады. Жүйелік құрылғылар тізімінде PCI шинасын табу керек.


Оның қасиеттерінде арнайы қойынды бар. Егер бәрі дұрыс орнатылған болса, онда минипорт ("сәтті жүктелді") көрсетіледі және PCI шинасын басқару (Рульдік басқару) қосылады. Осылайша, Windows "98-де физикалық сызықтар арасында үзіліс сандарын бөлуді басқару құралдары бар. Бірақ BIOS көбінесе мұнымен жақсы жұмыс істейтіндіктен, бұл механизм қатыспайды. Бірақ кейде бұл жай ғана қажет. Ескірген ISA құрылғыларын пайдалану кезінде. Plug & Play технологиясын қолдамайтын болса, BIOS оны байқамай қалуы мүмкін, ол алған үзілісті PCI құрылғысына береді – бұл қайтадан қақтығыс.Оны шешу үшін Windows Device Manager «98» ішінде қажетті үзуді сақтау керек.

Артықшылыққа қоса, құрылғы үшін үзу нөмірін тікелей орнатуға болады. Ол үшін оның сипаттарындағы «Ресурстар» қойындысын тауып, автоматты реттеуді өшіріп, тағайындалған үзу нөмірін өзгертуге тырысу керек. Сақ болыңыз, мұндай операция әрқашан жұмыс істемейді және кейде мүлдем күтпеген нәтижелерге әкелуі мүмкін.

Бірақ Windows 2000 (сондай-ақ XP) туралы - бөлек әңгіме. Егер сізде өте заманауи компьютер болса, ол ACPI конфигурация интерфейсін қолдайды. Бұл жағдайда Windows 2000 әдетте BIOS әрекеттерін елемейді және барлық PCI құрылғыларын бір логикалық үзіліске «іліп қояды». Жалпы алғанда, бұл жақсы жұмыс істейді (ISA құрылғылары болмаған кезде), бірақ кейде проблемалар туындауы мүмкін. Үзу сандарын өзгерту мүмкіндігін алу үшін HAL ядросын өзгерту керек немесе BIOS жүйесінде ACPI өшірілген Windows 2000 жүйесін қайта орнату керек. Ядро келесідей ауыстырылады: құрылғы менеджерінде «ACPI бар компьютер / компьютер» таңдаңыз, содан кейін драйверді « стандартты компьютер" және қайта жүктеңіз. Бұл көмектеспесе, Windows 2000 жүйесін қайта орнатуға тура келеді.

Қорытынды кеңестер

Барлық құрылғы драйверлері бар жаңа операциялық жүйені орнатқаннан кейін және оның еш қиындықсыз жұмыс істейтініне көз жеткізгеннен кейін, бәрін жазып алған жөн. компьютер параметрлері, әсіресе әдепкі параметрлерге қандай да бір өзгерістер енгізілген болса. Мұндай ақпаратты кәдімгі қағазға жазу ең сенімді. Мұндай ақпарат конфигурацияланған жүйеге кез келген өзгерістер енгізу кезінде өте пайдалы болуы мүмкін, сондай-ақ жаңа жабдықты орнату кезінде барлық параметрлер «жылжыса» туындауы мүмкін мәселелерді шешуге көмектеседі (бұл кейде болады). Және, ең бастысы, есте сақтаңыз: туындайтын мәселелердің көпшілігі компьютер иесінің компьютерлік сауаттылығының төмен деңгейіне байланысты. Сондықтан, адам әрқашан өзін-өзі тәрбиелеуге ұмтылуы керек, сонда проблемалар аз болады, сонда да туындаған мәселелер шешілмейтін болып көрінбейді.

Конфликт – бірнеше нысандар бір уақытта олардың біреуіне ғана арналған ресурсқа қол жеткізуге тырысатын жағдай. Сұраныс сигналын жіберу үшін бірнеше құрылғылар бірдей үзу сызығын пайдаланған кезде үзіліс қақтығысы орын алады және бәсекелес сұрауларды өңдеу механизмі жоқ. Драйвер басқаруды қабылдаған кезде сұрауды жіберген басқа құрылғымен жұмыс істесе, ақаулық орын алады немесе құрылғылардың біреуі жай жұмыс істемейді.

Сұрақ туындайды: бірнеше құрылғы бір үзу сызығын пайдалана алады ма, әлде бұл мүмкін емес пе? Ақыр соңында, егер жүргізуші сұраудың нақты кімнен келгенін анықтай алса, ол басқалардың бәрін елемей, тек «өз» құрылғысының сигналдарына жауап береді. Бірақ бұл қандай да бір жолмен алдын ала келісілуі керек, әйтпесе қақтығыс сөзсіз.

Жергілікті PCI шинасы үзілістерді бөлісуді ескере отырып жасалған. Әрбір PCI құрылғысы басқа PCI құрылғыларымен бірдей үзу желісінде дұрыс жұмыс істеуі керек. Бұл келесідей орындалады: үзу сызығында сигналдың болуы фронтпен емес анықталады, яғни. кернеу деңгейінің өзгеруі, бірақ белгілі бір кернеудің болуы фактісі бойынша. Бірнеше құрылғы желідегі кернеуді бірден өзгерте алады, қызмет көрсету кезегіне айналады.

Осылайша, бірнеше PCI құрылғыларымен бірдей IRQ ортақ пайдалану, анықтамасы бойынша, қайшылық емес (сурет). Дегенмен, кейде проблемалар туындайды. Біріншіден, барлық PCI құрылғылары басқалармен бірдей үзу сызығында дұрыс жұмыс істемейді. Екіншіден, кейде драйверлерде сигнал көзін дұрыс анықтауға, басқа драйверлерге кедергі келтіретін қателер болады. Үшіншіден, барлық құрылғылар PCI шинасында жұмыс істемейді; мысалы, мысалы, COM / LPT порт контроллерлерін қамтитын ISA құрылғылары үзілістерді басқалармен бөлісе алмайды.

Күріш. Win2000 Device Manager IRQ картасы - IO PIC Intel 440BX чипсет

Күріш. Win2000 IRQ MAP - IO APIC - KT266a чипсеті арқылы

Нәтижесінде, компьютер жиі қатып қалса, кез келген функцияларды орындаудан бас тартады немесе тіпті «өлімнің көк экранына» түсіп кетеді.

Apic (кеңейтілген бағдарламаланатын үзіліс контроллері)

Жоғарыда көрсетілгендей, үзу сызығы компьютер үшін өте тапшы ресурс болып табылады. Дегенмен, компьютерлік индустрияның дамуымен компьютердегі әртүрлі сыртқы құрылғылардың саны үнемі өсіп келеді. Мысалы, біреуінде аналық плата 5-6 PCI ұясы, AGP ұясы, біріктірілген IDE контроллері, біріктірілген SCSI контроллері, біріктірілген 1/2 порт желі адаптері және т.б. болуы мүмкін. Және бұл құрылғылардың барлығына үзіліс қажет. 16 IRQ желісі бірте-бірте жеткіліксіз болды.

APIC 16 емес, 24 аппараттық үзілістерді пайдалануға мүмкіндік беретін үзу контроллері. 1982 жылдан бері өзгермеген 16 аппараттық үзілістердің шегі дербес компьютерде орнатуға кедергі келтірді. қосымша құрылғылар. 2001 жылдың соңында APIC бар алғашқы аналық платалар пайда болды.

Күріш. Көппроцессорлық ортадағы үзу жүйесі.

Алдыңғы сипаттамада бір процессорлы жүйелерге арналған PIC-ке сілтеме жасалды. Жүйеде екі немесе одан да көп процессорлар болса, бұл тәсіл енді орындалмайды және күрделірек PIC қажет.

Барлық заманауи x86 процессорларында жергілікті APIC (жергілікті APIC) бар. Әрбір жергілікті APIC-те 32-биттік регистрлер, ішкі сағат, жергілікті таймер және жергілікті APIC үзулері үшін сақталған екі қосымша IRQ желісі, LINT0 және LINT1 бар. Барлық жергілікті APIC сыртқы I/O APIC қосылған.

I/O APIC құрамында 24 IRQ жолының жиынтығы, 24 жолды үзілістерді қайта бағыттау кестесі, бағдарламаланатын регистрлер және APIC шинасында хабарламаларды жіберу және қабылдау үшін хабарлама блогы бар. 8259A IRQ түйреуіштерінен айырмашылығы, үзу басымдығы пин нөміріне байланысты емес.

Үзуді қайта бағыттау кестесіндегі әрбір жазба үзіліс векторын және оның басымдылығын, үзуді қай процессор өңдейтінін және сол процессорды қалай таңдайтынын көрсету үшін жеке бағдарламалануы мүмкін. Үзілістерді қайта бағыттау кестесіндегі ақпарат әрбір сыртқы сигналды APIC шинасы арқылы бір немесе бірнеше жергілікті APIC мекенжайларына жіберілген хабарламаға аудару үшін пайдаланылады.

Статикалық таралу

IRQ сигналы үзілістерді қайта бағыттау кестесінің сәйкес жазбасында тізімделген жергілікті APIC арқылы жеткізіледі. Үзіліс белгілі бір процессорға, бірнеше процессорларға немесе барлық процессорларға жеткізіледі.

Динамикалық бөлу

IRQ сигналы процессордың жергілікті APIC жүйесіне жеткізіледі, ол процесті ең төменгі басымдықпен іске қосады.

Әрбір жергілікті APIC ағымдағы процестің басымдылығын есептеу үшін пайдаланылатын бағдарламаланатын жұмыс басымдылығы тізіліміне ие. Intel бұл регистрді әрбір процесс қосқышында операциялық жүйе ядросы арқылы жаңартуды күтеді.

Үзілістерді мульти-APIC процессорлары бойынша таратудан басқа, жүйе процессорға процессор аралық үзілістерді жасауға мүмкіндік береді. Орталық процессор үзілісті басқа орталық процессорға жібергісі келгенде, ол үзу векторын және мақсатты жергілікті APIC идентификаторын өзінің жергілікті APIC үзу пәрмендер тізілімінде (ICR) сақтайды. Содан кейін хабар APIC шинасы арқылы мақсатты жергілікті APIC-ке жіберіледі, ол өзінің орталық процессорына сәйкес үзуді береді.

Қазіргі уақытта көптеген бірпроцессорлық жүйелер екі жолмен конфигурацияланатын енгізу/шығару APIC чипін қамтиды:

1. Орталық процессорға қосылған стандартты 8259A PIC ретінде. Жергілікті APIC өшірілген және LINT0 және LINT1 екі жолы INTR және NMI түйреуіштері ретінде конфигурацияланған.

2. Стандартты сыртқы енгізу/шығару APIC ретінде. Жергілікті APIC қосылған және барлық сыртқы үзулер I/O APIC арқылы қабылданады.

  • Алиева Елена Викторовна, студент
  • Уфа мемлекеттік авиациялық техникалық университеті
  • БАСҚАРУ КӨРСЕТГІШІ
  • БАСҚАРУШЫ
  • Аппараттық жабдықты үзу
  • ҮЗІЛУ

Үзіліс аппараттық құралдың немесе бағдарламаның жұмыс істеуінен туындаған кейбір жоспарланған немесе жоспарланбаған әрекеттерді орындау үшін есептеудің негізгі процесінің уақытша үзілуін білдіреді. Үзу механизміне аппараттық деңгейде қолдау көрсетіледі. Аппараттық үзілістер микропроцессордың жауап ретінде пайда болады физикалық сигналкейбір құрылғыдан (пернетақта, жүйелік сағат, пернетақта, қатты дискт.б.), бұл үзілістер пайда болу уақытында асинхронды, яғни. кездейсоқ уақытта пайда болады. Үзіліс контроллері перифериялық құрылғылардан орталық процессорға келіп түсетін қызмет сұрауларын өңдеуге және арбитрлеуге арналған. Үзілістер белгілі бір басымдыққа ие, ол үзу контроллеріне берілген уақытта бір құрылғыны екіншісіне басымдық беруге мүмкіндік береді. Қазіргі компьютерде үзілістерді тудыратын 16-ға дейін сыртқы және перифериялық құрылғылар бар.

  • Өндірістік кәсіпорын қоймасының жұмыс процесін автоматтандыру
  • Қоңыраулар-технологиялар, мүмкіндіктер, қолдану және тиімділік
  • Кәсіпорынның келісім-шарттарын қамтамасыз ету және жасау үшін заң бөлімінің ақпараттық жүйесінің үлгісін әзірлеу

Кіріспе

Үзіліс аппараттық құралдың немесе бағдарламаның жұмыс істеуінен туындаған кейбір жоспарланған немесе жоспарланбаған әрекеттерді орындау үшін есептеудің негізгі процесінің уақытша үзілуін білдіреді. Анау. бұл микропроцессорды басқа программаның орындалуына уақытша ауыстыратын, содан кейін үзілген бағдарламаға қайтатын процесс. Пернетақтадағы пернені басу арқылы біз пернені танитын, оның кодын пернетақта буферіне енгізетін, оны басқа бағдарлама оқитын бағдарламаға дереу шақыруды бастаймыз. Анау. біраз уақыт микропроцессор ағымдағы программаның орындалуын үзіп, үзу өңдеушісі деп аталатын үзу өңдеушісіне ауысады. Үзіліс өңдеушісі жұмысын аяқтағаннан кейін, үзілген бағдарлама үзілген жерінен бастап орындалуын жалғастырады. Үзуді өңдеуші программаның адресі үзу векторы кестесінен есептеледі.

Үзу механизміне аппараттық деңгейде қолдау көрсетіледі. Қайнар көзге байланысты үзілістер келесіге бөлінеді:

  • аппараттық құрал- микропроцессордың қандай да бір құрылғыдан (пернетақтадан, жүйелік сағаттан, пернетақтадан, қатты дискіден және т. кездейсоқ уақытта пайда болады;
  • бағдарламалық қамтамасыз ету- программадан (int) сәйкес команданың көмегімен жасанды түрде шақырылады, операциялық жүйенің кейбір әрекеттерін орындауға арналған, синхронды болады;
  • ерекше жағдайлар- микропроцессордың микропроцессордың ішінде қандай да бір бағдарлама командасын орындау кезінде пайда болған стандартты емес жағдайға реакциясы (нөлге бөлу, TF жалаушасында үзу (қадағалау)) .

Аппараттық үзіліс жүйесі

Үзу жүйесі – үзу механизмін жүзеге асыратын бағдарламалық және аппараттық құралдардың жиынтығы.

Үзіліс жүйесінің аппараттық құралдары мыналарды қамтиды:

  • микропроцессорлық шығыстар - оларда микропроцессорға қандай да бір сыртқы құрылғының «оған назар аударуды сұрайтынын» (INTR) немесе қандай да бір оқиғаны немесе апатты қатені (NMI) шұғыл өңдеу қажеттігін хабарлайтын сигналдар жасалады.
  • INTR - кіріс үзу сұрау сигналы үшін пин,
  • NMI - NMI кіріс пин
  • INTA - микропроцессордың үзу сигналын алуын растайтын шығыс сигналының шығысы (бұл сигнал 8259A контроллер микросхемасының аттас кірісіне беріледі);
  • бағдарламаланатын үзу контроллері 8259A (сегіз түрлі үзіліс сигналдарын түсіру үшін жасалған сыртқы құрылғылар; ол микросұлба түрінде жасалған; әдетте екі тізбектей жалғанған микросұлба пайдаланылады, сондықтан сыртқы үзілістердің ықтимал көздерінің саны 15 плюс бір маскирленбейтін үзіліске дейін; ол үзу векторының нөмірін жасайды және оның деректер шинасын шығарады);
  • сыртқы құрылғылар (таймер, пернетақта, магниттік дискілер және т.б.)

Үзіліс өңдеу

Үзіліс аппараттық құралда да, бағдарламалық құралда да орын алатын бірқатар оқиғаларды іске қосады. Суретте. 1 осы оқиғалардың типтік тізбегін көрсетеді.

Енгізу/шығару құрылғысы аяқталғаннан кейін келесілер орын алады:

  • Құрылғы процессорға үзу сигналын жібереді.
  • Үзіліске жауап бермес бұрын процессор ағымдағы нұсқауды орындауды аяқтауы керек (1-суретті қараңыз).
  • Процессор үзілістің бар-жоғын тексереді, оны анықтайды және үзіліс жіберген құрылғыға оны сәтті қабылдағаны туралы сигнал жібереді. Бұл сигнал құрылғыға үзу сигналын жоюға мүмкіндік береді.
Сурет 1. Бағдарлама уақытының диаграммасы: Баяу енгізу/шығару

Енді процессор басқаруды үзу өңдеушісіне беруге дайындалуы керек. Алдымен бәрін сақтау керек маңызды ақпаратАғымдағы бағдарламаның кідіртілген нүктесіне кейінірек оралуыңыз үшін. Минималды қажетті ақпарат программаның күй сөзі және программа есептегішінде болатын келесі орындалатын команданың адресі болып табылады. Бұл деректер жүйенің басқару стекіне жіберіледі.

Сурет 2. Қарапайым үзуді өңдеу

Әрі қарай, процессордың программалық есептегіші осы үзуді өңдеуге жауап беретін үзу өңдеушісі бағдарламасының кіріс адресімен жүктеледі. Компьютердің архитектурасына және операциялық жүйенің құрылғысына байланысты барлық үзулерді өңдеуге арналған бір бағдарлама болуы мүмкін немесе әрбір құрылғы мен үзілістің әрбір түрі үшін жеке өңдеуші болуы мүмкін. Егер үзілістерді өңдеуге арналған бірнеше бағдарлама болса, онда процессор қайсысын шақыру керектігін анықтауы керек. Бұл ақпарат бастапқы үзу сигналында болуы мүмкін; әйтпесе, қажетті ақпаратты алу үшін процессор үзілістің қайсысын жібергенін анықтау үшін барлық құрылғыларды кезекпен сұрауы керек.

Бағдарлама есептегішіне жаңа мән жүктелгеннен кейін процессор оны жадтан шығарып алуды жалғастыра отырып, келесі нұсқаулар цикліне көшеді. Нұсқау нөмірі бағдарлама есептегішінің мазмұнымен берілген орыннан алынғандықтан, басқару үзу тәртібіне өтеді. Бұл бағдарламаны орындау келесі операцияларды қамтиды.

Бағдарлама есептегішінің мазмұны мен үзілген бағдарламаның күй сөзі жүйе стекінде бұрыннан сақталған. Дегенмен, бұл орындалатын бағдарламаның күйіне қатысты барлық ақпарат емес. Мысалы, процессор регистрлерінің мазмұнын сақтау керек, себебі бұл регистрлер үзу өңдеушісіне қажет болуы мүмкін. Сондықтан бағдарламаның күйі туралы барлық ақпаратты сақтау қажет. Әдетте, үзу өңдеушісі барлық регистрлердің мазмұнын стекке итеру арқылы басталады. Сақталуы тиіс басқа ақпарат Процесс сипаттамасы және басқару 3 тарауда талқыланады. Суретте. N орнынан нұсқауды орындағаннан кейін пайдаланушы бағдарламасы үзілген қарапайым мысал көрсетілген. Барлық регистрлердің мазмұны, сондай-ақ келесі нұсқаудың адресі (N + 1), жалпы М сөздері стекке итеріледі. . Стек көрсеткіші стектің жаңа жоғарғы жағын көрсету үшін жаңартылады. Бағдарлама есептегіші де жаңартылып, үзіліс қызметінің басталуын көрсетеді.

Енді үзіліс өңдеушісі өз жұмысын бастай алады. Үзуді өңдеу процесі енгізу/шығару операцияларына немесе үзіліс тудырған басқа оқиғаларға қатысты күй ақпаратын тексеруді қамтиды. Бұған енгізу/шығару құрылғыларына қосымша нұсқауларды немесе хабарландыру хабарларын жіберу де кіруі мүмкін.

Үзілістерді өңдеу аяқталғаннан кейін бұрын сақталған мәндер стектен алынады, олар регистрлерге қайтадан енгізіледі, осылайша үзіліс алдында болған күйді қалпына келтіреді.

Соңғы қадам стектен бағдарлама күйінің сөзін және бағдарлама есептегішінің мазмұнын қалпына келтіру болып табылады. Нәтижесінде үзілген бағдарламаның келесі командасы орындалады.

Үзіліс бағдарламадан шақырылатын ішкі бағдарлама емес болғандықтан, үзілген бағдарламаның барлық күй ақпаратын сақтау толық қалпына келтіру үшін маңызды. Дегенмен, үзіліс пайдаланушы бағдарламасында кез келген уақытта және кез келген жерде орын алуы мүмкін. Бұл оқиғаны болжау мүмкін емес.

Үзіліс контроллері

Үзіліс контроллері перифериялық құрылғылардан орталық процессорға келіп түсетін қызмет сұрауларын өңдеуге және арбитрлеуге арналған. Аналогия бойынша, үзу контроллерінің функцияларын кейбір бастықтың хатшысымен салыстыруға болады. Хатшы келушілердің қайсысын бірінші кезекте бастыққа қабылдау керектігін, содан кейін қайсысын бастық берген басымдықтар мен келушінің мәртебесіне сүйене отырып шешуі керек. Сонымен, компьютерлік жүйеде бірнеше перифериялық құрылғылар үзу сигналын немесе үзу сұрауын жіберген болуы мүмкін. Компьютерлік әдебиеттерде бұл сигнал IRQ (үзу сұрауы) деп аталады.

Жоғарыда айтылғандай, үзілістер белгілі бір басымдыққа ие, бұл үзу контроллерлеріне белгілі бір уақытта басқа емес, бір құрылғыға артықшылық беруге мүмкіндік береді. Қазіргі компьютерде 16-ға дейін сыртқы және перифериялық құрылғыларүзілістерді тудыратын. Мұнда құрылғылар:
–IRQ 0, жүйелік таймер; –IRQ 1, пернетақта; –IRQ 2, каскадты құрылғыларды сұрау үшін қолданылады; –IRQ 8, нақты уақыт сағаты; –IRQ 9, сақталған; –IRQ 10, сақталған; –IRQ 11, сақталған; –IRQ 12, ps/2 – тінтуір; –IRQ 13, сопроцессор; –IRQ 14, қатты диск контроллері; –IRQ 15, сақталған; –IRQ 3, COM2, COM4 порттары; –IRQ 4, COM1,COM3 порттары; –IRQ 5, LPT2 порты; –IRQ 6, жетек контроллері; –IRQ 7, LPT1 порты, принтер.

Мұнда сигналдар басымдықтың кему ретімен тізімделген. IRQ 2-ден кейін IRQ 8 келетінін көруге болады.Мәселен, бір уақытта үзу контроллері екі микросұлбадан тұратын, біреуі екіншісіне қосылған. Бұл екінші микросұлба IRQ 2 желісіне қосылып, каскадты құрайды. Ол IRQ8-IRQ 15 сызықтарына қызмет етеді. Содан кейін бірінші микросұлбаның сызықтары шығады.

Үзу контроллерінің жұмысы

Контроллердің жұмысын үзу Intel 8259A чиптері негізінде қарастырылады, олар қазір 386 серияға дейінгі процессорлары бар өте ескі компьютерлерде қолданылады. Бұл компьютерлерде әдетте каскадты, яғни бір-біріне қосылған 2 8259A чиптері болды. Үзуді сұрау сызығы арқылы тікелей процессорға қосылған микросұлбалардың бірі мастер немесе мастер болып табылады. Ұқсас тұжырымдар арқылы қожайынға қосылған қалғандары құлдар деп аталады.


Сурет 3. Үзу контроллерлерінің қосылу схемасы және олардың орталық процессормен әрекеттесуі

3-суретте үзу контроллерінің қосылу схемасы және олардың орталық процессормен әрекеттесуі көрсетілген. Перифериялық құрылғылардан немесе қосалқы контроллерлерден үзу сигналдары негізгі контроллердің IR0–IR7 кірістеріне беріледі. Бас контроллердің ішкі логикасы кіріс сұрауларды басымдылық тұрғысынан өңдейді. Құрылғы сұранысының басымдылығы жеткілікті болса, контроллердің INT шығысында сигнал генерацияланады, ол процессордың INTR кірісіне беріледі. Әйтпесе, сұрау блокталады.

Егер процессор үзілістерді қосатын болса, онда ағымдағы команданың орындалуы аяқталғаннан кейін ол INTA желісінде сигналдар тізбегін жасайды, ол бағынышты контроллерді кіріс үзу сұрауларына қарсы иммунитет күйіне қояды, сонымен қатар, контроллердің ішкі регистрлері деректер жолына шығарылады, оның көмегімен процессор үзу түрін таниды.

Процессор шина контроллері арқылы үзу контроллеріне үзу рұқсатын береді. RD сигналы үзу контроллері ішкі регистрлердің мазмұнын деректер шинасына орналастыруын қамтамасыз етуге арналған. WR сигналында үзу контроллері, керісінше, аттас шинадан мәліметтерді қабылдап, оларды ішкі регистрлерге жазады. Тиісінше, бұл үзу контроллерінің жұмыс режиміне әсер етеді.

CS кірісі мекенжай шинасына қосылған және бұл сигнал белгілі бір үзу контроллерін анықтайды. A0 кірісі енгізу/шығару кеңістігіндегі үзу контроллерінің портын көрсетеді.

IR0–IR7 кірістері перифериялық құрылғылар мен тәуелді контроллерлерден үзу сұрауларын қабылдауға арналған.

CAS0-CAS2 шығыстары белгілі бір тәуелді контроллерді анықтауға арналған.

Мақалада аппараттық үзілістер мен құрылғысы, функциялары, үзу контроллерінің жұмысы.Бұл үзу контроллері бірінші ДК үйлесімді компьютерлерде пайда болды. Содан бері процессорлар да, компьютердің өзі де көптеген жолдармен өзгерді, бірақ кейбір тармақтар сақталды. Сондықтан оны түсінікті ету үшін 8295A үзу контроллерін ұйымдастыру қарастырылды.

Жоғарыда келтірілген диаграммада тек бағыныңқы және басты үзу контроллерлеріне ғана емес, сонымен қатар басқа бағыныңқыларға келетін сигналдар көрсетілген. Дегенмен, сіздің компьютеріңізде немесе ноутбукте жоғарыда айтылғандай 2 үзу контроллері бар: негізгі және қосалқы. Бірақ осылайша 64-ке дейін бағынышты үзу контроллерін пайдаланып өзіңіздің компьютерлік жүйелеріңізді жасай аласыз.

AT заманауи компьютерлеркөп болды үзу контроллерінің функциялары 8259A чиптерін орындамаңыз, бірақ оңтүстік көпір. Дегенмен, барлық бағдарламалар мен құрылғылар үшін бәрі бірдей болып қалады. Сонымен қатар, үзу контроллері бағдарламаланады және ішкі регистрлер мен порттарға 8259A контроллері сияқты қол жеткізу қажет.

Қорытынды

Бұл жұмыста үзілістер қарастырылды, атап айтқанда үзілістерді өңдеудің аппараттық құралдары және үзілістерді өңдеу принципі. Үзіліс контроллері және олардың жұмыс істеу принципі де қарастырылады.

Үзіліс аппараттық құралдың немесе бағдарламаның жұмыс істеуінен туындаған кейбір жоспарланған немесе жоспарланбаған әрекеттерді орындау үшін есептеудің негізгі процесінің уақытша үзілуін білдіреді. Үзу механизміне аппараттық деңгейде қолдау көрсетіледі. Аппараттық үзілістер микропроцессордың қандай да бір құрылғыдан (пернетақтадан, жүйелік сағаттан, пернетақтадан, қатты дискіден және т.б.) физикалық сигналға реакциясы ретінде пайда болады, бұл үзілістер пайда болу уақытында асинхронды, яғни. кездейсоқ уақытта пайда болады.

Үзіліс контроллеріперифериялық құрылғылардан орталық процессорға келіп түсетін қызмет сұрауларын өңдеуге және төрелік етуге арналған. Үзілістер белгілі бір басымдыққа ие, бұл мүмкіндік береді үзу контроллеріберілген уақытта бір құрылғыға басқасына артықшылық беріңіз. Қазіргі компьютерде үзілістерді тудыратын 16-ға дейін сыртқы және перифериялық құрылғылар бар.

Әдебиеттер тізімі

  1. Дәріс. Үзіліс береді. Электрондық пошта Ресурс. http://hromatron.narod.ru/_lekcii/prerivania_lekcia_g2013.htm
  2. Жүйелік үзілістер | Аппараттық үзіліс | Үзілістерді өңдеу http://life-prog.ru/view_os.php?id=16
  3. Үзіліс контроллері. Электрондық пошта Ресурс http://sdelaycomputersam.ru/Controller_irq.php,
  4. Үзіліс береді. Үзіліс контроллері. Құрылғы, функциялар, жұмыс. Электрондық пошта Ресурс http://sdelaycomputersam.ru/Controller_irq.php
  5. Intel 8259A үзу контроллерінің құрылымы және инициализациясы

Менің ойымша, көптеген қызығушылық танытатын пайдаланушылар IRQ сияқты аббревиатураны бірнеше рет кездестірген шығар. Оны, мысалы, Windows жүйесіндегі Device Manager бағдарламасын қарастырғыңыз келсе, табуға болады. Кез келген құрылғыны, мысалы, пернетақтаны таңдасаңыз, тінтуірдің оң жақ түймешігімен «Сипаттар» мәзір элементін таңдап, пайда болған терезеде «Ресурстар» қойындысын белсенді етіңіз, содан кейін IRQ 01 жазуын көресіз. ресурстар тізімі.

IRQ дегеніміз не және ол не үшін қажет?

IRQ аббревиатурасы Interrupt ReQuest (үзу сұрауы) дегенді білдіреді. Бұл не үшін қажет екенін түсіну үшін дербес компьютердің жұмысын ұйымдастырудың егжей-тегжейлерін еске түсіру керек.

Процессор мен басқа құрылғылар ақпарат алмасатын компьютердің қан айналымы жүйесі болып табылады жүйелік автобус. Бірақ тұтастай алғанда, процессор шина арқылы келетін ақпаратты өңдеу сұраныстарын әртүрлі құрылғылардан қалай ажырата алады?

Ол үшін аппараттық үзілістер жүйесі (IRQ) бар. Әрбір үзілістің белгілі бір нөмірі бар (нөмірлеу 0-ден басталады) және белгілі бір құрылғыға тағайындалады. Сонымен, пернетақтаға 1 үзіліс нөмірі тағайындалады, демек IRQ 01 белгісі.

Құрылғыдан сұраныс түскенде, компьютер ағымдағы ақпаратты өңдеуді үзеді («үзу» терминінің өзі) және жаңадан алынған ақпаратты өңдеуді бастайды. Егер бірнеше үзілістер болса, онда олар әрқайсысына тағайындалған басымдықтардың реті бойынша өңделеді. Әдетте, үзіліс саны неғұрлым аз болса, процессор үшін осы үзіліске тағайындалған құрылғы басымдық соғұрлым жоғары болады, бірақ бұл ереже әрқашан орындала бермейді.

IRQ өңдеуге үзу контроллері деп аталатын арнайы чип қызмет етеді. Әдетте, бұл микросхема орталық процессордың бөлігі болып табылады, кейде ол аналық платада жеке чип ретінде бөлінеді. BIOS жүйесінде әрбір үзуді өңдеу үшін үзу өңдеушісі деп аталатын арнайы микробағдарлама бар. Барлық өңдеушілердің адрестері үзіліс векторлары деп аталатын кестеде сақталады.

Бұрын XT отбасының алғашқы компьютерлерінде 8 разряд кең таралған, сондықтан құрылғыларға барлығы 8 үзу қол жетімді болды. 16-разрядты ISA шинасының пайда болуымен олардың саны 16-ға дейін өсті.

Үзіліс сұрауын орнату

Айта кету керек, кейбір құрылғыларға тағайындалған үзілістер бекітілмеген және оларды бағдарламалық түрде өзгертуге болады. Мысалы, IRQ әдетте сериялық түрде қолданылады Com порты 2 кеңейту ұяшығына орнатылған модемді де пайдалана алады. PnP стандартын қолдайтын және Windows жүйесінде жұмыс істейтін заманауи компьютерлер мен операциялық жүйелерде автобус ұяларына қосылған құрылғылар үшін IRQ мәндері автоматты түрде таңдалады.

Бірақ ескі күндерде, пайдаланушы көптеген DOS бағдарламаларында IRQ мәнін қолмен орнатуға мәжбүр болған кезде бәрі қарапайым емес еді. Мысалы, орнату кезінде дыбыс картасы, пайдаланушы қол жетімділердің өте аз санынан (әдетте бұл IRQ 5 болатын) тегін үзуді таңдап, осы мәнді іске қосылатын бағдарламада, мысалы, кейбір ойында көрсетуі керек болды.

Көптеген BIOS құрылғыларында әдепкі IRQ мәндерін өзгерту мүмкіндігі бар орнату бағдарламасы. Бұл опция әдетте IRQ ресурстары немесе PCI/PNP конфигурациясы бөлімдерінде орналасқан.

Кейбір құрылғыда бұрыннан бар IRQ мәніне тең құрылғы үшін IRQ мәнін орнату көп жағдайда осы құрылғылардың біреуінің немесе екеуінің де бірден жұмыс істемеуіне әкеледі, ал кейде компьютер қатып қалуы мүмкін.

Қазіргі заманғы PCI шинасында үзілістерді басқару жүйесі түбегейлі өзгертілді, үзілістерді басқару мүмкіндіктері кеңейтілді. IRQ Sharing технологиясының арқасында бірнеше құрылғыны бір үзу арнасына орналастыру мүмкіндігі туды және PCI слоттарына қосылған сыртқы құрылғылар ресурстарды бір-біріне автоматты түрде бөлу мүмкіндігіне ие болды.

Бұған қоса, қазіргі компьютерлер үзіліс сұрауының 24 арнасын қолдайтын кеңейтілген бағдарламаланатын үзу контроллерін (APIC, ) пайдаланады. Жетілдірілген үзу контроллері екі микросұлба түрінде жасалған, олардың бірі процессордың өзінде, екіншісі аналық платада орналасқан. Бұл үзу контроллері алғаш рет Pentium процессорларына негізделген жүйелерде пайда болды. Дегенмен қолдау болды ескі жүйеүйлесімділік үшін үзіледі. Үзілістерді өңдеу принциптерін дамытудың келесі қадамы Windows Vista-дан бастап Windows ОЖ желісінде қолдауы пайда болған Message Signaled Interrupts технологиясы болып табылады.

Аппараттық IRQ-ді BIOS бағдарламалық құралының үзілістерімен шатастырмаңыз, олар бөлек мақалада талқыланады. BIOS бағдарламалық қамтамасыз ету үзілістері әдетте жұмысты ұйымдастыру үшін қолданылады бағдарламалық қамтамасыз етуенгізу-шығару құрылғыларымен және INT аббревиатурасымен белгіленеді. Олардың көпшілігінің атқаратын қызметі бойынша аппараттық IRQ-ге ұқсас, бірақ сандары әртүрлі.

16-биттік ISA шинасына арналған стандартты схемадағы үзіліс сұрауы нөмірлерінің тізімі:

  1. Жүйе таймері
  2. Пернетақта
  3. Қосымша үзу контроллері (8 биттік шиналық үйлесімділік үшін)
  4. Com 1 және 3 порттары
  5. Com 2 және 4 порттары
  6. Тегін (8-биттік автобуста - қатты диск контроллері)
  7. Floppy Disk Controller (FDD)
  8. LPT параллель порты
  9. CMOS нақты уақыт сағаты
  10. IRQ 2-мен біріктірілген
  11. Тегін
  12. Тегін
  13. PS/2 тінтуір порты
  14. Сопроцессор (қазіргі уақытта сирек пайдаланылады)
  15. Бірінші IDE контроллері
  16. Екінші IDE контроллері

APIC кеңейтілген үзу контроллері пайдаланатын қосымша IRQ тізімі:

  1. USB контроллері
  2. Біріктірілген аудио ішкі жүйесі (AC'97 немесе HDA)
  3. USB контроллері
  4. USB контроллері
  5. Біріктірілген желілік карта
  6. Тегін
  7. Тегін
  8. USB 2.0 контроллері

IRQ нөмірлері мен BIOS үзілістерінің сәйкестігі:

Аппараттық IRQ мен бағдарламалық INT BIOS арасындағы корреляция кестесі

Қорытынды

Сонымен, осы мақалада сіз IRQ аббревиатурасы нені білдіретінін және аппараттық үзілістердің не екенін біле аласыз. Олар компьютерлік ресурстарды бөлудің кірістірілген механизмі болып табылады және орталық процессорға құрылғының кіруін ұйымдастыруға арналған. IRQ-ды дұрыс бөлу және баптау құрылғылар арасындағы қайшылықтарды болдырмайды және қамтамасыз етеді тұрақты жұмысжүйелер.

IRQ басымдылығын басқару

Аппараттық үзіліс сұрауын басқару

Көптеген компоненттер аналық платаға тікелей қосылған, соның ішінде PCI слоттары, IDE контроллерлері, сериялық порттар, пернетақта порты тіпті CMOS жүйелік тақта, бөлек IRQ тағайындалды. Аппараттық құралды үзу сұрауы немесе IRQ құрылғының жұмыс істеуіне мүмкіндік беретін процессордың қалыпты жұмысын тоқтатады. Windows 7 бір немесе бірнеше IRQ (олар бір немесе бірнеше құрылғылармен салыстырылған) басымдықтарын белгілеуге мүмкіндік береді, бұл құрылғылардың өнімділігін жақсартуға мүмкіндік береді.

IRQ басымдылығын өзгерту қадамдары

  1. Жүйе ақпаратының қызметтік бағдарламасын (msinfo32.exe) іске қосу арқылы бастаңыз және қандай IRQ қай құрылғылар үшін пайдаланылатынын көру үшін Жүйе ақпаратының тармағын Аппараттық ресурстардың үзілістері (IRQ) ашыңыз.
  2. Содан кейін тізілім өңдегішін ашыңыз (3-тарауды қараңыз) және HKEY_LOCAL_ MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl тармағына өтіңіз.
  3. Осы бөлімде жаңа DWORD мәнін жасаңыз және IRQ#Priority параметрін атаңыз, мұндағы # - басымдылықты орнатқыңыз келетін IRQ құрылғысының нөмірі (мысалы, IRQ13Priority IRQ 13, яғни арифметикалық сопроцессорға сәйкес келеді) .
  4. Жаңа мәнді екі рет басып, басымдық нөмірін енгізіңіз. Ең жоғары басымдық үшін 1, екіншісі үшін 2 және т.б. енгізіңіз. Екі жазба үшін бірдей санды енгізбеуіңізге көз жеткізіңіз және барлығын бірден жасауға тырыспаңыз, бір немесе екі мәнмен тәжірибе жасаңыз.
  5. Аяқтаған кезде, тізілім өңдегішін жауып, компьютерді қайта іске қосыңыз.