Jak skonfigurować obszary pamięci stronicowanej puli adresów i systemowych wpisów PTE

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 247904 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Ten artykuł został opublikowany wcześniej pod numerem PL247904
WAŻNE: Ten artykuł zawiera informacje na temat edytowania Rejestru. Przed edycją Rejestru upewnij się, że wiesz, jak go przywrócić w przypadku pojawienia się problemu. Informacje o przywracaniu Rejestru można znaleźć w temacie „Przywracanie Rejestru” w Pomocy programu Regedit.exe lub w temacie „Przywracanie klucza Rejestru” w Pomocy programu Regedt32.exe.
Rozwiń wszystko | Zwiń wszystko

Streszczenie

W tym artykule jest opisany sposób dopasowania rozmiaru obszarów pamięci stronicowanej puli adresów oraz systemowych wpisów PTE (SystemPTE, Page Table Entry) w komputerach opartych na systemie Windows 2000 z uruchomioną usługą Serwer terminali firmy Microsoft.

Więcej informacji

OSTRZEŻENIE: Nieprawidłowe wykorzystanie Edytora Rejestru może być przyczyną poważnych problemów, które spowodują, że konieczna może być ponowna instalacja systemu operacyjnego. Firma Microsoft nie może zagwarantować, że możliwe będzie rozwiązanie problemów spowodowanych niepoprawnym użyciem Edytora Rejestru. Możesz używać Edytora Rejestru na własną odpowiedzialność.

Informacje o edytowaniu Rejestru można znaleźć w temacie „Zmienianie kluczy i wartości" w Pomocy Edytora Rejestru (Regedit.exe) lub w tematach „Dodawanie i usuwanie informacji w Rejestrze" i „Edytowanie danych Rejestru" w Pomocy programu Regedt32.exe. Należy pamiętać o utworzeniu kopii zapasowej Rejestru przed jego edycją. Używając systemu Windows NT lub Windows 2000, należy również zaktualizować awaryjny dysk naprawczy.

W systemie Windows 2000 można bezpośrednio adresować do 2^32 bajtów lub 4 gigabajtów (GB) przestrzeni adresowej pamięci, niezależnie od ilości zainstalowanej fizycznej pamięci RAM (Random Access Memory). Domyślnie 2 GB z tej przestrzeni adresowej jest przydzielane dla każdego procesu, a 2 GB jest przydzielane dla jądra. Oddzielne dwugigabajtowe regiony z przestrzeni adresowej są używane przez każdy proces na komputerze, jednak większość z dwugigabajtowego jądra jest dostępna globalnie i pozostaje niezmienna niezależnie od liczby aktualnie aktywnych procesów trybu użytkownika.

Dwugigabajtowy obszar jądra zawiera wszystkie informacje i struktury danych systemowych. Z tego powodu dwugigabajtowy obszar przestrzeni adresowej jądra może narzucić limit liczby struktur danych systemowych i ilości informacji jądra, które mogą być przechowywane na komputerze, niezależnie od ilości zainstalowanej pamięci RAM.

Część dwugigabajtowego obszaru adresów współużytkują dwa typy danych: przydziały puli stronicowania i przydziały stosu jądra. Przydziały puli stronicowania stanowią przydziały pamięci wykonane przez składniki trybu jądra. Przydziały stosu jądra to stosy utworzone w jądrze dla każdego wątku wykonującego wywołania systemowe. Przydziały puli stronicowania są wykonywane w obszarze puli stronicowania, a przydziały stosu jądra są wykonywane w obszarze systemowych wpisów PTE (Page Table Entry).

