Čo indikujú chyby nedostatku pamäte na stránke? Chybové kódy správcu zariadení 100 Chyby fyzickej pamäte

Čo indikujú chyby nedostatku pamäte na stránke? Chybové kódy správcu zariadení 100 Chyby fyzickej pamäte

Keď sa proces spustí v systéme Windows, mnohé zo stránok, ktoré zobrazujú obrázky EXE a DLL, už môžu byť v pamäti, pretože ich používajú iné procesy. Zapisovateľné obrázkové stránky sú označené ako „copy-on-write“, aby ich bolo možné zdieľať, kým ich nie je potrebné upraviť. Ak operačný systém rozpozná už spustený EXE, dokáže zaznamenať vzor odkazu na stránku (pomocou technológie, ktorú Microsoft nazýva Super-Fetch). Táto technológia sa snaží napumpovať veľa potrebných stránok vopred (aj keď na nich proces ešte nezaznamenal chyby stránok). To znižuje latenciu spustenia aplikácie (čítanie stránok z disku sa prekrýva s vykonávaním inicializačného kódu obrázkov). Táto technológia zlepšuje výstupný výkon disku, pretože ovládače disku môžu jednoduchšie organizovať operácie čítania (aby sa skrátil potrebný čas vyhľadávania). Tento proces preventívneho stránkovania sa používa počas zavádzania systému, ako aj vtedy, keď sa do popredia dostane aplikácia na pozadí a keď sa systém prebudí z hibernácie.

Predvýberové stránkovanie je podporované správcom pamäte, ale je implementované ako samostatný systémový komponent. Stránkované stránky sa nevkladajú do tabuľky stránok procesu, namiesto toho sa vkladajú do pohotovostného zoznamu, z ktorého sa dajú rýchlo vložiť do procesu (bez prístupu na disk).

Nemapované stránky sú mierne odlišné – neinicializujú sa čítaním zo súboru. Namiesto toho pri prvom prístupe k nezmapovanej stránke správca pamäte poskytne novú fyzickú stránku (z bezpečnostných dôvodov sa uistí, že jej obsah je vyplnený nulami). Pri následných chybách stránky môže byť potrebné nájsť nezmapovanú stránku v pamäti alebo ju možno prečítať zo súboru stránky.

Stránkovanie na požiadanie v správcovi pamäte je riadené chybami stránok. Každá chyba spôsobí prerušenie jadra. Jadro potom vytvorí deskriptor nezávislý od počítača (ktorý hlási, čo sa stalo) a odovzdá ho výkonnému správcovi pamäte. Správca pamäte potom skontroluje platnosť prístupu. Ak zlyhaná stránka spadá do potvrdenej oblasti, vyhľadá adresu v zozname VAD a nájde (alebo vytvorí) položku tabuľky stránok procesu. V prípade zdieľanej stránky používa správca pamäte záznam tabuľky stránok prototypu (spojený s objektom segmentu) na vyplnenie novej položky tabuľky stránok procesu.

Formát prvku tabuľky stránok sa líši v závislosti od architektúry procesora. Pre x86 a x64 procesory sú prvky zobrazenej stránky znázornené na obr. 11.17. Ak je prvok označený ako platný, potom jeho obsah interpretuje hardvér (takže virtuálna adresa môže byť preložená na správnu fyzickú stránku). Nerenderované stránky majú tiež svoje prvky, no sú označené ako neplatné, a Hardvér ignoruje zvyšok prvku. Softvérový formát sa mierne líši od hardvérového a určuje ho správca pamäte. Napríklad pre nevykreslenú stránku (ktorá musí byť umiestnená a resetovaná pred použitím) je táto skutočnosť zaznamenaná v prvku tabuľky stránok.


Dva dôležité bity záznamu tabuľky stránok sú aktualizované priamo hardvérom. Sú to prístupový bit (A) a modifikovaný bit (D). Tieto bity sledujú využitie tohto displeja stránky pre prístup na stránku a možnosť upraviť stránku počas tohto prístupu. To v skutočnosti zlepšuje výkon systému, pretože správca pamäte môže použiť prístupový bit na implementáciu stránkovania LRU (Last-Recently Used). Princípom LRU je, že tie stránky, ktoré sa nepoužívajú najdlhšie, majú najnižšiu pravdepodobnosť opätovného použitia v blízkej budúcnosti. Prístupový bit umožňuje správcovi pamäte určiť, že stránka bola sprístupnená. "Upravený" bit hovorí správcovi pamäte, že stránka mohla byť upravená (alebo, čo je dôležitejšie, nebola upravená). Ak sa stránka od načítania z disku nezmenila, potom správca pamäte nemusí zapisovať jej obsah na disk (pred tým, ako ju použije na niečo iné).

Architektúra x86 aj x64 používa 64-bitový záznam tabuľky stránok (pozri obrázok 11.17).

Každú chybu stránky možno klasifikovať do jednej z piatich kategórií:

1. Stránka nie je pevná.

2. Pokus o prístup na stránku s porušením povolenia.

3. Pokus o úpravu stránky kopírovania pri zápise.

