conflicte IRQ

conflicte IRQ

conflicte IRQ

Ei bine, atunci când sau după asamblarea modernizării planificate a computerului de la prima rulare și este stabilă și fără erori. Mult mai rău, în cazul în care există probleme neașteptate - reporniri spontane si ingheata, accidente de program, eroare de sistem sau dispozitive „invizibile“, etc. Primul motiv este că, de obicei, vine în minte, în acest caz - să-și întrerupă conflictele. Cunoaștem natura acestui fenomen, sunt destul de pregătiți pentru a lupta cu el?

Ce este IRQ

Evident, care necesită două condiții să funcționeze corect mecanism de întrerupere: în primul rând, un semnal de cerere ar trebui să ajungă la procesor, și, în al doilea rând, conductorul de conducător auto trebuie să răspundă la acest semnal în mod corespunzător. În cazul unui conflict nu este îndeplinită a doua condiție: semnalul de întrerupere vine, dar reacția la acesta este incorect, ca urmare a care avem (cel mai bun) dispozitivul inoperabil.

Putem spune că conflictul - o situație în care mai multe obiecte încercați simultan pentru a avea acces la o resursă care este conceput doar pentru una dintre ele. un conflict de întrerupere apare atunci când mai multe dispozitive împart aceeași linie de întrerupere pentru a trimite semnalul de cerere, și nu există nici un mecanism care să se ocupe de cereri concurente. În cazul în care conducătorul auto să obțină control, acesta nu funcționează cu dispozitivul care a trimis cererea, sau nu, sau pur și simplu unul dintre dispozitivele care nu funcționează.

Se pune întrebarea: Poate mai multe dispozitive utilizează aceeași linie de întrerupere, sau este imposibilă, în principiu? La urma urmei, în cazul în care conducătorul auto este capabil să identifice de la care a primit o cerere, acesta va răspunde numai semnalele dispozitivelor „lor“, ignorând toate celelalte. Dar ar trebui să fie, în orice mod convenit în prealabil, în caz contrar, conflictul este inevitabil.

autobuz local PCI este proiectat pentru a face utilizarea în comun a întrerupe. Fiecare dispozitiv PCI ar trebui să funcționeze corect aliniat cu celelalte PCI-dispozitive de întrerupere. Acest lucru se face după cum urmează: faptul de a trebui să se întrerupă linia de semnal nu este determinată de față, și anume schimbarea nivelului de tensiune, și prin însuși faptul de a avea o anumită tensiune. Modificarea tensiunii de linie poate fi de mai multe dispozitive, devenind, ca într-o coadă pentru serviciu.

Astfel, schimbul de un singur IRQ multiple PCI-dispozitive nu este un conflict prin definiție. Uneori, cu toate acestea, încă mai apar probleme. În primul rând, nu toate dispozitivele PCI funcționează corect, în conformitate cu alte întreruperi. În al doilea rând, uneori, șoferii au bug-uri, dintre care, deoarece acestea nu pot identifica sursa de semnal, prevenind alte drivere. În al treilea rând, nu toate dispozitivele funcționează pe magistrala PCI; de exemplu, ISA-dispozitive, care includ, de exemplu, controlere, COM / LPT-porturi împărtășesc o întrerupere cu alte nu poate. Pentru a fi clar despre cum poți evita conflictele sau pentru a le elimina, aveți nevoie pentru a înțelege mecanismul de IRQ.

Organizarea de hardware întrerupe pe PC

La IBM PC AT calculator a fost doar un singur autobuz pe care dispozitivul poate comunica cu procesor și memorie - ISA. Cele mai multe linii de întrerupere au fost atribuite standard ISA-dispozitive, restul au fost rezervate pentru viitor. În cazul în care viitorul a sosit, sa dovedit că noua magistrala PCI universal are doar patru întreruperi gratuite. Prin urmare, un mecanism a fost inventat întrerupe complicat de partajare (IRQ sharing) și numerele de redefinire dinamice (pilotajul IRQ sau Cartografierea).

Esența mecanismului de gestionare a PCI-dispozitiv întrerupe după cum urmează. În general, există patru linii fizice PCI-întrerupere numite PIRQ0, PIRQ1, PIRQ2 și PIRQ3. Acestea sunt conectate la controlerul de întrerupere. Fiecare PCI-aparat de partea sa, deoarece are patru picioare, numite INT A, INT B, INT C și D. INT linii conectarea la terminalele pot fi în orice ordine. De exemplu, pentru prima PCI-fantă PIN-ul poate fi: PIRQ0 - INT A, PIRQ1 - INT B, PIRQ2 - INT C, PIRQ3 - INT D. Un al doilea - în mod diferit: PIRQ0 - INT B, PIRQ1 - INT C, PIRQ2 - INT D, PIRQ3 - INT A. De obicei, dispozitivul necesită numai o singură linie de întrerupere conectată la INT A. Atunci când este instalat în primul slot, dispozitivul utilizează linia PIRQ0 și a doua crestătură de pe același contact va linia PIRQ1. Astfel, aparatul în sloturi diferite vor utiliza diferite linii de întrerupere fizică. conflict de hardware între ele vor fi omise.

