Paskutiniame savo straipsnyje "" kalbėjau apie monitoriaus galimybes „Windows“ ištekliai 7 (Resource Monitor), paaiškino, kaip jį naudoti stebint sistemos resursų pasiskirstymą tarp procesų ir paslaugų, taip pat paminėjo, kad jis gali būti naudojamas sprendžiant konkrečias problemas – pavyzdžiui, analizuojant atminties suvartojimą. Būtent tai ir bus aptariama šiame straipsnyje.

Šiek tiek apie atmintį

Prieš pradėdamas analizę, trumpai pakalbėsiu apie tai, kaip valdoma atmintis. Taip galėsite lengviau suprasti, kokia informacija pateikiama Windows 7 išteklių monitoriuje.

„Windows 7“ atminties tvarkyklė sukuria virtuali sistema atmintis, kurią sudaro turima fizinė RAM ir ieškos failas standžiajame diske. Tai leidžia operacinei sistemai paskirstyti fiksuoto ilgio atminties blokus (puslapius) su nuosekliais adresais fizinėje ir virtualioje atmintyje.

„Windows 7“ išteklių monitoriaus paleidimas

Norėdami paleisti „Windows 7 Resource Monitor“, atidarykite meniu Pradėti, paieškos juostoje įveskite „Resmon.exe“ ir spustelėkite . Atsidariusiame lange pasirinkite skirtuką „Atmintis“ (A pav.).

A paveikslas: „Windows 7 Resource Monitor“ skirtuke Atmintis pateikiama išsami atminties paskirstymo informacija.

Procesų lentelė

Skirtuke Atmintis yra procesų lentelė (B pav.), kurioje išvardyti visi veikiantys procesai ir atminties naudojimas suskirstytas į kelias kategorijas.


B paveikslas: kiekvieno proceso atminties naudojimo informacija suskirstyta į kelias kategorijas.

Stulpelis "Vaizdas"

Stulpelyje „Vaizdas“ nurodomas pavadinimas vykdomąjį failą procesas. procesai, paleista programomis, tai labai lengva sužinoti - pavyzdžiui, procesas „notepad.exe“ aiškiai priklauso „Notepad“. Procesai, pavadinti „svchost.exe“, reiškia įvairias operacinės sistemos paslaugas. Paslaugos pavadinimas pateikiamas skliausteliuose šalia proceso pavadinimo.

Proceso ID stulpelis

Proceso ID (PID) stulpelyje nurodomas proceso numeris – unikalus skaičių derinys, leidžiantis identifikuoti vykdomą procesą.

Stulpelis „Užbaigtas“.

Įsipareigojimo stulpelyje nurodomas virtualios atminties kiekis kilobaitais, kurį sistema rezervavo šiam procesui. Tai apima ir naudojamą fizinę atmintį, ir puslapius, saugomus ieškos faile.

Stulpelis „Darbinis rinkinys“

Stulpelyje „Darbinis rinkinys“ nurodomas garsumas fizinė atmintis kilobaitais, naudojamais proceso metu šiuo metu laiko. Darbo rinkinį sudaro viešoji ir privati ​​atmintis.

Stulpelis "Bendra"

Stulpelyje Bendrinama nurodomas fizinės atminties kiekis kilobaitais, kurį šis procesas bendrina su kitais. Vieno atminties segmento arba susijusių procesų apsikeitimo puslapiu bendrinimas gali sutaupyti vietos atmintyje. Taip fiziškai saugoma tik viena puslapio kopija, kuri vėliau susieta su kitų procesų, kurie jį pasiekia, virtualioje adresų erdvėje. Pavyzdžiui, visi sistemos inicijuoti procesai DLL- Ntdll, Kernel32, Gdi32 ir User32 - naudokite bendrinamą atmintį.

Stulpelis „Privatus“

Stulpelyje Privatus nurodomas fizinės atminties kiekis kilobaitais, naudojamas tik šiam procesui. Būtent ši vertė leidžia nustatyti, kiek atminties reikia konkrečiai programai veikti.

Stulpelis „Atmintyje trūksta puslapio klaidos per sekundę“.

Stulpelyje „Puslapio klaidos trūksta atminties per sekundę“. (Sunkūs gedimai/sek.) rodo vidutinį puslapio tuščios atminties klaidų skaičių per sekundę per paskutinę minutę. Jei procesas bando naudoti daugiau fizinės atminties nei šiuo metu yra, sistema kai kuriuos duomenis įrašo iš atminties į diską – į puslapio failą. Vėlesnė prieiga prie duomenų, išsaugotų diske, vadinama puslapio trūkumo klaida.

Ką reiškia puslapis iš atminties klaidos?

Dabar, kai supratote, kokia informacija renkama lentelėje Procesai, pažiūrėkime, kaip galite ją naudoti atminties paskirstymui stebėti. Vykdant programas ir dirbant su failais, atminties tvarkyklė stebi kiekvieno proceso darbo rinkinio dydį ir įrašo papildomų atminties išteklių užklausas. Kai proceso darbo rinkinys didėja, dispečeris suderina šias užklausas su branduolio ir kitų procesų poreikiais. Jei laisvos adresų vietos nepakanka, dispečeris sumažina darbo rinkinio dydį, saugodamas duomenis iš atminties į diską.