1. Je potrebné zvýšiť zásobník.

2. Stránka je opravená, ale daný čas nezobrazuje sa.

Prvý a druhý prípad sú chyby v programovaní. Ak sa program pokúsi použiť adresu, ktorá nemá platné mapovanie, alebo sa pokúsi vykonať nelegálnu operáciu (napríklad pokus o zápis na stránku určenú len na čítanie), nazýva sa to narušenie prístupu a zvyčajne spôsobí ukončenie procesu. . Porušenie prístupu je často výsledkom neplatných hodnôt ukazovateľov vrátane prístupu k pamäti, ktorá bola uvoľnená a odpojená od procesu.

Tretí prípad má rovnaké príznaky ako druhý (pokus o zápis na stránku len na čítanie), ale jeho spracovanie je iné. Pretože stránka bola označená ako copy-on-write, správca pamäte nehlási porušenie prístupu. Namiesto toho vytvorí súkromnú kópiu stránky pre aktuálny proces a potom vráti riadenie vláknu, ktoré sa pokúsilo zapísať na stránku. Vlákno zopakuje operáciu zápisu, ktorá sa teraz dokončí bez chyby stránky.

Štvrtý prípad nastane, keď vlákno vloží hodnotu do svojho zásobníka a narazí na stránku, ktorá ešte nebola pridelená. Správca pamäte to rozpozná ako špeciálny prípad. Pokiaľ je na virtuálnych stránkach vyhradený priestor pre zásobník, správca pamäte dodá nové stránky, vynuluje ich a namapuje ich na proces. Keď vlákno obnoví vykonávanie, pokúsi sa o prístup znova a tentoraz to bude úspešné.

A nakoniec, piaty prípad je normálna chyba stránky. Má však niekoľko čiastkových možností. Ak je stránka namapovaná na súbor, správca pamäte sa musí pozrieť na jej dátové štruktúry (ako napríklad tabuľku stránok prototypu priradenú k objektu segmentu), aby sa uistil, že v pamäti nie je žiadna jej kópia. Ak existuje kópia (napríklad v inom procese, v pohotovostnom zozname alebo v zozname upravených stránok), potom ju jednoducho urobí zdieľanou (možno ju bude musieť označiť ako stránku kopírovania pri zápise do urobte to, ak sa predpokladá, že zmeny nie sú zdieľané). Ak ešte neexistuje žiadna kópia, správca pamäte pridelí voľnú fyzickú stránku a pripraví ju na skopírovanie stránky súboru z disku na ňu, pokiaľ sa práve neprenáša ďalšia stránka z disku (v takom prípade stačí počkať, kým prevod je dokončený).

Ak správca pamäte dokáže spracovať chybu stránky umiestnením stránky v pamäti (namiesto jej čítania z disku), chyba sa nazýva mäkká chyba. Ak potrebujete kópiu z disku, je to ťažká chyba. Mäkké chyby sú oveľa lacnejšie a majú malý vplyv na výkon aplikácie (v porovnaní s ťažkými chybami). Mäkké chyby sa môžu vyskytnúť, pretože zdieľaná stránka už bola namapovaná na iný proces alebo jednoducho potrebuje novú vynulovanú stránku, resp. požadovanú stránku bola odstránená z pracovnej sady procesu, ale pred opätovným použitím sa znova spýta. Mäkké chyby sa môžu vyskytnúť aj preto, že strany boli komprimované, aby sa efektívne zväčšila veľkosť fyzická pamäť. Pre väčšinu konfigurácií CPU, pamäť a I/O in súčasných systémov komprimovať efektívnejšie, namiesto toho, aby vznikali drahé I/O (z hľadiska výkonu a výkonu), ktoré si vyžadujú čítanie stránky z disku.

Keď fyzická stránka už nie je namapovaná na tabuľku stránok žiadneho procesu, prejde do jedného z troch zoznamov: voľný, upravený alebo rezervovaný. Stránky, ktoré už nikdy nie sú potrebné (ako napríklad zásobníkové stránky ukončujúceho procesu), sa okamžite uvoľnia. Tie stránky, u ktorých je pravdepodobná opätovná chyba stránky, skončia buď v upravenom zozname alebo v pohotovostnom zozname (v závislosti od toho, či bol nastavený bit „upravený“ pre akúkoľvek položku tabuľky stránok, ktorá zobrazila danú stránku od jej posledného čítania z disku) . Stránky z upraveného zoznamu sa nakoniec zapíšu na disk a potom sa presunú do rezervného zoznamu.

Správca pamäte môže prideľovať stránky podľa potreby (pomocou zoznamu voľných alebo náhradných stránok). Pred pridelením stránky a jej skopírovaním z disku správca pamäte vždy skontroluje zoznamy náhradných a upravených stránok, aby zistil, či stránka už nie je v pamäti. Schéma dopredného stránkovania v systéme Windows konvertuje budúce ťažké chyby na mäkké chyby (prečítaním stránok, ktoré môžu byť potrebné, a ich umiestnením do zoznamu stránok v pohotovostnom režime). Samotný správca pamäte robí malé množstvo stránkovania dopredu - pristupuje k skupinám sekvenčných stránok (a nie jednotlivé stránky). Ďalšie stránky sú okamžite zaradené do zoznamu rezervných strán. Nie je to zbytočné, pretože réžia správcu pamäte je oveľa nižšia ako náklady na vykonávanie I/O operácií. Čítanie celého zhluku stránok je o niečo drahšie ako čítanie jednej stránky.