Chociaż te różne przydziały współużytkują ten sam obszar, podział tego obszaru jest ustalany przy uruchomieniu. Jeśli systemowi operacyjnemu zabraknie pamięci w jednym z tych obszarów, drugi obszar może udostępnić swoje miejsce i w programach mogą zacząć pojawiać się nieoczekiwane błędy. To oznacza, że jeśli na komputerze opartym na systemie Windows 2000 pojawiają się nieoczekiwane błędy lub komputer nie chce akceptować nowych logowań oraz komputer nie ma innych ograniczeń zasobów, takich jak niska wydajność procesora lub dysku, najprawdopodobniej jest mało miejsca na dysku dla obszarów puli stronicowania lub systemowych wpisów PTE. Ponieważ rozmiar obszaru systemowych wpisów PTE jest domyślnie maksymalnie zwiększany na komputerze z włączonymi usługami terminalowymi, ograniczenie zwykle będzie spowodowane niewystarczającym obszarem adresowym puli stronicowania. Na szczęście, na niektórych komputerach obszar systemowych wpisów PTE może być skonfigurowany tak, aby był mniejszy, co może rozwiązać problem i umożliwić większej liczbie użytkowników dostęp do komputera.

Aby ustalić, czy na komputerze zabrakło jednego lub więcej z następujących zasobów:
  1. Podłącz do komputera debuger jądra.
  2. Użyj edytora tekstów, aby dodać parametr /DEBUG do pliku Boot.ini.
  3. Ponownie uruchom komputer.
Aby uzyskać dodatkowe informacje dotyczące korzystania z debugera jądra, kliknij numer artykułu poniżej w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
151981 How to Set Up a Remote Debug Session Using a Null Modem Cable
Gdy ocenisz, że system osiągnął swój limit:
  1. Uruchom debuger.
  2. Wpisz polecenie !vm, a następnie naciśnij klawisz ENTER.
  3. Jeśli debuger nie pokaże żadnych błędów, wpisz polecenie !reload, a następnie naciśnij klawisz ENTER, aby upewnić się, że zostały podane poprawne symbole.
Poniżej podano przykładową sesję debugowania. Dane dotyczące tego problemu, zostały wyróżnione pogrubieniem:

*** Virtual Memory Usage ***
Physical Memory: 1032075 ( 4128300 Kb)
Page File: \??\C:\pagefile.sys
Current: 4190208Kb
Minimum: 4190208Kb
Maximum: 4190208Kb
Available Pages: 599741 ( 2398964 Kb)
ResAvail Pages: 894259 ( 3577036 Kb)
Modified Pages: 757 ( 3028 Kb)
NonPagedPool Usage: 15084 ( 60336 Kb)
NonPagedPool Max: 71586 ( 286344 Kb)
PagedPool 0 Usage: 22953 ( 91812 Kb)
PagedPool 1 Usage: 4324 ( 17296 Kb)
PagedPool 2 Usage: 4315 ( 17260 Kb)
PagedPool 3 Usage: 4360 ( 17440 Kb)
PagedPool 4 Usage: 4366 ( 17464 Kb)
********** Excessive Paged Pool Usage *****
PagedPool Usage: 40318 ( 161272 Kb)
PagedPool Maximum: 40960 ( 163840 Kb)
Shared Commit: 30133 ( 120532 Kb)
Special Pool: 0 ( 0 Kb)
Free System PTEs: 47920 ( 191680 Kb)
Shared Process: 99141 ( 396564 Kb)
PagedPool Commit: 40318 ( 161272 Kb)
Driver Commit: 770 ( 3080 Kb)
Committed pages: 822746 ( 3290984 Kb)
Commit limit: 2037826 ( 8151304 Kb)
Total Private: 545122 ( 2180488 Kb)
Pozycja „********** Excessive Paged Pool Usage *****” w tym przykładzie wskazuje na komputer, w którym jest za mało zasobów typu pule stronicowania. Potwierdzenie tego faktu stanowi umieszczenie pozycji PagedPool Usage obok pozycji PagedPool Maximum.

Aby skonfigurować podział pomiędzy obszarem systemowych wpisów PTE i obszarem puli stronicowania na komputerze z zainstalowanym czystym systemem Windows 2000, komputer musi mieć za mało zasobów typu pule stronicowania i komputer musi mieć wystarczająco dużą ilość wolnego miejsca dla systemowych wpisów PTE. Ilość wolnego miejsca dla systemowych wpisów PTE musi wynosić 40 000 KB lub więcej. Jeśli komputer ma za mało wolnego miejsca dla systemowych wpisów PTE, nie można używać następującej metody do zwiększenia liczby użytkowników logujących się do serwera terminali.