Vėliau, nuskaitant šiuos duomenis iš disko, įvyksta puslapio, kuriame trūksta atminties, klaida. Tai visiškai normalu, tačiau jei skirtingų procesų klaidos atsiranda vienu metu, sistemai reikia papildomo laiko nuskaityti duomenis iš disko. Per daug dažnos klaidos Puslapių trūkumas atmintyje atitinkamai sumažina sistemos našumą. Tikriausiai patyrėte netikėtą visų programų sulėtėjimą, kuris vėliau taip pat staiga sustojo. Šį sulėtėjimą beveik neabejotinai lėmė aktyvus duomenų perskirstymas tarp fizinės atminties ir apsikeitimo.

Išvada tokia: jei tam tikram procesui per dažnai ir reguliariai atsiranda „puslapio trūkumo“ klaidos, kompiuteris neturi pakankamai fizinės atminties.

Kad būtų patogiau stebėti procesus, sukeliančius dažnas puslapio trūkumo atminties klaidas, galite juos pažymėti vėliavėlėmis. Tokiu atveju pasirinkti procesai bus perkelti į sąrašo viršų, o trūkstamų klaidų grafike jie bus pavaizduoti oranžine kreive.

Verta nepamiršti, kad atminties paskirstymas priklauso nuo daugelio kitų veiksnių, o puslapių išeikvotos atminties klaidų stebėjimas nėra geriausias arba vienintelis būdas nustatyti problemas. Tačiau tai gali būti geras stebėjimo pradžios taškas.

Lentelė "Fizinė atmintis"

Lentelėje Procesai pateikiama išsami informacija apie atminties paskirstymą tarp atskirų procesų, o lentelėje Fizinė atmintis pateikiamas bendras RAM naudojimo vaizdas. Pagrindinis jo komponentas yra unikali histograma, parodyta Fig. C.


C paveikslas: Fizinės atminties lentelės histogramoje pateikiama atminties paskirstymo sistemoje Windows 7 apžvalga.

Kiekviena histogramos dalis pažymėta savo spalva ir žymi tam tikrą atminties puslapių grupę. Kai sistema naudojama, atminties tvarkyklė perkelia duomenis tarp šių grupių fone, išlaikydama subtilų fizinės ir virtualios atminties balansą, kad visos programos veiktų efektyviai. Pažvelkime į histogramą atidžiau.

Skyrius „Rezervuota įranga“

Kairėje yra skyrius „Rezervuota aparatūra“, pažymėta pilka spalva: tai prijungtos aparatinės įrangos poreikiams skirta atmintis, kurią ji naudoja sąveikai su operacine sistema. Techninei įrangai skirta atmintis yra užrakinta ir atminties tvarkyklė jos pasiekti negali.

Įprastai įrangai skiriamos atminties kiekis svyruoja nuo 10 iki 70 MB, tačiau šis skaičius priklauso nuo konkrečios sistemos konfigūracijos ir kai kuriais atvejais gali siekti kelis šimtus megabaitų. Komponentai, turintys įtakos rezervuotos atminties kiekiui, yra šie:

;
komponentai pagrindinė plokštė- pavyzdžiui, pažangus programuojamas įvesties/išvesties pertraukimo valdiklis (APIC);
garso plokštės ir kiti įrenginiai, atliekantys įvestį/išvestį pagal atmintį;
padanga PCI Express(PCIe);
vaizdo plokštės;
įvairūs mikroschemų rinkiniai;
„flash drives“.

Kai kurie vartotojai skundžiasi, kad jų sistemos rezervuoja neįprastai daug atminties aparatinei įrangai. Aš niekada nesusidūriau su tokia situacija, todėl negaliu garantuoti siūlomo sprendimo veiksmingumo, tačiau daugelis pažymi, kad atnaujinimas BIOS versija leidžia išspręsti problemą.

Skyrius „Naudojama“.

Skyrius Naudojama, rodoma žalia spalva, rodo sistemos, tvarkyklių ir vykdomų procesų naudojamą atminties kiekį. Naudojamos atminties kiekis apskaičiuojamas kaip „Bendra“ vertė atėmus „Modified“, „Standby“ ir „Free“ indikatorių sumą. Savo ruožtu, „Bendra“ vertė yra indikatorius „Įdiegta RAM“, atėmus indikatorių „Rezervuota įranga“.

Skyrius "Pakeista"

Skyrius „Modifikuotas“ yra paryškintas oranžine spalva, o tai reiškia modifikuotą, bet nenaudotą atmintį. Tiesą sakant, jis nenaudojamas, bet gali būti naudojamas bet kada, jei reikia dar kartą. Jei atmintis nebuvo naudojama ilgą laiką, duomenys perkeliami į puslapio failą, o atmintis patenka į kategoriją „Laukiama“.

Skyrius "Laukiu"

Laukiama sekcija, parodyta mėlyna spalva, reiškia atminties puslapius, kurie buvo pašalinti iš darbo rinkinių, bet vis dar yra su jais susieti. Kitaip tariant, kategorija „Laukiama“ iš tikrųjų yra talpykla. Šios kategorijos atminties puslapiams priskiriamas prioritetas nuo 0 iki 7 (maksimaliai). Puslapiai, susiję su aukšto prioriteto procesais, gauna didžiausią prioritetą. Pavyzdžiui, bendrinami procesai turi didelį prioritetą, todėl su jais susieti puslapiai kategorijoje Laukiama suteikia aukščiausią prioritetą.

Jei procesui reikalingi duomenys iš laukiančio puslapio, atminties tvarkyklė iš karto grąžina tą puslapį į darbo rinkinį. Tačiau visi puslapiai kategorijoje Laukiama yra prieinami kitų procesų duomenims įrašyti. Kai procesui reikia papildomos atminties ir neužtenka laisvos atminties, atminties tvarkyklė pasirenka laukimo puslapį su žemiausiu prioritetu, jį inicijuoja ir paskirsto užklausos procesui.