Prvky tabuľky stránok na obr. 11.17 odkazujú na fyzické (nie virtuálne) čísla strán. Na aktualizáciu položky tabuľky stránok (a adresára stránok) potrebuje jadro používať virtuálne adresy. Windows mapuje tabuľky stránok a adresáre stránok pre aktuálny proces do virtuálneho priestoru adries jadra pomocou prvku self-map v adresári stránok (obrázok 11.18). Mapovaním prvku adresára stránok do adresára stránok (self-map) získame virtuálne adresy, ktoré možno použiť na odkazovanie na prvky adresára stránok (obr. 11.18, a) a prvky tabuľky stránok (obr. 11.18, b). Vlastná mapa zaberá 8 MB virtuálnych adries jadra pre každý proces (na procesoroch x86). Pre jednoduchosť je na obrázku znázornený prvok vlastnej mapy x86 pre 32-bitové položky PTE (Page-Table Entries). Systém Windows v skutočnosti používa 64-bitové záznamy PTE, takže systém môže využívať viac ako 4 GB fyzickej pamäte. S 32-bitovými položkami PTE prvok vlastnej mapy používa iba jednu položku PDE (Page-Directory Entry) v adresári stránok, a preto zaberá iba 4 MB adries namiesto 8 MB.

Mnoho výpočtových systémov obsahuje jednu alebo druhú verziu správcu pamäte (iný názov je jednotka správy pamäte - MMU), pomocou ktorej multitaskingový operačný systém prideľuje pamäť každej úlohe a poskytuje ochranu pred používateľskými programami. Napríklad, typický problém nastane, keď aplikačný program urobí chybu pri výpočte adresy, možno použije príliš veľkú alebo príliš malú hodnotu indexu. Ak systém nie je chránený, tento druh chyby môže viesť k zmenám v kódoch obsiahnutých v programoch operačného systému alebo k úprave tabuliek zariadení a dokonca spôsobiť neplánované spustenie zariadenia s fatálnymi následkami, ako sú neoprávnené zápisy do dátového súboru. .

Okrem ochrany operačného systému pred neúmyselným zničením poskytuje správca pamäte automatické premiestňovanie programov. Pomocou správcu pamäte sa logické alebo softvérové ​​adresy používateľských programov konvertujú na fyzické alebo hardvérové ​​adresy. Tieto adresy môžu byť v pamäti umiestnené úplne inak, než kde ukazujú logické adresy. Preklad adries spôsobí úplné odstránenie operačného systému a chránených I/O zariadení z adresného priestoru používateľa. Akýkoľvek pokus o čítanie alebo zápis pamäte mimo adresného priestoru prideleného používateľovi spôsobí zlyhanie procesora používateľského programu.

Informácie sa zvyčajne prenášajú v blokoch pozostávajúcich z pevného počtu bitov; 80386 MP používa 32-bitové časti, pokiaľ nedostane pokyn zmenšiť veľkosť časti na 16 bitov. Tieto časti sú pomenované podľa slov. Proces zápisu slova do pamäťového systému sa nazýva záznam do pamäte proces získavania slova z pamäte - čítanie z pamäte.

Existujú dva spôsoby prístupu k pamäti: náhodné a sekvenčné. Sekvenčný prístup sa používa v tých úložných systémoch, kde sa k slovám pristupuje v určitom vopred určenom poradí. Na druhej strane náhodný prístup zahŕňa schopnosť pristupovať k slovám úložného systému v akomkoľvek poradí a približne v rovnakom čase.

Bez ohľadu na to, aká dokonalá je pamäť, pri prechode signálu medzi zariadeniami vznikajú oneskorenia pri jeho šírení. Oneskorenie šírenia je definované ako čas potrebný na to, aby logický signál prešiel cez zariadenie alebo sekvenciu zariadení tvoriacich logický reťazec. Toto oneskorenie zohľadňuje aj prechod signálu po všetkých spojovacích vedeniach medzi čipmi.

Priamy prístup do pamäte (DAM)

Priamy prístup do pamäte umožňuje externým zariadeniam a pamäti priamu výmenu údajov bez zásahu programu. DDP poskytuje maximálnu rýchlosť I/O a maximálny paralelizmus procesov. Zatiaľ čo I/O riadené prerušením a softvérovo riadené I/O prenášajú dáta cez procesor, DMA prenáša dáta priamo medzi I/O zariadením a pamäťou.

Aby sa minimalizoval počet dátových zberníc, sú prijaté špeciálne opatrenia, ktoré umožňujú použitie konvenčnej chrbticovej siete pre DMA. Tieto opatrenia spočívajú v tom, že procesor uvoľní diaľnicu a externé zariadenie ju zachytí a použije na prenos údajov.

