Jesteś obecnie w trybie offline. Czekamy na ponowne połączenie z Internetem.

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

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.
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/DEBUGdo 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 klawiszENTER, 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 polecenieg, 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

      gdzieliczba pul stronicowania na użytkownikajest liczbą pul stronicowania na użytkownika,liczba ostatecznie używanych pul stronicowaniajest liczbą ostatecznie używanych pul stronicowanialiczba początkowo używanych pul stronicowaniajest 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

      gdzieliczba systemowych wpisów PTE na użytkownikajest liczbą systemowych wpisów PTE na użytkownika,liczba początkowo wolnych systemowych wpisów PTEjest liczbą początkowo wolnych systemowych wpisów PTEliczba ostatecznie wolnych systemowych wpisów PTEjest 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

      gdziedostępny obszar wirtualnyjest ilością dostępnego obszaru wirtualnegomaksymalne pule stronicowaniajest liczbą maksymalną puli stronicowania,początkowo wolne systemowe wpisy PTEjest liczbą początkowo wolnych systemowych wpisów PTE orazpoczątkowe użycie pul stronicowaniajest 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

      gdzieobszar wirtualny na użytkownikajest wymaganą ilością obszaru wirtualnego na użytkownika,pule stronicowania na użytkownikajest liczbą pul stronicowania na użytkownika, a systemowe wpisy PTE na użytkownikajest 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

      gdziemaksymalna liczba użytkownikówjest maksymalną liczbą użytkowników,dostępny obszar wirtualnyjest ilością dostępnego obszaru wirtualnegoobszar wirtualny na użytkownikajest 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:

      gdziewymagane wpisy PTEjest liczbą wymaganych wpisów PTE,systemowe wpisy PTE na użytkownikajest liczbą wpisów PTE na użytkownika, amaksymalna liczba użytkownikówjest 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

      gdzienadmiarowe wpisy PTEjest liczbą nadmiarowych wpisów PTE,początkowo wolne systemowe wpisy PTEjest liczbą początkowo wolnych systemowych wpisów PTE orazwymagane wpisy PTEjest 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 kluczuHKLM\System\CurrentControlSet\Control\Session Manager\Memory Management\SystemPagesdo wartości obliczonej w następującej formule:

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

      gdziestrony systemowejest liczbą stron systemowych oraznadmiarowe wpisy PTEjest 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.
/PAE PAE
Właściwości

Identyfikator artykułu: 247904 — ostatni przegląd: 04/08/2003 23:23:00 — zmiana: 2.0

  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Server
  • kbhowto kbtool kbenv KB247904
Opinia