Skyrius "nemokamas"

Mėlyna spalva pažymėta nemokama kategorija reiškia atminties puslapius, kurie dar nebuvo priskirti jokiam procesui arba buvo atlaisvinti, kai procesas baigiasi. Šioje skiltyje rodoma ir nepanaudota, ir atlaisvinta atmintis, tačiau iš tikrųjų dar nepanaudota atmintis priklauso kitai kategorijai – „Nulis puslapių“, kuri taip vadinama, nes šie puslapiai inicijuojami iki nulio ir yra paruošti naudojimui.

Apie laisvos atminties problemą

Dabar, kai jau turite pagrindinį supratimą apie tai, kaip veikia atminties tvarkyklė, skirkime šiek tiek laiko ir išspręskime paplitusią klaidingą nuomonę apie atminties valdymo sistemą sistemoje Windows 7. Kaip matote 1 paveiksle. C, laisvos atminties skyrius yra vienas mažiausių histogramoje. Tačiau klaidinga šiuo pagrindu manyti, kad „Windows 7“ sunaudoja per daug atminties ir kad sistema negali tinkamai veikti, jei yra tiek mažai laisvos atminties.

Tiesą sakant, yra visiškai priešingai. Atsižvelgiant į „Windows 7“ požiūrį į atminties valdymą, laisva atmintis yra nenaudinga. Kuo daugiau atminties naudojama, tuo geriau. Maksimaliai padidindama atmintį ir nuolat perkeldama puslapius iš vienos kategorijos į kitą, naudodama prioritetinę sistemą, „Windows 7“ pagerina efektyvumą ir neleidžia duomenims patekti į puslapio failą, taip užkertant kelią klaidoms už puslapio ribų sulėtinti našumo.

Atminties stebėjimas

Norite pamatyti, kaip veikia „Windows 7“ atminties valdymo sistema? Iš naujo paleiskite kompiuterį ir iškart po paleidimo atidarykite „Windows 7“ išteklių monitorių Eikite į skirtuką „Atmintis“ ir atkreipkite dėmesį į fizinės atminties histogramos skyrių santykį.

Tada pradėkite paleisti programas. Bėgdami stebėkite, kaip keičiasi histograma. Paleidę kuo daugiau programų, pradėkite jas uždaryti po vieną ir stebėkite, kaip kinta fizinės atminties histogramos sekcijų santykis.

Atlikdami šį ekstremalų eksperimentą suprasite, kaip „Windows 7“ valdo atmintį jūsų konkrečiame kompiuteryje, ir galėsite naudoti „Windows 7 Resource Monitor“ atminties paskirstymui stebėti įprastomis kasdienėmis darbo sąlygomis.

kaip tu manai?

Ar jums patinka idėja naudoti „Windows 7 Resource Monitor“ atminties paskirstymui stebėti? Pasidalinkite savo nuomone komentaruose!

Prevenciniai/neprevenciniai algoritmai.

Prevencinio algoritmo atveju operacinė sistema bet kuriuo metu gali nutraukti esamos gijos vykdymą ir perjungti procesorių į kitą giją. Neprevenciniuose algoritmuose gija, kuri suteikiama procesoriui, tik nusprendžia, kada perduoti valdymą operacinei sistemai.

Algoritmai su kvantavimu.

Kiekvienai gijai suteikiama laiko dalis, per kurią gija gali būti vykdoma procesoriuje. Pasibaigus kvantui, operacinė sistema perjungia procesorių į kitą eilės giją. Kvantas paprastai yra lygus sveikajam sistemos laikmačio intervalų skaičiui 1.

Algoritmai su prioritetais.

Kiekvienai gijai priskiriamas prioritetas – sveikasis skaičius, nurodantis gijos privilegijų laipsnį. Operacinė sistema, jei yra paruoštos paleisti kelios gijos, pasirenka giją, kurios prioritetas yra didžiausias.

„Windows“ įdiegia mišrų planavimo algoritmą – prevencinį, pagrįstą kvantavimu ir prioritetais.

  1. Daugiafunkcinis DOS programos tipas
  2. Aptarnavimo garantijos
  3. Pirminio plano procesų planavimas
  4. Puslapio failo paskirtis
  5. Procesai P1, P2, P3 skiria 100, 20, 80 MB atminties. Sistema turi 128 MB RAM. Koks yra užimtos atminties dydis puslapio faile. Koks yra apsikeitimo failo dydis.
  1. Kas yra „puslapio gedimas“?