Počas DAP je vykonávanie programu zvyčajne pozastavené. Kmeň sa uvoľní, akonáhle je vybudená riadiaca linka požiadavky DMA. Procesor ukončí aktuálnu operáciu, uvoľní adresové a dátové linky a aktivuje signál na jednej z riadiacich liniek, aby zabránil neúmyselnému dekódovaniu nedefinovaných riadiacich signálov.

I/O rozhranie prenáša dáta priamo do pamäte pomocou špeciálneho registra. Keď je potrebné preniesť dáta, rozhranie si vyžiada pamäťový cyklus od procesora. Po potvrdení rozhranie prenesie údaje priamo do pamäte, zatiaľ čo procesor sa zastaví na jeden pamäťový cyklus. Logika, ktorá vykonáva tento prenos, sa nazýva kanál.

Kanál obsahuje register na uloženie adresy pamäťovej bunky, do ktorej alebo z ktorej sa prenášajú dáta. Vo väčšine prípadov kanál obsahuje aj počítadlo slov na počítanie počtu uskutočnených priamych prenosov. Okrem toho musí kanál obsahovať obvody, ktoré zabezpečujú výmenu riadiacich signálov, synchronizáciu a ďalšie pomocné operácie. Na obr. Obrázok 13.4 ukazuje logické prepojenia medzi CPU a radičom DMA.

komponenty RAP. Hlavnými komponentmi DMA sú spúšťač požiadavky, register adries, počítadlo a dátový register, ktorý používa periférne zariadenie. Posielanie dát cez kanál s priamym prístupom do pamäti zahŕňa niekoľko fáz: 1) inicializácia logiky priameho prístupu do pamäti na vykonanie priameho prístupu do pamäti počas opakovaných cyklov zaberania zbernice; 2) aktivácia PDP asynchrónneho vzhľadom na operácie programu; 3) oznámenie o ukončení presunov (signálom z meradla alebo v dôsledku zmeny stavu zariadenia); 4) vyvolanie „čistiaceho“ programu na konci presunov; 5) dokončenie DDP pomocou programu služby prerušenia, ktorý vráti riadenie hlavnému programu.

Blokovať preposielanie údajov. Procedúra DDP pre vysokorýchlostné zariadenia využíva blokový prenos dát. Počas vykonávania aktuálneho programu procesor iniciuje prenos bloku dát a určí počet slov, ktoré tvoria blok. Samotný prenos slov však prebieha pod kontrolou samostatného zariadenia – DMA kontroléra. Maximálna rýchlosť blokový prenos cez kanál DMA je obmedzený iba dĺžkou cyklu pamäte (čítanie alebo zápis) a prevádzkovou rýchlosťou ovládača DMA.

DDP s obsadením pamäťového cyklu. Program spustí prenos bloku umiestnením počiatočnej adresy do počítadla adries a počtu slov do počítadla slov. a vydanie príkazu na spustenie. Tento typ DDP sa často nazýva DDP s obsadenie pamäťového cyklu, pretože zakaždým pozastaví vykonávanie programu na približne jeden strojový cyklus.

Pri použití DMA obsadeného pamäťovým cyklom prebieha prenos dát paralelne s inými procesmi bežiacimi na CPU. Postupnosť akcií je tu rovnaká ako pri blokovom prenose s tým rozdielom, že radič DMA zaberá pamäťové cykly od procesora a tým spomaľuje jeho činnosť (blokuje aj prenos dát cez kanál DMA berie pamäťové cykly, pokiaľ sa DMA nepoužíva na samostatnej zbernici).

Preemptívne/nepreemptívne algoritmy.

V prípade preemptívneho algoritmu môže operačný systém kedykoľvek prerušiť vykonávanie aktuálneho vlákna a prepnúť procesor na iné vlákno. V nepreemptívnych algoritmoch vlákno, ktoré je pridelené procesoru, rozhoduje iba o tom, kedy preniesť riadenie na operačný systém.

Algoritmy s kvantizáciou.

Každému vláknu je pridelený časový úsek, počas ktorého sa vlákno môže vykonávať na procesore. Keď kvantum vyprší, operačný systém prepne procesor na ďalšie vlákno vo fronte. Kvantové sa zvyčajne rovná celočíselnému počtu intervalov systémového časovača 1.

Algoritmy s prioritami.

Každému vláknu je priradená priorita – celé číslo označujúce stupeň oprávnenia vlákna. Operačný systém, ak je pripravených na spustenie niekoľko vlákien, vyberie vlákno s najvyššou prioritou.

Windows implementuje zmiešaný plánovací algoritmus – preventívny, založený na kvantizácii a prioritách.

  1. Typ multitaskingu pre aplikáciu DOS
  2. Servisné záruky
  3. Plánovanie procesov v popredí
  4. Účel stránkovacieho súboru
  5. Procesy P1, P2, P3 alokujú 100, 20, 80 MB pamäte. Systém má 128 MB RAM. Aká je veľkosť použitá pamäť vo výmennom súbore. Aká je veľkosť swap súboru.
  1. Čo je to „chyba stránky“?

