Jaa


ChkDsk w Windows Server 2008 R2

Czym sie rózni regularny ChkDsk.exe spotykany dotad w systemach Windows Server 2003/2008 od tego w R2? Czasem dzialania! I to jak! Zerknijcie na wyniki testów! Testy zostaly przeprowadzone dla 1,5 miliona i 3 milionów plików. Dla kazdej wartosci RAM w kazdym systemie zostaly przeprowadzone 3 pomiary, a potem wyliczona srednia. Czas liczony byl przy starcie skryptu w oparciu o zegar systemowy  (echo. | time) - czas rozpoczecia odejmowalo sie od czasu zakonczenia dzialania.

Wychodzi na to, ze w systemach Windows Server 2003/2008 ChkDsk.exe byl najprawdopodobniej ten sam (albo conajmniej podobny) i wykorzystywal zawsze tyle samo pamieci RAM, niezaleznie od ilosci plików, czy obciazenia procesora. Srednio ok. 20-40 MB (zalezy, w którym momencie – maksymalnie 140MB) w czasie trwania calej operacji sprawdzania poprawnosci struktury logicznej na wolumenie. ChkDsk.exe nie przekraczal pewnej granicy zajetosci pamieci RAM, niezaleznie od tego ile dostepnej pamieci RAM bylo w systemie. Zuzycie procesora w ogólnej subiektywnej ocenie bylo znikome.

W systemie Windows Server 2008 R2 ChkDsk.exe wykorzystuje tyle pamieci RAM ile ma dostepne. Przykladowo dla 1,5 miliona plików dla 512MB RAM wykorzystuje 110MB RAM, dla 1GB RAM wykorzystuje srednio 775MB RAM, dla 2GB RAM wykorzystuje 1,7GB. W efekcie proces chkdsk.exe konczy sie szybciej, robiac to, co jest do zrobienia.

Pomiary wykonywalismy razem z Grzesiem T. Ponizsze wykresy reprezentuja przeprowadzone testy:

1. Dla 1,5 miliona plików:

image

Rysunek 1. Czas dzialania ChkDsk.exe dla 1,5 miliona plików (Os pionowa to czas podany w sekundach [s])

 

1.5 min plikow

Rysunek 2. Rozklad czasowy dla 1,5 miliona plików.

 

2. Dla 3 milionów plików:

image

Rysunek 3. Czas dzialania ChkDsk.exe dla 3 milionów plików (Os pionowa to czas podany w sekundach [s]).

 

3 mln plikow

Rysunek 4. Rozklad czasowy dla 3 milionów plików.

Autor: Paula Januszkiewicz

Comments

  • Anonymous
    January 01, 2003
    Tak, mozna tak przyjąć. Co prawda chkdsk nie jest częścią kernela, ale binaria zazwyczaj są te same. Pozdrawiam, Paula

  • Anonymous
    January 01, 2003
    Bardzo prawdopodobne, że tyle samo.

  • Anonymous
    January 01, 2003
    Bardzo zasadne pytanie. Dokładne testy były na wersjach odpowiednio x86, x64, x64 (2003, 2008, R2). Zrobiłam pobieżne testy na wersji x86 w przypadku Windows Server 2008 i praktynie nie ma to żadnego wpływu. Tak, Windows Server 2008 R2 występuje tylko w wersji x64. Różnica w zarządzaniu pamięcią sprowadza się do większej ilości pamięci wirtualnej dla procesu (więcej adresów do wykorzystania). I skoro w starszych systemach proces sam z siebie nie chce zaalokować więcej niż ~140MB pamięci, to udostępnienie mu jeszcze większej ilości dzięki platformie x64 nie poprawi jego osiągów.

  • Anonymous
    September 14, 2009
    Hm... Testowaliście wersje 64bit ? Bo z tego co wiem to 2008R2, działa tylko na takiej platformie. Może stąd różnica, systemy 64 bitowe inaczej zarządzają pamięcią.

  • Anonymous
    October 07, 2009
    Można przyjąć, że... identycznie jest dla Windows 7 x64...?

  • Anonymous
    January 13, 2010
    a ile trawa to na win 7 ultimate pl 84x????????????