14 pertraukimas -Puslapio gedimas (#PF): Intel386…

Sukuriamas, jei suaktyvintas puslapio variklis (CR0.PG = 1) ir verčiant linijinį adresą į fizinį, įvyksta viena iš šių situacijų:

  • puslapio lentelės arba puslapio katalogo elementas, naudojamas adreso vertimui, turi nulinio buvimo bitą, t.y. fizinėje atmintyje nėra reikiamos puslapio lentelės arba puslapio;
  • procedūra neturi privilegijų lygis, pakanka pasiekti pasirinktą puslapį arba bando rašyti į puslapį, kuris yra apsaugotas nuo rašymo pagal dabartinį privilegijų lygį.

Puslapio gedimų tvarkyklė informaciją apie jos priežastį gauna iš dviejų šaltinių: klaidos kodo, kuris įstumiamas į krūvą, ir CR2 registro, kuriame yra linijinis adresas, sukėlusi klaidą, turinio. Puslapio gedimo kodas yra specialus formatas(3.7 pav.).

Nutrūkusi programa, pašalinus priežastis, sukėlusias puslapio gedimą (pavyzdžiui, įkėlus puslapį į fizinę atmintį), galima tęsti be jokių papildomų koregavimo.

Jei puslapio klaida atsirado dėl puslapio saugumo privilegijų pažeidimo, atitinkamo puslapio katalogo įraše nustatomas prieigos bitas (A). Prieigos bito elgesys atitinkamame puslapio lentelių elemente šiuo atveju nėra reglamentuojamas Intel procesoriai ir skirtinguose modeliuose gali skirtis.

  1. Didelis puslapio klaidų lygis rodo:

Programos nesaugumas

RAM nepatikimumas

Kita: paaiškink

Stulpelis „Atmintyje trūksta puslapio klaidos per sekundę“.

Stulpelyje „Puslapio klaidos trūksta atminties per sekundę“. (Sunkūs gedimai/sek.) rodo vidutinį puslapių trūkumo atmintyje klaidų skaičių per sekundę per paskutinę minutę. Jei procesas bando naudoti daugiau fizinės atminties nei šiuo metu yra, sistema kai kuriuos duomenis įrašo iš atminties į diską – į puslapio failą. Vėlesnė prieiga prie duomenų, išsaugotų diske, vadinama puslapio trūkumo atmintimi klaida.

Ką reiškia puslapis iš atminties klaidos?

Dabar, kai supratote, kokia informacija renkama lentelėje Procesai, pažiūrėkime, kaip galite ją naudoti atminties paskirstymui stebėti. Vykdant programas ir dirbant su failais, atminties tvarkyklė stebi kiekvieno proceso darbo rinkinio dydį ir įrašo papildomų atminties išteklių užklausas. Kai proceso darbo rinkinys didėja, dispečeris suderina šias užklausas su branduolio ir kitų procesų poreikiais. Jei laisvos adresų vietos nepakanka, dispečeris sumažina darbo rinkinio dydį, saugodamas duomenis iš atminties į diską.

Vėliau, nuskaitant šiuos duomenis iš disko, įvyksta puslapio, kuriame trūksta atminties, klaida. Tai visiškai normalu, tačiau jei skirtingų procesų klaidos atsiranda vienu metu, sistemai reikia papildomo laiko nuskaityti duomenis iš disko. Per dažnai rodomos atminties klaidos sumažina sistemos našumą. Tikriausiai patyrėte netikėtą visų programų sulėtėjimą, kuris vėliau taip pat staiga sustojo. Šį sulėtėjimą beveik neabejotinai lėmė aktyvus duomenų perskirstymas tarp fizinės atminties ir apsikeitimo.

Išvada tokia: jei tam tikro proceso puslapis iš atminties įvyksta per dažnai ir reguliariai, Kompiuteris neturi pakankamai fizinės atminties.

Kad būtų patogiau stebėti procesus, sukeliančius dažnas puslapio trūkumo atminties klaidas, galite juos pažymėti vėliavėlėmis. Tokiu atveju pasirinkti procesai bus perkelti į sąrašo viršų, o trūkstamų klaidų grafike jie bus pavaizduoti oranžine kreive.

Verta nepamiršti, kad atminties paskirstymas priklauso nuo daugelio kitų veiksnių, o puslapių išeikvotos atminties klaidų stebėjimas nėra geriausias arba vienintelis būdas nustatyti problemas. Tačiau tai gali būti geras stebėjimo pradžios taškas.

  1. Kaip sistemoje „Windows“ nustatomas gijų prioritetas?

Prioritetai

Windows OS įgyvendina prevencinį prioritetų planavimą, kai kiekvienai gijai priskiriama tam tikra skaitinė reikšmė – prioritetas, pagal kurį jai priskiriamas procesorius. Gijos su vienodais prioritetais suplanuojamos pagal Round Robin algoritmą (karuselę). Svarbus sistemos privalumas yra galimybė užbėgti už akių gijų, veikiančių branduolio režimu – kodas vykdomoji sistema visiškai sugrįžęs. Tik gijos, turinčios spinlocką, nėra iš anksto nustatytos (žr. „Gijų sinchronizavimas“). Todėl spinlocks naudojami labai atsargiai ir nustatomi minimaliam laikui.

Sistema suteikia 32 prioritetų lygius. Šešiolika prioritetų reikšmių (16-31) atitinka realaus laiko prioritetų grupę, penkiolika reikšmių (1-15) yra įprastoms gijomis, o 0 reikšmė rezervuota sistemos puslapio nulio nustatymo gijai (žr. 6.2 pav. ).

Ryžiai. 6.2. Gijų prioritetai

Norėdami atleisti vartotoją nuo poreikio atsiminti skaitines prioritetų reikšmes ir turėti galimybę keisti planuoklį, kūrėjai įtraukė į sistemą prioritetinis abstrakcijos sluoksnis. Pavyzdžiui, visų konkretaus proceso gijų prioritetų klasę galima nustatyti naudojant pastovių funkcijos SetPriorityClass parametrų rinkinį, kuris gali turėti šias reikšmes:

  • realiuoju laiku (REALTIME_PRIORITY_CLASS) – 24
  • aukštas (HIGH_PRIORITY_CLASS) – 13
  • virš normalaus (ABOVE_NORMAL_PRIORITY_CLASS) 10
  • normalus (NORMAL_PRIORITY_CLASS) – 8
  • žemesnė nei įprasta (BELOW_NORMAL_PRIORITY_CLASS) – 6
  • ir neaktyvus (IDLE_PRIORITY_CLASS) 4

Santykinis gijos prioritetas nustatomas panašiais funkcijos SetThreadPriority parametrais:

Šešių proceso prioritetų klasių ir septynių gijų prioritetų klasių rinkinys sudaro 42 galimus derinius ir leidžia suformuoti vadinamąjį pagrindinį gijos prioritetą.

Numatytasis proceso ir pirminės gijos bazinis prioritetas yra reikšmė proceso prioritetų diapazonų viduryje ( 24, 13, 10, 8, 6 arba 4). Keičiant proceso prioritetą, reikia pakeisti visų jo gijų prioritetus, o jų santykiniai prioritetai išlieka nepakitę.

16–31 prioritetai nėra realaus laiko prioritetai, nes „Windows“ minkštas realiojo laiko palaikymas negarantuoja gijų laiko. Tai tiesiog aukštesni prioritetai, skirti sistemos gijomis ir gijomis, kurioms tokį prioritetą suteikia administratoriaus teises turintis vartotojas. Tačiau realaus laiko prioritetų buvimas, taip pat branduolio kodo išankstinė galimybė, atminties puslapių lokalizavimas (žr. „Atminties tvarkyklės veikimas“) ir daugybė papildomos funkcijos- visa tai leidžia tai atlikti OS aplinkoje „Windows“ programos minkštas realiuoju laiku, pavyzdžiui, daugialypės terpės. Nulinio prioriteto sistemos gija yra užsiėmusi atminties puslapių išvalymu. Įprastų vartotojų gijų prioritetai gali būti nuo 1 iki 15.


Susijusi informacija.


Daugelis skaičiavimo sistemų turi vienokią ar kitokią atminties tvarkyklės versiją (kitas pavadinimas – atminties valdymo blokas – MMU), kurios pagalba daugiafunkcinė operacinė sistema kiekvienai užduočiai skiria atmintį ir užtikrina apsaugą nuo vartotojo programų. Pavyzdžiui, tipiška problema iškyla, kai taikomoji programa padaro klaidą apskaičiuodama adresą, galbūt naudodama per didelę arba per mažą indekso reikšmę. Jei sistema neapsaugota, dėl tokios klaidos gali pasikeisti operacinės sistemos programose esantys kodai ar modifikuoti įrenginių lentelės ir netgi sukelti neplanuotą įrenginio paleidimą su mirtinomis pasekmėmis, pvz., neteisėtu įrašymu į duomenų failą. .

Be operacinės sistemos apsaugos nuo netyčinio sunaikinimo, atminties tvarkyklė užtikrina automatinį programos perkėlimą. Atminties tvarkyklės pagalba vartotojo programų loginiai arba programiniai adresai konvertuojami į fizinius arba techninės įrangos adresus. Šie adresai atmintyje gali būti išdėstyti visiškai kitaip, nei nurodo loginiai adresai. Dėl adreso vertimo operacinė sistema ir apsaugoti įvesties / išvesties įrenginiai visiškai pašalinami iš vartotojo adresų erdvės. Bet koks bandymas nuskaityti ar įrašyti į atmintį už vartotojui skirtos adresų erdvės ribų sukelia procesorius sugenda vartotojo programą.

Informacija dažniausiai perduodama gabalais, susidedančiais iš fiksuoto bitų skaičiaus; 80386 MP naudoja 32 bitų dalis, nebent nurodyta sumažinti gabalo dydį iki 16 bitų. Šios dalys pavadintos žodžiais. Žodžio įrašymo į atminties sistemą procesas vadinamas įrašymas į atmintįžodžio gavimo iš atminties procesas - skaitymas iš atminties.

Yra du būdai pasiekti atmintį: atsitiktinis ir nuoseklus. Nuosekli prieiga naudojama tose saugojimo sistemose, kur žodžiai pasiekiami tam tikra iš anksto nustatyta tvarka. Kita vertus, atsitiktinė prieiga apima galimybę pasiekti saugojimo sistemos žodžius bet kokia tvarka ir maždaug per tą patį laiką.

Kad ir kokia tobula būtų atmintis, kai signalas pereina tarp įrenginių, jo sklidimas vėluoja. Skleidimo delsa apibrėžiama kaip laikas, reikalingas loginiam signalui pereiti per įrenginį arba įrenginių seką, sudarantį loginę grandinę. Šis delsimas taip pat atsižvelgia į signalo praėjimą išilgai visų jungiamųjų linijų tarp lustų.

Tiesioginė prieiga prie atminties (DAM)

Tiesioginė prieiga prie atminties leidžia išoriniams įrenginiams ir atmintis tiesiogiai keistis duomenimis be programos įsikišimo. DDP užtikrina maksimalų įvesties / išvesties greitį ir maksimalų procesų lygiagretumą. Pertraukimu valdomas įvesties / išvesties ir programinės įrangos valdomas įvesties / išvesties duomenis perduoda per procesorių, o DMA perduoda duomenis tiesiai tarp įvesties / išvesties įrenginio ir atminties.

Siekiant sumažinti duomenų magistralių skaičių, imamasi specialių priemonių, leidžiančių naudoti įprastą DMA pagrindą. Šios priemonės susideda iš to, kad procesorius išleidžia greitkelį, o išorinis įrenginys jį užfiksuoja ir naudoja duomenims perduoti.

DAP metu programos vykdymas paprastai sustabdomas. Bagažinė išleidžiama, kai tik sužadinama DMA užklausos valdymo linija. Procesorius nutraukia esamą operaciją, atlaisvina adreso ir duomenų eilutes ir patvirtina signalą vienoje iš valdymo linijų, kad būtų išvengta netyčinio neapibrėžtų valdymo signalų dekodavimo.

I/O sąsaja perkelia duomenis tiesiai į atmintį naudodama specialų registrą. Kai reikia perkelti duomenis, sąsaja prašo procesoriaus atminties ciklo. Patvirtinus, sąsaja perkelia duomenis tiesiai į atmintį, o procesorius pristabdo vieną atminties ciklą. Logika, kuri atlieka šį perdavimą, vadinama kanalas.

Kanale yra registras, kuriame saugomas atminties ląstelės, į kurią arba iš kurios perduodami duomenys, adresas. Daugeliu atvejų kanale taip pat yra žodžių skaitiklis, skirtas skaičiuoti atliktų tiesioginių perdavimų skaičių. Be to, kanale turi būti grandinė, užtikrinanti keitimąsi valdymo signalais, sinchronizaciją ir kitas pagalbines operacijas. Fig. 13.4 paveiksle parodytos loginės jungtys tarp procesoriaus ir DMA valdiklio.

RAP komponentai. Pagrindiniai DMA komponentai yra užklausos trigeris, adresų registras, skaitiklis ir duomenų registras, kurį naudoja išorinis įrenginys. Duomenų siuntimas DMA kanalu apima kelis etapus: 1) DMA logikos inicijavimas, kad būtų atlikta DMA kartotinių magistralės užgrobimo ciklų metu; 2) asinchroninio PDP aktyvinimas programos operacijų atžvilgiu; 3) pranešimas apie pervedimų pabaigą (skaitiklio signalu arba pasikeitus prietaiso būklei); 4) „valymo“ programos iškvietimas pervedimų pabaigoje; 5) DDP užbaigimas naudojant pertraukimo paslaugų programą, kuri grąžina valdymą pagrindinei programai.

