Simptomi

Probleme s performansama možete doživjeti u aplikacijama i servisima u različitim verzijama sustava Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008 i Windows Server 2008 R2. Osim toga, primijetit ćete sljedeće simptome:

  • Dostupna je memorija gotovo iscrpljena.

  • Predmemorija sistemske datoteke troši većinu fizičkog RAM-a.

  • Na tvrdom disku postoji stalan i visok volumen predmemoriranih zahtjeva za čitanje.

Uzrok

Upravljanje memorijom u operacijskim sustavima Microsoft Windows koristi algoritam utemeljen na potražnji. Ako bilo koji zahtjev za postupak i koristi veliku količinu memorije, povećava se veličina radnog skupa (broj memorijskih stranica u fizičkom RAM-u). Ako su te zahtjeve kontinuirano i neprovjereno, radni skup procesa će rasti da bi se konzumirao sav fizički RAM. U toj se situaciji skupovi rada za sve druge procese zovu na tvrdi disk. To ponašanje smanjuje performanse aplikacija i servisa jer se memorijske stranice kontinuirano zapisuju na tvrdi disk i čitaju s tvrdog diska.

To se ponašanje primjenjuje i na radni skup predmemorije sistemske datoteke. Ako postoji stalan i visok volumen predmemoriranih zahtjeva za čitanje iz bilo kojeg postupka ili bilo kojeg upravljačkog programa, veličina radne datoteke predmemorije sustava bit će razvijen da bi zadovoljili tu potražnju. Predmemorija sistemske datoteke troši fizički RAM. Stoga dovoljne količine fizičkog RAM-a nisu dostupne za druge procese.

U 32-bitnim verzijama operacijskog sustava Microsoft Windows starijim od sustava Windows Vista radni skupovi predmemorije sistemskih datoteka imaju teoretsku memorijsku ograničenje manje od 1 gigabajta (GB). Ograničenje virtualnog adresnog raspona sprječava radne skupove predmemorirane sistemske datoteke da bi se iscrpljuje fizički RAM.

U 32-bitnim verzijama operativnih sustava Windows Vista Radni skup predmemorije sistemskih datoteka povećava se radi korištenja virtualnog adresnog raspona jezgrenog načina rada na račun ostalih resursa jezgre. Ograničenje tog raspona memorije manje je od 2 GB. Ako računalo ima više od 2 GB fizičkog RAM-a, predmemorija ne može iscrpiti sve fizičke RAM-a. No predmemorija može iscrpiti virtualni adresni razmak u jezgri. To može prouzročiti neuspjehe alokacije za druge komponente jezgre.

Na 64-bitnim verzijama operacijskog sustava Windows veličina virtualnog adresnog raspona obično je veća od fizičkog RAM-a. U tom se slučaju radni skup za predmemoriranje datoteka sustava može povećati tako da potroši većinu fizičkog RAM-a.

Rješenje

Algoritmi za upravljanje memorijom u operacijskim sustavima Windows 7 i Windows Server 2008 R2 ažurirani su za rješavanje mnogih problema s predmemoriranjem datoteka koje su pronađene u starijim verzijama sustava Windows. Postoje samo određene jedinstvene situacije u kojima morate implementirati ovaj servis na računalima sa sustavom Windows 7 ili Windows Server 2008 R2.

Kako utvrditi je li vaš sustav utjecao

Da biste utvrdili je li vaš sustav utjecao na taj problem, instalirajte alat za SysInternals RamMap. Alat možete nabaviti na sljedećem web-mjestu sustava Windows Sysinternals:

http://technet.Microsoft.com/en-US/Sysinternals/ff700229
Kada pokrenete alat, odaberite mogućnost koristi brojanje. Prikazat će se nekoliko stupaca koji prikazuju sadašnji uzorak korištenja memorije. Kliknite aktivan stupac da biste sortirali prema broju korištenih bajtova i primjetite najvišu upotrebu izravno ispod ukupnog zbroja.

Ako je broj vrha koristi "metadatoteka", a ako se koristi veliki dio dostupne memorije, pojavljuje se problem s predmemorijom sistemske datoteke opisan u odjeljku "simptomi". To možete provjeriti pomoću monitora performansi da biste nadzirali Memori\međuspremnik Resident bytes brojač i pogledajte kako će predmemorija stalno rasti tijekom vremena.

Slika 1. Ogledni izlazni izlaz u kojem računalo doživljava problem.

Zamjenski tekst

Slika 2. Ogledni izlazni prikaz u kojem računalo ne doživljava problem.

Zamjenski tekst

Ako brojač sažetaka bajtova Memory\System u predmemoriji na monitoru performansi prikazuje uzlazni trend tijekom vremena, računalo doživljava problem, kao što je prikazano na slici 3.