Aby utrzymać komputer w optymalnej równowadze pomiędzy obszarem puli stronicowania i obszarem systemowych wpisów PTE:
  1. Ponownie uruchom komputer i zaloguj się.
  2. Uruchom debuger i wpisz polecenie !vm, a następnie naciśnij klawisz ENTER.
  3. Zapisz wartości PagedPool Maximum, PagedPool Used oraz Free System PTEs. Wartości te są podane w kilobajtach i ujęte w nawiasy.
  4. Podczas debugowania na komputerze hosta wpisz polecenie g, a następnie naciśnij klawisz ENTER.
  5. Na komputerze docelowym zaloguj dziesięciu użytkowników serwera terminali i pozostaw ich zalogowanych. Nie wykonuj na serwerze żadnych innych czynności poza wymaganymi przez tę procedurę.
  6. Dla wszystkich dziesięciu sesji uruchom programy, które użytkownicy mogą w przyszłości mieć uruchomione jednocześnie. W wyniku otrzymasz reprezentatywną próbkę działań wykonywanych przez użytkowników. Programy uruchomione w tych sesjach powinny być reprezentatywne dla czynności wykonywanych w systemie przez użytkowników w dowolnym czasie ich pracy. Aby uzyskać najlepsze wyniki, użytkownicy zdalni powinni powtórzyć kilka czynności najczęściej wykonywanych w uruchomionych programach. Na przykład w edytorze tekstów użytkownik najczęściej pisze, a w programie obsługi bazy danych użytkownik najczęściej wpisuje zamówienia.
  7. Uruchom debuger i wpisz polecenie !vm, a następnie naciśnij klawisz ENTER.
  8. Zapisz wartości PagedPool Used oraz Free System PTEs.
  9. Wykonaj następujące obliczenia:

    1. liczba pul stronicowania na użytkownika =( liczba ostatecznie używanych pul stronicowania - liczba początkowo używanych pul stronicowania )/10

      gdzie liczba pul stronicowania na użytkownika jest liczbą pul stronicowania na użytkownika, liczba ostatecznie używanych pul stronicowania jest liczbą ostatecznie używanych pul stronicowania liczba początkowo używanych pul stronicowania jest liczbą początkowo używanych pul stronicowania.
    2. liczba systemowych wpisów PTE na użytkownika =( liczba początkowo wolnych systemowych wpisów PTE - liczba ostatecznie wolnych systemowych wpisów PTE )/10

      gdzie liczba systemowych wpisów PTE na użytkownika jest liczbą systemowych wpisów PTE na użytkownika, liczba początkowo wolnych systemowych wpisów PTE jest liczbą początkowo wolnych systemowych wpisów PTE liczba ostatecznie wolnych systemowych wpisów PTE jest liczbą ostatecznie wolnych systemowych wpisów PTE.
  10. Aby zmodyfikować Rejestr:

    1. Ustal dostępny obszar wirtualnej przestrzeni adresowej oraz wymagania użytkownika dotyczące obszaru wirtualnego:

      dostępny obszar wirtualny = maksymalne pule stronicowania + początkowo wolne systemowe wpisy PTE - początkowe użycie pul stronicowania

      gdzie dostępny obszar wirtualny jest ilością dostępnego obszaru wirtualnego maksymalne pule stronicowania jest liczbą maksymalną puli stronicowania, początkowo wolne systemowe wpisy PTE jest liczbą początkowo wolnych systemowych wpisów PTE oraz początkowe użycie pul stronicowania jest liczbą początkowo użytych pul stronicowania.
    2. Korzystając z następującej formuły, można ustalić ilość wymaganego obszaru wirtualnego na użytkownika:

      obszar wirtualny na użytkownika = pule stronicowania na użytkownika + systemowe wpisy PTE na użytkownika

      gdzie obszar wirtualny na użytkownika jest wymaganą ilością obszaru wirtualnego na użytkownika, pule stronicowania na użytkownika jest liczbą pul stronicowania na użytkownika, a systemowe wpisy PTE na użytkownika jest liczbą systemowych wpisów PTE na użytkownika.
    3. Korzystając z następującej formuły, można ustalić, ilu użytkowników może teoretycznie obsłużyć ten komputer:

      maksymalna liczba użytkowników = dostępny obszar wirtualny / obszar wirtualny na użytkownika

      gdzie maksymalna liczba użytkowników jest maksymalną liczbą użytkowników, dostępny obszar wirtualny jest ilością dostępnego obszaru wirtualnego obszar wirtualny na użytkownika jest ilością obszaru wirtualnego na użytkownika.
    4. Korzystając z następującej formuły, można ustalić ilość wymaganego obszaru dla systemowych wpisów PTE:

      gdzie wymagane wpisy PTE jest liczbą wymaganych wpisów PTE, systemowe wpisy PTE na użytkownika jest liczbą wpisów PTE na użytkownika, a maksymalna liczba użytkowników jest maksymalną liczbą użytkowników.
    5. Korzystając z następujących formuł, można obliczyć ilość nadmiarowych wpisów PTE i stron systemowych:
      nadmiarowe wpisy PTE = początkowo wolne systemowe wpisy PTE - wymagane wpisy PTE

      gdzie nadmiarowe wpisy PTE jest liczbą nadmiarowych wpisów PTE, początkowo wolne systemowe wpisy PTE jest liczbą początkowo wolnych systemowych wpisów PTE oraz wymagane wpisy PTE jest liczbą wymaganych wpisów PTE.
      OSTRZEŻENIE: Nieprawidłowe wykorzystanie Edytora Rejestru może być przyczyną poważnych problemów, które spowodują, że konieczna może być ponowna instalacja systemu operacyjnego. Firma Microsoft nie może zagwarantować, że możliwe będzie rozwiązanie problemów spowodowanych niepoprawnym użyciem Edytora Rejestru. Możesz używać Edytora Rejestru na własną odpowiedzialność.

      Informacje o edytowaniu Rejestru można znaleźć w temacie „Zmienianie kluczy i wartości" w Pomocy Edytora Rejestru (Regedit.exe) lub w tematach „Dodawanie i usuwanie informacji w Rejestrze" i „Edytowanie danych Rejestru" w Pomocy programu Regedt32.exe. Należy pamiętać o utworzeniu kopii zapasowej Rejestru przed jego edycją. Używając systemu Windows NT lub Windows 2000, należy również zaktualizować awaryjny dysk naprawczy.

    6. Użyj Edytora Rejestru (Regedit32.exe) z wiersza polecenia, aby zmodyfikować wartość SystemPages w kluczu HKLM\System\CurrentControlSet\Control\Session Manager\Memory Management\SystemPages do wartości obliczonej w następującej formule:

      strony systemowe = 50 000 - (nadmiarowe wpisy PTE / 4) (zaokrąglone do najbliższej liczby całkowitej.)

      gdzie strony systemowe jest liczbą stron systemowych oraz nadmiarowe wpisy PTE jest liczbą nadmiarowych wpisów PTE.

      Jeśli obliczona wartość SystemPages jest mniejsza niż 7000, ustaw tę wartość na 7000. Jeśli obliczona wartość jest większa niż 50 000, oznacza to, że limit przestrzeni adresowej jest już skonfigurowany dla maksymalnej liczby użytkowników.
    7. Ponownie uruchom komputer, uruchom debuger, wpisz polecenie !vm, a następnie naciśnij klawisz ENTER.
    8. Sprawdź, czy wartość Paged Pool Maximum została zwiększona i obszar systemowych wpisów PTE został zmniejszony.

Właściwości

Numer ID artykułu: 247904 - Ostatnia weryfikacja: 8 kwietnia 2003 - Weryfikacja: 2.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Server
Słowa kluczowe: 
kbhowto kbtool kbenv KB247904

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com