Blokuoti duomenų persiuntimą. Didelės spartos įrenginių DDP procedūra naudoja blokinį duomenų perdavimą. Vykdydamas dabartinę programą, procesorius inicijuoja duomenų bloko perdavimą ir nustato bloką sudarančių žodžių skaičių. Tačiau tikrasis žodžių perdavimas atliekamas valdant atskirą įrenginį – DMA valdiklį. Maksimalus greitis bloko perdavimą DMA kanalu riboja tik atminties ciklo trukmė (skaitymas ar rašymas) ir DMA valdiklio veikimo greitis.

DDP su atminties ciklo užimtumu. Programa inicijuoja blokų perdavimą, į adresų skaitiklį įvesdama pradžios adresą, o žodžių skaitiklyje – žodžių skaičių. ir paleisti komandą. Šis DDP tipas dažnai vadinamas DDP su užima atminties ciklą, nes kiekvieną kartą pristabdo programos vykdymą maždaug vienam mašinos ciklui.

Naudojant atminties ciklo užimtą DMA, duomenų perdavimas vyksta lygiagrečiai su kitais procesais, vykdomais CPU. Veiksmų seka čia yra tokia pati kaip ir bloko perdavimo atveju, išskyrus tai, kad DMA valdiklis paima atminties ciklus iš procesoriaus ir dėl to sulėtina jo veikimą (taip pat blokuoja duomenų perdavimą per DMA kanalą paima atminties ciklai, nebent DMA naudojama atskiroje magistralėje).