Prerušenie 14 -Chyba stránky (#PF): Intel386…

Vygeneruje sa, ak je aktivovaný nástroj stránky (CR0.PG = 1) a pri preklade lineárnej adresy na fyzickú adresu nastane jedna z nasledujúcich situácií:

  • prvok tabuľky stránok alebo adresár stránok použitý pri preklade adries, má nulový bit prítomnosti, t.j. požadovaná tabuľka stránok alebo stránka nie je prítomná vo fyzickej pamäti;
  • postup nemá úroveň privilégií, postačujúce na prístup k vybranej stránke, alebo sa pokúsi zapísať na stránku, ktorá je chránená proti zápisu pre aktuálnu úroveň privilégií.

Obslužný program poruchy stránky získava informácie o jej príčine z dvoch zdrojov: kód chyby, ktorý sa vloží do zásobníka, a obsah registra CR2, ktorý obsahuje lineárnu adresu, ktorá spôsobila chybu. Kód poruchy stránky má špeciálny formát (obr. 3.7.).

Prerušený program po odstránení príčin, ktoré spôsobili poruchu stránky (napríklad načítanie stránky do fyzickej pamäte), môže pokračovať bez akýchkoľvek ďalších úprav.

Ak bola chyba stránky spôsobená porušením bezpečnostných privilégií stránky, nastaví sa prístupový bit (A) v príslušnej položke adresára stránky. Správanie prístupového bitu v zodpovedajúcom prvku tabuliek stránok v tomto prípade nie je regulované procesory Intel a môžu sa líšiť v rôznych modeloch.

  1. Vysoká chybovosť stránky naznačuje:

Neistoty programu

nespoľahlivosť RAM

Iné: vysvetlite

Stĺpec „Chyby chýbajúcej stránky v pamäti/s.“

V stĺpci „Chyby stránky s nedostatkom pamäte/s“. (Hard Faults/s) zobrazuje priemerný počet chýb s nedostatkom pamäte za sekundu za poslednú minútu. Ak sa proces pokúsi použiť viac fyzickej pamäte, ako je k dispozícii tento momentčas, systém zapíše časť údajov z pamäte na disk - do stránkovacieho súboru. Následný prístup k údajom uloženým na disku sa nazýva chyba nedostatku pamäte stránky.

Čo znamenajú chyby nedostatku pamäte?

Teraz, keď máte predstavu o tom, aké informácie sa zhromažďujú v tabuľke Procesy, pozrime sa, ako ich môžete použiť na monitorovanie prideľovania pamäte. Pri spúšťaní aplikácií a práci so súbormi správca pamäte monitoruje veľkosť pracovnej sady každého procesu a zaznamenáva požiadavky na dodatočné pamäťové zdroje. Keď sa pracovná sada procesu zvyšuje, dispečer priraďuje tieto požiadavky potrebám jadra a iných procesov. Ak je dostupný adresný priestor nedostatočný, dispečer zmenší veľkosť pracovnej sady uložením údajov z pamäte na disk.

Neskôr sa pri čítaní týchto údajov z disku objaví chyba nedostatku pamäte. Je to celkom normálne, ale ak sa chyby vyskytnú súčasne pre rôzne procesy, systém potrebuje na načítanie údajov z disku dodatočný čas. Príliš veľa Bežné chyby absencia stránky v pamäti znižuje výkon systému. Pravdepodobne ste už zažili nečakané spomalenia vo všetkých aplikáciách, ktoré sa potom tiež náhle zastavili. Toto spomalenie bolo takmer určite spôsobené aktívnou redistribúciou údajov medzi fyzickou pamäťou a swapom.

Nasleduje záver: ak sa chyby s nedostatkom pamäte pre konkrétny proces vyskytujú príliš často a pravidelne, Počítač nemá dostatok fyzickej pamäte.

Na uľahčenie monitorovania procesov, ktoré spôsobujú časté chyby pri nedostatku pamäte na stránke, môžete ich označiť príznakmi. V tomto prípade sa vybrané procesy presunú na začiatok zoznamu a v grafe chýbajúcich chýb na stránke budú znázornené oranžovou krivkou.

Stojí za zváženie, že prideľovanie pamäte závisí od mnohých ďalších faktorov a monitorovanie chýb s nedostatkom pamäte nie je ani najlepšie, ani jediná cesta identifikovanie problémov. Môže však slúžiť ako dobrý východiskový bod pre pozorovanie.

  1. Ako sa určuje priorita vlákna v systéme Windows?

Priority

Operačný systém Windows implementuje preemptívne plánovanie priority, keď je každému vláknu priradená určitá číselná hodnota - priorita, podľa ktorej je mu pridelený procesor. Vlákna s rovnakými prioritami sú naplánované podľa algoritmu Round Robin (kolotoč). Dôležitou výhodou systému je schopnosť predchádzať vláknam bežiacim v režime jadra – výkonný systémový kód je úplne reentrantný. Iba vlákna, ktoré majú spinlock, nie sú preemptované (pozri "Synchronizácia vlákien"). Preto sa spinlocky používajú s veľkou opatrnosťou a sú nastavené na minimálny čas.

Systém poskytuje 32 úrovní priority. Šestnásť hodnôt priority (16-31) zodpovedá skupine priorít v reálnom čase, pätnásť hodnôt (1-15) je pre normálne vlákna a hodnota 0 je vyhradená pre vlákno na nulovanie systémovej stránky (pozri obrázok 6.2 ).

Ryža. 6.2. Priority vlákien

Aby sa používateľ zbavil potreby pamätať si číselné hodnoty priorít a mohol upravovať plánovač, vývojári zaviedli do systému prioritná abstrakcia. Napríklad triedu priority pre všetky vlákna konkrétneho procesu možno nastaviť pomocou sady konštantných parametrov funkcie SetPriorityClass, ktorá môže mať nasledujúce hodnoty:

  • v reálnom čase (REALTIME_PRIORITY_CLASS) - 24
  • vysoká (HIGH_PRIORITY_CLASS) - 13
  • nad normálom (ABOVE_NORMAL_PRIORITY_CLASS) 10
  • normálne (NORMAL_PRIORITY_CLASS) - 8
  • pod normálom (BELOW_NORMAL_PRIORITY_CLASS) - 6
  • a nečinný (IDLE_PRIORITY_CLASS) 4

Relatívna priorita vlákna je nastavená podobnými parametrami funkcie SetThreadPriority:

Sada šiestich tried priority procesu a siedmich tried priority vlákna tvorí 42 možných kombinácií a umožňuje nám vytvoriť takzvanú základnú prioritu vlákna.

Predvolená základná priorita procesu a primárneho vlákna je hodnota v strede rozsahov priorít procesu ( 24, 13, 10, 8, 6 alebo 4). Zmena priority procesu znamená zmenu priorít všetkých jeho vlákien, pričom ich relatívne priority zostávajú nezmenené.

Priority 16 až 31 nie sú v skutočnosti prioritami v reálnom čase, pretože podpora systému Windows v reálnom čase neposkytuje žiadne záruky na časovanie vlákien. Sú to jednoducho vyššie priority, ktoré sú vyhradené pre systémové vlákna a tie vlákna, ktoré majú takúto prioritu od užívateľa s administrátorskými právami. Prítomnosť priorít v reálnom čase, ako aj preemptovateľnosť kódu jadra, lokalizácia pamäťových stránok (pozri „Prevádzka správcu pamäte“) a množstvo pridané vlastnosti- to všetko vám umožňuje vykonávať to v prostredí OS Windows aplikácie soft real time, napríklad multimédiá. Systémové vlákno s nulovou prioritou je zaneprázdnené čistením stránok pamäte. Bežné používateľské vlákna môžu mať priority od 1 do 15.


Súvisiace informácie.


Pripojili ste nové zariadenie, ale funguje pomaly, alebo staré zariadenie prestalo fungovať alebo nefunguje správne. Čo robiť v týchto prípadoch? Preinštalovať všetko? Je to nepríjemné a nie vždy je to potrebné. Ako zistiť, aký je dôvod a ako ho odstrániť? Veľmi jednoduché. Faktom je, že v rodine operačných systémov Windows, a nielen, je tu istéSprávca zariadení, v skutočnosti veľmi potrebný a užitočný manažér, ak ho tak možno nazvať. Tu je, pomôže nám zistiť, čo je príčinou problému, a môj cheat sheet nám pomôže problém vyriešiť. Takže vo vyššie uvedenomSprávca zariadení stopy chýb v prevádzke zariadení zostávajú vo forme kódov. Keď poznáte kód chyby, nie je ťažké určiť príčinu problému. Pre nezasvätených sú kódy len nezrozumiteľné a nič nehovoriace čísla. Znalému používateľovi však môžu veľa povedať. Pokúsim sa v rámci svojich možností osvetliť túto tému.


Na zobrazenie chýb zariadenia musíme najskôr vstúpiť do samotného Správcu zariadení. Robí sa to takto. Prihlásiť saOvládací panel z menuZačať ( Môcť,môj počítač , pravé tlačidlo -Vlastnosti Správca zariadení, alebo to môžete urobiť zadaním príkazu vvykonať , ale načo všetko komplikovať). Ak vstúpime cezPanel zvládanie , potom cesta je:Systém - Zariadenie - Správca zariadení . Zvoľte vstupom do menusprávca zariadení , typ zariadenia, ktoré nás zaujíma (klávesnica, tlačiareň, modem atď.), dvakrát naň kliknite, v dôsledku toho sa nám zobrazia zariadenia zahrnuté v tomto type. Vyberte zariadenie, ktoré potrebujeme, a dvakrát naň kliknite. Pozrite si stĺpec na karte Informácievšeobecné, Stav zariadenia. Ak sa vyskytne problém s prevádzkou zariadenia, zobrazí sa tu ako kód chyby. Takže vidíme čísla a čísla. Čo si myslia? Nižšie dávam úplný zoznam chyby, s stručný popis chyby a možné spôsoby eliminácia. Kód chyby je zvýraznený červenou farbou, jej popis modrou a riešenie čiernou farbou.

Kód 1Vyskytol sa problém s nastavením zariadenia, nie správne nastavenia alebo chýba vodič. Kliknite na tlačidlo Aktualizujte ovládač , čím spustíte sprievodcuAktualizácia hardvéru . Ak neexistuje žiadny ovládač, nainštalujte ho.

Kód 3Ovládač zariadenia je poškodený alebo nie je dostatok pamäte RAM na správne fungovanie zariadenia.1. Odstránime poškodený ovládač a nainštalujeme nový. Ak to chcete urobiť: Vlastnosti - Ovládač - Odstrániť, potom postupujte podľa pokynov sprievodcu. Reštartovať. Opäť otvorímesprávca zariadení Akcia Aktualizujte hardvérovú konfiguráciu a postupujte podľa pokynov majstra. 2. Ak je problémom nedostatok virtuálna pamäť, zatvorte spustené aplikácie, aby ste uvoľnili pamäť. Ak chcete skontrolovať stav pamäte, musíme prejsťSprávca úloh , ak to chcete urobiť, stlačte klávesovú skratkuCtrl+Shift+Esc.Nastavenia virtuálnej pamäte môžeme zobraziť kliknutím pravým tlačidlom myšiMôj počítač Vlastnosti – Rozšírené – Výkon – Nastavenia (Možnosti) . Môžete skúsiť zväčšiť swap súbor (ako sa to robí som opísal v jednom z mojich predchádzajúcich blogových článkov), ale od radikálneho opatrenia to má ďaleko. Budete musieť zvýšiť RAM. Ako sa to robí, je samostatná téma nad rámec tohto príspevku.

Kód 10V sekcii registra je parameter zodpovedajúci zariadeniuFailReasonString,hodnota tohto parametra sa zobrazí v chybových údajoch, to znamená, že ak neexistuje žiadny parameter ako taký, objaví sa chybový kód, inými slovami, zariadenie sa nedá spustiť. Aktualizujte ovládač podľa vyššie uvedeného. Alebo nainštalujte novší.

Kód 12Pre toto zariadenie nie sú potrebné žiadne zdroje. Zakážte ostatné pracovné zariadenia, aspoň jedno, na tento účel použite sprievodcu riešením problémov, ktorý, ak budete postupovať podľa jeho pokynov, zakáže konfliktné zariadenie. (Dovoľte mi stručne pripomenúť: Vlastnosti - Všeobecné - Riešenie problémov.)

Kód 14Na fungovanie tohto zariadenia sa vyžaduje reštart počítača.

Kód 16Nie je možné identifikovať prostriedky, ktoré sú potrebné na fungovanie zariadenia, zariadenie nie je úplne nakonfigurované. K zariadeniu musíte priradiť ďalšie zdroje. Ale to sa dá urobiť bez problémov, ak zariadenie patríPripoj a hraj.

Vlastnosti - Zdroje. Ak sa v zozname zdrojov nachádza zdroj so znakom ?, vyberte ho a priraďte ho k vybranému zariadeniu. Ak sa zdroj nedá zmeniť, klikniteZmeniť nastavenia , ak táto funkcia nie je dostupná, zrušte začiarknutieAutomatické nastavenie

Kód 18Preinštalujte ovládač zariadenia. Pokúsime sa aktualizovať ovládač alebo ho odstrániť a urobiť to ako v príklade skód 3.

Kód 19V registri nie je dostatok informácií o nastaveniach zariadenia alebo sú nastavenia poškodené. BežaťSprievodca odstraňovaním problémov a postupujte podľa jeho pokynov, ak to nepomôže, preinštalujte zariadenie, ako je uvedené vyššie. (kód 3). Alebo ak to nepomôže, stiahnite siPosledná známa dobrá konfigurácia. Ak to nepomôže, potrebujete pomoc špecialistu, rovnako ako potrebujete upraviť register systému. Bez znalostí a skúseností vám to nepotvrdí žiadny správca systému. Kto je znalý a schopný, vie to urobiť sám, bezo mňa. A pre neskúseného človeka je lepšie to neskúšať. Register je srdcom operačného systému a operácie s ním by mal vykonávať iba skúsený odborník alebo pod jeho dohľadom. V žiadnom prípade nechcem nikoho uraziť, ale ak ste nepracovali so systémovým registrom a ak si ceníte svoj počítač, moja rada je zabudnúť na cestu tam. Nepíšem pre profesionálov, tí to nepotrebujú, ale pre bežného užívateľa. Samozrejme, môžem tam napísať, ako a čo mám robiť, ale toto bude ručné vysvetlenie a ak si počítač poškodíte v dôsledku najmenšej chyby, budem na vine ja. Ja to vôbec nepotrebujem a vy tiež.

Kód 21 Zariadenie sa odstraňuje zo systému, to znamená, že operačný systém sa pokúša odstrániť zariadenie, ale proces ešte nie je dokončený.


Pozastavte sa na niekoľko sekúnd a stlačte tlačidlo


Kód 22 Zariadenie je vypnuté. Zariadenie musí byť zapnuté.Akcia – Povoliť a postupujte podľa ďalších pokynov.


Kód 24 Zariadenie chýba alebo je nesprávne nainštalované, ovládač nefunguje správne, zariadenie môže byť pripravené na odstránenie. Odstráňte zariadenie a znova ho nainštalujte.


Kód 28 Žiadny vodič. Nainštalujte ovládač. Ak to chcete urobiť, musíte aktualizovať ovládač a postupujte podľa pokynov pre kód 1.


Kód 29Zariadenie je vypnuté . Zariadenie musíte nechať fungovať nastavenieBIOSPrečítajte si pokyny na používanie zariadenia.


Kód 31Systému sa nepodarilo načítať ovládače pre toto zariadenie . Aktualizujte ovládače podľa popisu vyššie.


Kód 32Ovládač pre toto zariadenie je deaktivovaný systémový register . Odinštalujte a znova nainštalujte ovládač (popísané vyššie)


Kód 33Operačný systém nemôže určiť zdroje na tento účel zariadení . Nastavte zariadenie alebo ho vymeňte.


Kód 34Operačný systém nedokáže zistiť nastavenia zariadení . Pozrite si dokumentáciu dodanú so zariadením a konfiguráciu konfigurujte manuálne na karte Zdroje.


Kód 35Firmvér počítača neobsahuje potrebné informácie pre správne fungovanie prevádzka zariadenia . Je potrebné aktualizovaťBIOS.Pre návod ako na to kontaktujte svojho dodávateľa, alebo ešte lepšie využite služby skúseného technika.


Kód 36Zariadenie vyžaduje prerušenie prevádzky.PCIa zariadenie je nakonfigurované na prerušenieISAalebo naopak . Je potrebné zmeniť nastaveniaBIOSkontaktujte skúseného technika.


Kód 37Operačný systém nerozpozná ovládač pre toto zariadenie . Preinštalujte ovládač (popísané vyššie).


Kód 38Operačný systém nemôže načítať ovládač pre zariadenie, pretože predchádzajúca verzia ovládača zostáva v pamäti . Musíte reštartovať počítač. Spustite Sprievodcu odstraňovaním problémov, ak sa nespustí (Vlastnosti - Všeobecné - Riešenie problémov) a postupujte podľa pokynov sprievodcu. Potom nasleduje povinný reštart.


Kód 39OS nemôže načítať ovládač zariadenia. Vodič je poškodený alebo vobec neexistuje . Preinštalujte ovládač podľa vyššie uvedeného popisu.


Kód 40Neexistuje žiadny prístup k zariadeniu, pretože v systémovom registri nie sú žiadne informácie alebo informácie obsahujú chybu . Preinštalujte ovládač.


Kód 41Zariadenie nebolo rozpoznané . Spustite Sprievodcu riešením problémov (popísaný vyššie), ak to nepomôže, aktualizujte konfiguráciu hardvéru (pozri vyššie) alebo aktualizujte ovládač. Ak nie, nainštalujte ďalšie Nová verzia vodičov.


Kód 42Systém už takýto ovládač má. To znamená, že sú dve rôzne zariadenia s rovnaké meno, pravdepodobne v dôsledku chyby . Reštartujte počítač.


Kód 43Zastavenie zariadenia z dôvodu problémov s jeho prevádzkou . Spustite Sprievodcu odstraňovaním problémov a postupujte podľa jeho pokynov.


Kód 44Aplikácia alebo služba zastavila vaše zariadenie . Reštartujte počítač.


Kód 45Zariadenie nie je pripojené . Pripojte svoje zariadenie.


Kód 46Táto chyba sa objaví, keď sa operačný systém vypne. Nemusíte robiť nič, pri ďalšom spustení OS bude všetko fungovať.


Kód 47 Zariadenie bolo pripravené na bezpečné odstránenie, ale ešte nie je odstránený (napríklad flash) . Odstráňte zariadenie, potom sa znova pripojte a reštartujte počítač.


Kód 48Zariadenie, respektíve jeho softvér, je zablokované . Aktualizujte ovládač alebo nainštalujte nový.


Kód 49Zariadenie sa nedá spustiť, pretože má veľký objem podregistra systému, ktorý presahuje platné parametre registra . Odstráňte zariadenia, ktoré sa nepoužívajú, z registra. Môžete to urobiť: Správca zariadení - Zobraziť - Zobraziť skryté zariadenia. Tu uvidíte skryté zariadenia, ktoré nie sú pripojené k vášmu PC. Vyberte zariadenia, ktoré chcete odstrániť, kliknite na Vlastnosti zariadenia - Ovládač - Odstrániť, potom postupujte podľa pokynov sprievodcu a nakoniec reštartujte počítač.


Sprievodca odstránením vírusov z počítača vlastnými rukami. Všetky metódy odstraňovania vírusov skutočne fungujú a sú testované v praxi, návod krok za krokom s ilustráciami - jednoduché a dostupné aj pre školáka + videonávody + program ultraiso na vytvorenie sťahovacích programov + užitočné odkazy na nástroje v boji proti vírusom. Stiahnite si archív