AGP autobuz, fiind, în esență, o modificare de specialitate, de asemenea, PCI utilizează una dintre linii PIRQ - de obicei PIRQ0.

Pentru sistemele moderne de patru linii nu este suficient, astfel încât în ​​noile chipset-uri sunt adesea folosite PIRQ opt linii, care sunt exact la fel în diferite combinații sunt conectate la sloturile PCI și un built-in dispozitive de card.

Liniile PIRQ sunt conectate la controlerul de întrerupere. Ei, ca și celelalte linii sunt atribuite logic IRQ-număr. În cazul în care o linie fizică sunt mai multe dispozitive (care este acceptabil), atunci acestea vor avea același număr IRQ. În cazul în care dispozitivele sunt în diferite linii fizice, ele pot obține în continuare același număr IRQ. Normal drivere le va permite să lucreze în mod liber, fără nici o pierdere de performanță, ca și magistrala PCI pot fi capturate de către un singur dispozitiv. Principalul lucru - să recunoască de la care aparatul a venit semnalul.

Liniile non PIRQ atribuite automat datorită mecanismului PlugPlay notoriu. Dar există dispozitive ISA-activat PlugPlay. Ei au, de asemenea, posibilitatea de a primi automat numărul IRQ. Dar ei întrerup linia le aparține în mod exclusiv, iar în cazul în care același număr va primi una din liniile PIRQ, există un conflict insolubil.

Deci, am constatat că dispozitivele PCI ar trebui să fie lipsit de probleme cu conflicte IRQ. Dacă acestea sunt, desigur, funcționează în mod corespunzător, și nu este întotdeauna. În plus, șoferii trebuie să sprijine mecanismul de întreruperi de partajare. Dispozitivele ISA nu pot partaja o linie de întrerupere și, prin urmare, sunt instigatori de conflicte. În consecință, sarcina de soluționare a conflictelor este redusă la alocarea corespunzătoare de camere (sursă de probleme - ISA-dispozitiv și „Curbe“ drivere) sau de reproducere a diferitelor linii fizice ( „curbe“ PCI-controlere).

Să ne uităm la modul în care sistemul de distribuție suferă de camere, și modul în care putem influența acest proces.

Harta întrerupe

Așa cum am spus mai devreme, cele mai multe dintre camere sunt deja ocupate dispozitive standard de IRQ, mai precis, liniile lor de întrerupere atribuite. Plimbare în ordine:
0 - temporizator de sistem (numărul este mereu ocupat);
1 - tastatura (numărul este mereu ocupat);
2 - al doilea controler de întrerupere (mereu ocupat);
3 - portul COM2 (poate fi oprit, iar camera - este eliberat);
4 - portul COM1 (poate fi oprit, iar camera - este eliberat);
5 - portul LPT2 (de obicei, o cameră este gratuit);
6 - controler de dischetă (poate fi dezactivat și camera - eliberat);
7 - portul LPT1 (dacă nu este în modul EPP sau ECP, camera este gratuit);
8 - Ceas de timp real (mereu ocupat);
9 - gratuit;
10 - gratuit;
11 - gratuit;
12 - mouse PS / 2 (poate fi disponibilă dacă nu există nici un șoarece);
13 - coprocessor (mereu ocupat);
14 și 15 - controlerul de hard disk (poate fi oprit și camera - eliberat).

Într-un sistem tipic de disponibilitate 5, 7, 9-11, adică, cinci din cele cincisprezece. În plus, puteți dezactiva în condiții de siguranță COM2 și LPT1-port, creșterea numărului de camere disponibile pentru până la șapte. Free - nu înseamnă că nu este ocupat, doar între ele pot fi liber re-shuffle.

Aflați cum numerele de întrerupere alocate în prezent în mai multe moduri. În calculatorul început doar de încărcare apare un tabel de configurare a textului. Imediat după aceea vine lista PCI-dispozitive cu indicarea numărului acestora IRQ alocate. Un alt mod de a lucra în Windows 9x. Panoul de control are o pictogramă „System“ din applet-ul de asteptare -. Fila „Dispozitive Selectați proprietățile dispozitivului“ Computer“, și toate dispozitivele vor fi listate acolo cu IRQ lor (A se vedea captura de ecran.).

Capacitatea de resurse IRQ BIOS

Numerele de sistem de IRQ sunt distribuite între linii fizice de două ori. Prima dată face BIOS-ul sistemului la pornirea sistemului. Fiecare PlugPlay-dispozitiv (toate PCI, ISA si moderne dispozitive, integrate), sau, mai degrabă, se întrerupe linia este atribuit un număr de zece. În cazul în care camera nu este suficient, câteva linii sunt comune. Dacă această linie PIRQ, atunci nu vă faceți griji - dacă driverele normale, și sprijin din sistemul de operare (pe aceasta, vezi mai jos.) Va funcționa. Și dacă aveți câteva numărul unu ISA-dispozitive sau PCI și ISA-dispozitive, pur și simplu conflictul inevitabil, și atunci trebuie să se implice în procesul de distribuție.