Prijungėte naują įrenginį, bet jis lėtai veikia arba senasis įrenginys nustojo veikti arba veikia netinkamai. Ką daryti tokiais atvejais? Viską iš naujo įdiegti? Tai varginanti ir ne visada būtina. Kaip išsiaiškinti priežastį ir kaip ją pašalinti? Labai paprasta. Faktas yra tas, kad „Windows“ operacinių sistemų šeimoje ir ne tik, yra tam tikrasĮrenginių tvarkytuvė, tiesą sakant, labai reikalingas ir naudingas vadovas, jei taip galima jį pavadinti. Štai jis padės mums išsiaiškinti problemos priežastį, o mano cheat sheet padės išspręsti problemą. Taigi, aukščiau paminėtojeĮrenginių tvarkytuvė prietaisų veikimo klaidų pėdsakai lieka kodų pavidalu. Žinant klaidos kodą, nesunku nustatyti problemos priežastį. Nežinantiems kodai tėra nesuprantami ir beprasmiai skaičiai. Tačiau išmanančiam vartotojui jie gali daug pasakyti. Pabandysiu, kiek galiu, nušviesti šią temą.


Norėdami peržiūrėti įrenginio klaidas, pirmiausia turime įvesti pačią įrenginių tvarkytuvę. Tai daroma taip. PrisijunkiteValdymo skydelis iš meniuPradėti ( Gali,mano kompiuteris , dešinysis klavišas -Savybės Įrenginių tvarkytuvė, arba galite tai padaryti nurodydami komandąvykdyti , bet kam viską komplikuoti). Jei įeisime proSkydas valdymas , tada kelias yra:Sistema – Įranga – Įrenginių tvarkytuvė . Pasirinkite įeidami į meniuįrenginių tvarkytuvė , mus dominančio įrenginio tipas (klaviatūra, spausdintuvas, modemas ir kt.), dukart spustelėkite jį, dėl to pamatysime įrenginius, įtrauktus į šį tipą. Pasirinkite mums reikalingą įrenginį ir dukart spustelėkite jį. Pažiūrėkite į stulpelį skirtuke Apiebendra, įrenginio būsena. Jei kyla problemų dėl įrenginio veikimo, ji čia bus rodoma kaip klaidos kodas. Taigi matome skaičius ir skaičius. Ką jie reiškia? Žemiau duodu visas sąrašas klaidų, su trumpu klaidos aprašymu ir galimi būdai pašalinimas. Klaidos kodas paryškintas raudonai, jo aprašymas – mėlynai, sprendimas – juodai.