Slika 3. Ogledni izlazni monitor performansi u kojem računalo doživljava problem tijekom vremena.

Zamjenski tekst

Preduvjeti za ponovno pokretanje

Kada instalirate, deinstalirate ili koristite ovaj servis, ne morate ponovno pokrenuti računalo.

Ako čitate ovaj članak jer radite s klijentom koji vjeruje da je taj problem utjecao na njih, slijedite ove korake da biste riješili problem.

  1. Provjerite jesu li podaci programa RamMap izlazni, perfmon ili Poolmon potvrdili da predmemorija sistemske datoteke konzumira većinu fizičkog RAM-a, kao što je prethodno opisano.

  2. Da biste nabavili servis za dinamičku predmemoriranje sustava Windows, preuzmite ga ovdje.

  3. Neke postavke registra dinamičke predmemorije nalaze se na sljedeći način:

    Poslužitelji datoteka, možda želite isprobati 1GB.
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "Maxsystemcachembajta" = d Word: 00000400
    "Minsystemcachembajta" = d Word: 00000064
    "SampleIntervalSecs" = d Word: 0000003c
    "Cacheupdatepraldembajta" = d Word: 00000064

    Exchange 2007, možda želite isprobati 500 MB:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "Maxsystemcachembajta" = DWORD: 000001F4
    "Minsystemcachembajta" = d Word: 00000064
    "SampleIntervalSecs" = d Word: 0000003c
    "Cacheupdatepraldembajta" = d Word: 00000064

    SQL 2005 i noviji, u prošlosti kada ste radili sa sustavom SQL, koristili ste 2GB:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "Maxsystemcachembajta" = d Word: 000007D 0
    "Minsystemcachembajta" = d Word: 00000064
    "SampleIntervalSecs" = d Word: 0000003c
    "Cacheupdatepraldembajta" = d Word: 00000064

Dodatne informacije

Da biste zaobišli taj problem, upotrijebite funkciju GetSystemFileCacheSize API i funkcija SetSystemFileCacheSize API da biste postavili maksimalnu vrijednost ili minimalnu veličinu za radne skupove predmemorije sustava. Korištenje tih funkcija jedini je podržani način ograničavanja potrošnje fizičke memorije pomoću predmemorije sistemske datoteke.

Servis za dinamičku predmemoriranje sustava Microsoft Windows ogledni je servis koji pokazuje jednu strategiju koja koristi te API-je za minimiziranje efekata tog problema.

Instalacija i korištenje Microsoftova servisa za dinamičku predmemoriranje ne izaziva izuzeće podrške za Microsoft Windows. Ovaj servis i njezin izvorni kod osiguravaju se kao primjer korištenja dodatka Microsoftove podržane API-ja da biste smanjili rast predmemorije datotečnog sustava.

Servis i izvorni kod možete nabaviti na sljedećem Microsoftovu web-mjestu:

http://www.microsoft.com/download/details.aspx?FamilyID=e24ade0a-5efe-43c8-b9c3-5d0ecb2f39af&displaylang = hr

Dodatni resursi

Pročitajte poglavlja 9 (upravljanje memorijom) i 10 (Upravitelj predmemorije) sustava Windows internals, peto izdanje.

Upravljanje memorijom (veliki problemi u memoriji sustava) objavljivanje bloga

Sporo veliko kopiranje problema s objavom bloga

Ograničenja memorije za izdanja

sustava Windows 976618 možete iskusiti probleme s performansama u aplikacijama i servisima kada predmemorija sistemske datoteke potroši većinu fizičkog RAM-a

918483 kako smanjiti straničnu memoriju na bazenu međuspremnika u 64-bitnim verzijama sustava SQL Server

895932 stvari za razmotrite prije omogućivanja načina predmemorije sustava u sustavu Windows XP

232271 optimiziranje sustava Windows NT Server pomoću registra

837331 o upravitelju predmemorije u sustavu Windows Server 2003

http://technet2.Microsoft.com/windowsserver/en/Library/EFA621BD-A031-4461-9E72-59197A7507B61033.mspx

largesystemcache TechNet tema

RAMMAP blog post 

Status

Microsoft je potvrdio da se radi o problemu u Microsoftovim proizvodima navedenim u odjeljku "odnosi se na".

Potrebna vam je dodatna pomoć?

Proširite svoje vještine
Istražite osposobljavanje
Prvi koristite nove značajke
Pridružite se Microsoft Insidere

Jesu li ove informacije bile korisne?

Koliko ste zadovoljni kvalitetom prijevoda?
Što je utjecalo na vaše iskustvo?

Hvala vam na povratnim informacijama!

×