În primul rând, trebuie să dezactivați toate ISA-dispozitiv neutilizate (pentru sistemele fără sloturi ISA sunt de asemenea prezente) - portul COM1, COM2 și unitate. De asemenea, puteți dezactiva modurile PPE și LPT portul ECP, apoi întrerupe IRQ7 devine disponibil.

În BIOS Setup, avem nevoie de secțiunea "PCI / PNP Configuration". Există două moduri de bază pentru a influența distribuția numerelor IRQ: pentru a bloca un anumit număr și pentru a atribui direct PIRQ numărul liniei.

Prima metodă este disponibilă pentru toate BIOS: obține lista de articole „IRQ x utilizat de:“ (ascuns în „resurse IRQ“ sub-meniul din noul BIOS). Aceste întreruperi, care trebuie să fie atribuite în mod exclusiv ISA-dispozitive, aveți nevoie pentru a pune „Legacy ISA“. Astfel, în distribuția de camere date de pe dispozitive PCI-întrerupere va fi omisă. Pentru a face acest lucru ar fi în cazul în cazul în care orice dispozitiv rezistent la ISA devine o întrerupere PCI-dispozitiv, din cauza care ambele nu funcționează. Apoi am găsit un număr de IRQ și blocați-l în BIOS Setup. PCI-dispozitiv trece la un nou număr IRQ, și ISA-dispozitiv rămâne. Conflictul este rezolvat.

În al doilea rând. mod mai convenabil de a gestiona numerele de IRQ - numirea directă. În același BIOS Setup elemente submeniu poate fi un fel de "Slot X utilizare IRQ" (alte nume: "PIRQx folosesc IRQ", "Slot PCI x prioritate", "INT x Pin IRQ"). Ele ajuta pe fiecare din linia de patru PIRQ poate fi atribuit un anumit număr. Apropo, în noile AwardBIOS 6.00 pot fi observate, pe care dispozitivele (inclusiv intern) utilizează una sau cealaltă linie.

conflicte IRQ

conflicte IRQ

Capacitatea de instrumente IRQ pentru Windows

A doua oară numerele de întrerupere sunt alocate de către sistemul de operare. Așa cum arată experimentele de mine, Windows'98 începe să interfereze cu acțiunile făcute de BIOS numai în cazuri extreme. În prezența trucuri normale BIOS nu va fi necesară așa cum este descris aici.

Trebuie remarcat faptul că, pentru buna funcționare a mecanismelor de partajare IRQ și alocarea dinamică presupune că Windows recunoaște chipset-ul placii de baza și încărcate IRQ miniport. Versiunea mai recentă în Windows, cu atât mai multe chipset-uri suportă propriile sale miniport (PCIIMP.PCI). Cu toate acestea, este întotdeauna mai bine să fie în siguranță și să instalați cele mai recente drivere de chipset-uri.

În Windows 98, sistemul de distribuție IRQ este operat prin intermediul unui manager de dispozitiv standard de. În lista de dispozitive de sistem pentru a găsi magistrala PCI. Proprietățile sale au o filă specială (a se vedea. Screenshot).

Dacă totul este configurat corect, există miniport ( „încărcat cu succes“) vor fi menționate, și de control bus PCI (director) vor fi incluse. Astfel, Windows'98 dispune de mijloace pentru controlul distribuției numerelor între liniile de întrerupere fizice. Dar, ca BIOS și cele mai multe dintre acest loc de muncă bun, acest mecanism nu este activat.

Dar, uneori, este pur și simplu necesar. Așa cum am spus mai înainte, PCI-dispozitive nu trebuie să intervină în cazul în care folosesc aceeași întrerupere logică. Un alt lucru - ISA-dispozitive, care includ, de asemenea, Com- și LPT-porturi. Dacă dispozitivul nu este-PlugPlay, BIOS-ul nu se poate vedea, și oferindu-le dispozitiv PCI ocupate de întrerupere. Apoi, este necesar să se rezerve o întrerupere. Acest lucru se face în dispozitivele Windows'98 Manager: alege dispozitivul „Computer“, numesc proprietăți, comutați la fila a doua. Apoi, totul este clar.

În plus față de rezervă, puteți specifica direct numărul de întrerupere la aparat. Pentru a face acest lucru în proprietățile sale de a găsi fila „resurse“, dezactivați setarea automată și să încerce să schimbe numărul de întrerupere atribuit. Din păcate, nu funcționează întotdeauna.

Sper că informațiile de mai sus vă va ajuta în a face cu scapari „de fier“. Și amintiți-vă: cele mai frecvente probleme asociate cu un nivel scăzut de alfabetizare de calculator a proprietarului calculatorului. De aceea, trebuie să ne străduim întotdeauna să se educe, iar apoi problemele vor fi mai puțin, iar cele care nu apar - nu va părea de netrecut.

articole similare