1 kodasNustatant įrenginį kilo problema, ne teisingi nustatymai arba dingo vairuotojas. Spustelėkite mygtuką Atnaujinti tvarkyklę , kad paleistumėte vedlįTechninės įrangos atnaujinimas . Jei iš viso nėra tvarkyklės, įdiekite ją.

3 kodasĮrenginio tvarkyklė pažeista arba nepakanka RAM, kad įrenginys tinkamai veiktų.1. Pašalinkime sugadintą tvarkyklę ir įdiekime naują. Norėdami tai padaryti: ypatybės - tvarkyklė - ištrinkite, tada vykdykite vedlio nurodymus. Perkraukite. Vėl atidaromaįrenginių tvarkytuvė Veiksmas Atnaujinkite aparatūros konfigūraciją ir vykdykite meistro nurodymus. 2. Jei problema yra virtualios atminties trūkumas, uždarykite veikiančias programas, kad atlaisvintumėte atminties. Norėdami patikrinti atminties būseną, turime eiti įUžduočių tvarkyklė , norėdami tai padaryti, paspauskite spartųjį klavišąCtrl + Shift + Esc.Dešiniuoju pelės mygtuku spustelėję galime peržiūrėti virtualios atminties nustatymusMano kompiuteris Ypatybės – Išplėstinė – Našumas – Nustatymai (parinktys) . Galite pabandyti padidinti apsikeitimo failą (aš aprašiau, kaip tai daroma viename iš ankstesnių savo tinklaraščio straipsnių), tačiau tai toli gražu nėra radikali priemonė. Turėsite padidinti RAM. Kaip tai daroma, yra atskira tema, nepatenka į šio įrašo sritį.

10 kodasRegistro skiltyje yra įrenginį atitinkantis parametrasFailReasonString,šio parametro reikšmė rodoma klaidos duomenyse, tai yra, jei tokio parametro nėra, tada pasirodo klaidos kodas, kitaip tariant, įrenginys negali būti paleistas. Atnaujinkite tvarkyklę, kaip nurodyta aukščiau. Arba įdiekite naujesnę.

12 kodasŠiam įrenginiui nereikia tiekti išteklių. Norėdami tai padaryti, išjunkite kitus veikiančius įrenginius, bent vieną, naudokite trikčių šalinimo vedlį, kuris, jei vykdysite jo nurodymus, išjungs nesuderinamą įrenginį. (Trumpai priminsiu: Savybės – Bendra – Trikčių šalinimas.)

14 kodasKad šis įrenginys veiktų, reikia iš naujo paleisti kompiuterį.

16 kodasNeįmanoma nustatyti išteklių, kurių reikia, kad įrenginys veiktų, nėra visiškai sukonfigūruotas. Įrenginiui reikia priskirti papildomų išteklių. Bet tai galima padaryti be problemų, jei įrenginys priklausoPlug and Play.

Savybės – ištekliai. Jei išteklių sąraše yra resursas su ženklu ?, pasirinkite jį, kad priskirtumėte jį pasirinktam įrenginiui. Jei ištekliaus pakeisti nepavyksta, spustelėkitePakeiskite nustatymus , jei ši funkcija nepasiekiama, panaikinkite žymėjimąAutomatinis nustatymas

18 kodasIš naujo įdiekite įrenginio tvarkyklę. Mes stengiamės atnaujinti tvarkyklę arba pašalinti ją ir padaryti tai, kaip pavyzdyje su3 kodas.

19 kodasRegistre nepakanka informacijos apie įrenginio nustatymus arba nustatymai sugadinti. BėkTrikčių šalinimo vedlys ir vykdykite jo nurodymus, jei tai nepadeda, iš naujo įdiekite įrenginį, kaip minėta aukščiau. (kodas 3). Arba, jei tai nepadeda, atsisiųskitePaskutinė žinoma gera konfigūracija. Jei tai nepadeda, reikia specialisto pagalbos, kaip ir redaguoti sistemos registrą. Be žinių ir patirties jūs neturite ką veikti savarankiškai, bet kuris sistemos administratorius jums tai patvirtins. Kas išmano ir gali, tas moka padaryti pats, be manęs. O nepatyrusiam geriau nebandyti. Registras yra operacinės sistemos šerdis ir tik patyręs specialistas arba jam prižiūrimas turėtų atlikti operacijas. Nieko nenoriu įžeisti, bet jei nedirbote su sistemos registru ir vertinate savo kompiuterį, patariu pamiršti kelią. Rašau ne profesionalams, jiems to nereikia, o eiliniam vartotojui. Aišku, galiu parašyti kaip ir ką ten daryti, bet tai bus rankinis paaiškinimas ir jei dėl menkiausios klaidos sugadinsi kompiuterį, būsiu kaltas aš. Man to visai nereikia, nereikia ir tau.

21 kodas Įrenginys pašalinamas iš sistemos, tai yra, operacinė sistema bando pašalinti įrenginį, tačiau procesas dar nebaigtas.


Sustabdykite kelias sekundes ir paspauskite mygtuką


22 kodas Įrenginys išjungtas. Prietaisas turi būti įjungtas.Veiksmas – įgalinti ir vadovaukitės tolesniais nurodymais.


24 kodas Trūksta įrenginio arba jis įdiegtas netinkamai, sutrinka tvarkyklė, įrenginys gali būti paruoštas išimti. Išimkite įrenginį ir vėl įdiekite.


28 kodas Nėra vairuotojo. Įdiegti tvarkyklę. Norėdami tai padaryti, turite atnaujinti tvarkyklę, atlikite veiksmus, nurodytus 1 kodo instrukcijose.


29 kodasĮrenginys išjungtas . Turite leisti įrenginiui veikti nustatymusBIOSPerskaitykite įrenginio naudojimo instrukcijas.


31 kodasSistema negalėjo įkelti šio įrenginio tvarkyklių . Atnaujinkite tvarkykles, kaip aprašyta aukščiau.


32 kodasŠio įrenginio tvarkyklė išjungta sistemos registras . Pašalinkite ir iš naujo įdiekite tvarkyklę (aprašyta aukščiau)


33 kodasOperacinė sistema negali nustatyti tam reikalingų išteklių prietaisai . Nustatykite įrenginį arba pakeiskite jį.


34 kodasOperacinė sistema negali aptikti nustatymų prietaisai . Peržiūrėkite su įranga pateiktą dokumentaciją ir rankiniu būdu sukonfigūruokite konfigūraciją skirtuke Ištekliai.


35 kodasKompiuterio programinė įranga neturi reikiamos informacijos, kad ji būtų teisinga įrenginio veikimas . Reikia atnaujintiBIOS.Norėdami gauti instrukcijų, kaip tai padaryti, susisiekite su savo tiekėju arba, dar geriau, pasinaudokite patyrusio techniko paslaugomis.


36 kodasKad prietaisas veiktų, reikalingas pertraukimas.PCIir įrenginys sukonfigūruotas pertrauktiISA,arba atvirkščiai . Reikia keisti nustatymusBIOSkreipkitės į patyrusį techniką.


37 kodasOperacinė sistema neatpažįsta šio įrenginio tvarkyklės . Iš naujo įdiekite tvarkyklę (aprašyta aukščiau).


38 kodasOS negali įkelti įrenginio tvarkyklės, nes ankstesnė tvarkyklės versija lieka atmintyje . Turite iš naujo paleisti kompiuterį. Paleiskite trikčių šalinimo vedlį, jei jis nepasileidžia (Ypatybės – Bendra – Trikčių diagnostika) ir vykdykite vedlio nurodymus. Po to yra privalomas perkrovimas.


39 kodasOS negali įkelti įrenginio tvarkyklės. Vairuotojas apgadintas arba jo visai nėra . Iš naujo įdiekite tvarkyklę, kaip aprašyta aukščiau.


40 kodasPrieiga prie įrangos nėra, nes sistemos registre nėra informacijos arba informacijoje yra klaida . Iš naujo įdiekite tvarkyklę.


41 kodasĮrenginys neaptiktas . Paleiskite trikčių šalinimo vedlį (aprašyta aukščiau), jei tai nepadeda, atnaujinkite aparatūros konfigūraciją (žr. aukščiau) arba atnaujinkite tvarkyklę. Jei ne, įdiekite daugiau nauja versija vairuotojai.


42 kodasSistema jau turi tokį tvarkyklę. Tai yra, yra du skirtingi įrenginiai tuo pačiu pavadinimu, galbūt dėl ​​klaidos . Iš naujo paleiskite kompiuterį.


43 kodasĮrenginio sustabdymas dėl jo veikimo problemų . Paleiskite trikčių šalinimo vedlį ir vykdykite jo nurodymus.


44 kodasPrograma arba paslauga sustabdė jūsų įrenginį . Iš naujo paleiskite kompiuterį.


45 kodasĮrenginys neprijungtas . Prijunkite įrenginį.


46 kodasŠi klaida pasirodo, kai operacinė sistema išsijungia. Jums nieko nereikia daryti, kitą kartą paleidus OS viskas veiks.


47 kodas Prietaisas buvo paruoštas saugus pašalinimas, bet dar neištrintas (pavyzdžiui, „flash“) . Išimkite įrenginį, tada vėl prijunkite, iš naujo paleiskite kompiuterį.


48 kodasĮrenginys, tiksliau, jo programinė įranga, užblokuota . Atnaujinkite tvarkyklę arba įdiekite naują.


49 kodasĮrenginio negalima paleisti, nes jame yra didelis sistemos registro avilys, kuris viršija priimtinus registro parametrus . Pašalinkite nenaudojamus įrenginius iš registro. Tai galite padaryti: Įrenginių tvarkytuvė – Rodymas – Rodyti paslėptus įrenginius. Čia pamatysite paslėptus įrenginius, kurie nėra prijungti prie jūsų kompiuterio. Pasirinkite įrenginius, kuriuos norite pašalinti, spustelėkite įrenginio ypatybės - tvarkyklė - pašalinkite, tada vykdykite vedlio nurodymus ir galiausiai paleiskite kompiuterį iš naujo.


Virusų pašalinimo iš kompiuterio savo rankomis vadovas. Visi virusų šalinimo būdai iš tikrųjų veikia ir yra išbandyti praktiškai, žingsnis po žingsnio instrukcijas su iliustracijomis - paprasta ir prieinama net moksleiviui + vaizdo pamokos + ultraiso programa Norėdami sukurti įkrovos tvarkykles+ naudingos nuorodos apie kovos su virusais priemones. Atsisiųsti archyvą