[Archiwum biuletynów ^][< Wolumin 3, Numer 1][Wolumin 4, Numer 1 >]

System wewnętrzny biuletyn woluminu 3, numer 2

http://www.sysinternals.com
Copyright (C) 2001 Mark Russinovich


20 sierpnia 2001 r. — w tym problemie:

  1. REDAKCJI

  2. CO NOWEGO W SYSINTERNALS

    • Eksplorator procesów w wersji 5.1
    • Obsługa wersji 2.0
    • PsInfo v1.1
    • PsExec v1.24
    • PsLogList v2.07
    • Układ źródłowy systemu Windows XP
    • DebugView w wersji 4.13
    • PageDefrag v2.1, Contig v1.41
    • Sysinternals w firmie Microsoft
  3. INFORMACJE WEWNĘTRZNE

    • Wewnątrz systemu Windows 2000, interactive DVD
    • Oznacz datę: Russinovich i Solomon uczą się razem w Austin
    • Zarządzanie dyskami wiersza polecenia
    • Slajdy WINHEC 2001 online
    • Nowe interfejsy sterowników filtru systemu plików w xp
    • Awaria systemu Windows z pociągnięciem klucza
    • Pobieranie wstępne systemu Windows XP
    • Windows .NET Połączenie ions
  4. CO SIĘ DZIEJE

    • Moje środowiska Itanium

SPONSOR: WINTERNALS SOFTWARE

Biuletyn Sysinternals jest sponsorowany przez Winternals Software, w Sieci Web http://www.winternals.com. Winternals Software jest wiodącym deweloperem i dostawcą zaawansowanych narzędzi systemów dla systemu Windows NT/2K/XP. Produkty Winternals Software obejmują FAT32 dla systemu Windows NT 4.0, NTFSDOS Professional Edition (sterownik NTFS do odczytu/zapisu dla SYSTEMU DOS) i Remote Recover.

Winternals jest dumny z ogłoszenia Defrag Commander w wersji 1.31, najszybszej, najbardziej dokładnej dostępnej defragmentatora przedsiębiorstwa. Teraz można zarządzać harmonogramami defragmentacji w całym przedsiębiorstwie systemu Windows za pomocą prostego przystawki MMC — nawet bez konieczności instalowania dowolnego oprogramowania klienckiego w systemach NT lub Windows 2000. Licencja 10-systemowa jest dostępna do zakupu online tylko za 169 USD, a agresywne rabaty na ilość są dostępne. Odwiedź stronę http://www.winternals.com/39 , aby uzyskać więcej informacji lub pobrać bezpłatnie przez 30 dni.

Witam wszystkich,

Witamy w biuletynie Sysinternals. Biuletyn ma obecnie 33 000 subskrybentów.

Używam komputerów w kilku różnych pojemnościach: jako deweloper oprogramowania; jako użytkownik; i jako administrator systemów (dla mojej własnej sieci systemów programistycznych i testowych). Ponieważ chcę dotrzeć do najszerszej publiczności dla narzędzi freeware Sysinternals i winternals komercyjnych produktów, większość narzędzi docelowych co najmniej Windows NT 4 do Windows XP, a wiele również działa w systemie Windows 95 przez Windows Me. Większość narzędzi, które piszę, to poziom systemów, co oznacza, że często zawierają specjalny kod przypadku dla co najmniej jednego wariantu systemu Windows. Niestety istnieją znaczące różnice między interfejsem użytkownika i jądra między linią Systemu Windows NT a linią Systemu Windows 9x, a nawet różnice między wersjami z tego samego wiersza.

Kiedyś testowałem, mając kilka systemów debugowania, wszystkie skonfigurowane do multiboot smaków systemu Windows, które zostały wyliczone, i rozruch do wersji, testowania, a następnie ponowne uruchomienie do następnego. Poza powolnym, testowanie czasami byłoby wypaczone przez zakłócanie upuszczania pośrednich kompilacji testowych narzędzi, których nie oczyściłem prawidłowo. Chociaż nadal mam kolekcję systemów multibooting do debugowania problemów, innowacyjny produkt o nazwie VMWare (www.vmware.com) sprawił, że cykle testowania stały się szybsze i łatwiejsze.

VMWare to środowisko maszyny wirtualnej używane do tworzenia komputerów wirtualnych (gości), które działają na komputerach z systemem Windows NT, Windows 2000 lub Linux (hosty). Gość może uruchamiać większość wariantów systemów Windows, DOS i Linux. Jego niezadowolenie, aby zobaczyć wersję systemu operacyjnego działa na drugim, zwłaszcza w przypadku tworzenia maszyny wirtualnej w trybie pełnoekranowym — praktycznie nie ma możliwości wykrycia, że nie siedzisz na ekranie komputera z systemem Linux zamiast wirtualnego wyświetlacza komputera z systemem Linux uruchomionego na komputerze z systemem Windows 2000, na przykład . Maszyna wirtualna to narzucone przez oprogramowanie pole, które hermetyzuje system operacyjny i aplikacje uruchomione na maszynie wirtualnej, tak aby podczas próby interakcji ze sprzętem, który ich zdaniem istnieje, oprogramowanie maszyny wirtualnej przechwytuje dostęp. Oprogramowanie maszyny wirtualnej tworzy urządzenia wirtualne, które służą jako starannie kontrolowane zastępcy rzeczywistego sprzętu lub wirtualnego sprzętu. Na przykład gdy aplikacja uruchomiona na maszynie wirtualnej, która jest wyświetlana w oknie zapisu w pamięci wyświetlanej maszyny wirtualnej, oprogramowanie maszyny wirtualnej aktualizuje zawartość okna reprezentującego wyświetlanie maszyny wirtualnej zamiast zezwalać na dostęp do rzeczywistej pamięci wideo. Gdyby maszyna wirtualna była uruchomiona w trybie pełnoekranowym, oprogramowanie maszyny wirtualnej pozwoliłoby na bezpośrednie manipulowanie pamięcią wideo.

Sama funkcja maszyny wirtualnej sprawia, że oprogramowanie VMWare jest przydatne, ponieważ można mieć dowolną liczbę "systemów testowych" leżących wokół dysku twardego. Co sprawia, że oprogramowanie VMWare jest jeszcze bardziej wydajne, to fakt, że można "zawiesić" komputer wirtualny, zapisać jego stan na dysku, a następnie wznowić go, w ciągu kilku sekund przywracania stanu, który miał po zawieszeniu. To jednak nie wszystko. Korzystam z funkcji o nazwie "dyski nietrwałe", która ma program VMWare uruchomić komputer wirtualny z jego dyskami wirtualnymi zawierającymi zdefiniowaną zawartość (na przykład tylko podstawową instalacją systemu operacyjnego), a następnie śledzić zmiany, aby można było je cofnąć i przywrócić stan początkowy. Jeśli zainstaluję wersje testowe narzędzia, a następnie muszę upewnić się, że wracam do czystego stanu, który nie odzwierciedla żadnych zmian narzędzia, po prostu cofam zmiany. Uważam również, że oprogramowanie VMWare jest przydatne w rolach administratora użytkowników i systemów. Za każdym razem, gdy pobieram aplikację, której nie mam pewności, że chcę zachować, a nie ewentualnie naruszyć mojego systemu programistycznego lub wypełnić go resztkami po odinstalowaniu aplikacji, najpierw próbuję ją na maszynie wirtualnej z dyskiem nietrwalnym.

Istnieją stosunkowo drobne wady bieżącej wersji, które uniemożliwiły mi korzystanie z moich rzeczywistych komputerów debugowania tak samo jak ja. Po pierwsze, ponieważ maszyny wirtualne nie obsługują directX, nie można uruchomić debugera SoftICE Numega z wyjątkiem maszyny wirtualnej w rozdzielczości ekranu 640x480. Drugim jest to, że wirtualizacja portów szeregowych programu VMWare jest ograniczona w sposób uniemożliwiający debugowanie jądra przy użyciu narzędzia Windbg lub Kd między hostem a gościem lub między gośćmi. Ten ostatni problem należy jednak rozwiązać w następnej głównej wersji oprogramowania VMWare.

Szczególnie interesujące jest to, że do momentu, aż vmWare wykazał inaczej, analitycy komputerów w przeważającej mierze wierzyli, że nie można zwirtualizować architektury x86 w oprogramowaniu wystarczająco dobrze, aby uruchomić niezmodyfikowany system operacyjny bez zbytniego obniżenia wydajności. Wyzwania są istotne, szczególnie w dziedzinie wirtualizacji urządzeń sprzętowych, a sukces vmWare jest postrzegany jako przełom — tak bardzo, że VMWare opublikowała niedawno "najlepszą konferencję" dotyczącą sposobu wdrażania wirtualizacji urządzeń na dorocznej konferencji USENIX Technical Conference. Dokument można przeczytać pod adresem http://vmware1.m0.net/m/s.asp?HB4162878203X1075673X73339X.

Mówiąc o konferencji technicznej USENIX, również współtworzyłem dokument opublikowany tam, Serwery sieci Web oparte na pamięci o wysokiej wydajności: jądra i miejsca użytkownika (http://www.sysinternals.com/files/webserver.pdf). W artykule opisano niektóre z innowacyjnych badań, w których uczestniczyłem podczas pracy w IBM Research. Wkład pracy są w obszarze przyspieszania serwera sieci Web trybu jądra, a oprócz współtworzenia architektury, byłem odpowiedzialny za większość implementacji w systemach Windows NT i Windows 2000. Projekt był tak udany, że konsekwentnie trzymaliśmy rekordy świata SPECWeb pod kątem wydajności obsługującej internet, został wydany jako wciąż ewoluujący produkt IBM o nazwie IBM Netfinity Web Server Accelerator, a zarówno firma Microsoft, jak i społeczność systemu Linux włączyli kilka kluczowych pomysłów do własnych produktów (takich jak usługi IIS dla systemu Windows 2000 i Tux w systemie Linux).

Przekaż biuletyn do znajomych, którzy mogą cię zainteresować.

Dziękujemy.

-Mark

CO NOWEGO W SYSINTERNALS

PROCESS EXPLORER V5.1

Eksplorator procesów to nowa nazwa narzędzia HandleEx, wielofunkcyjnego narzędzia zawierającego szczegółowe informacje na temat procesów, załadowanych bibliotek DLL oraz dojść do otwartych zasobów systemu operacyjnego. Wraz z nową nazwą najnowsza wersja Eksploratora procesów wprowadza mnóstwo nowych funkcji, w tym wydajne automatyczne odświeżanie, kolumnę użycia procesora CPU, możliwość zmiany priorytetów procesów i raportowanie identyfikatorów sesji procesu, jeśli system jest serwerem terminali. Ponadto pokazuje o wiele więcej informacji na temat procesów. Można na przykład wyświetlić listę usług uruchomionych w ramach procesu (jeśli ma to zastosowanie), sprawdzić zmienne środowiskowe procesu i wyświetlić wiersze polecenia procesu. Korzystając z nowej opcji sortowania o nazwie "drzewo procesów", można wyświetlić graficznie relacje procesów nadrzędny-podrzędny, co może pomóc w zidentyfikowaniu celu procesu. Eksplorator procesów działa we wszystkich wersjach systemu Windows 9x, a także Windows NT 4 za pośrednictwem systemu Windows XP.

Coś, co może nie być od razu oczywiste w interfejsie Eksploratora procesów, to możliwość pokazania, jakie procesy mają określony plik lub katalog otwarty. Przełącz ekran tak, aby obsługiwał tryb i wprowadź nazwę pliku lub katalogu, o których mowa, w oknie dialogowym wyszukiwania. Funkcja wyszukiwania jest najczęściej używana do śledzenia procesu, który uniemożliwia usunięcie lub zmianę nazwy pliku lub katalogu, ale można go użyć do wyświetlania listy procesów, które mają załadowane określone biblioteki DLL.

Pobierz Eksploratora procesów w wersji 5.1 pod adresem http://www.sysinternals.com/ntw2k/freeware/procexp.shtml.

DOJŚCIE DO WERSJI 2.0

Obsługa to wersja wiersza polecenia funkcji wyświetlania obsługi w Eksploratorze procesów, która umożliwia wyświetlanie dojść do zasobów systemu operacyjnego, takich jak pliki, które procesy mają otwarte. W niektórych przypadkach użycie dojścia jest szybszym sposobem identyfikowania procesu, który ma otwarty plik lub katalog niż przy użyciu funkcji wyszukiwania Eksploratora procesów, ponieważ wystarczy wprowadzić część nazwy pliku lub katalogu w wierszu polecenia Doj. Oprócz bardziej wydajnego wyszukiwania nazw dojść, Obsługa 2.0 działa teraz w systemie Windows 95/98/Me.

Pobierz dojście do wersji 2.0 pod adresem http://www.sysinternals.com/ntw2k/freeware/handle.shtml.

PSINFO V1.1

Najnowszym dodatkiem do pakietu narzędzi administracyjnych pstools jest PsInfo. PsInfo to narzędzie wiersza polecenia, które zgłasza charakterystykę sprzętu i systemu operacyjnego komputera. Na przykład informuje o tym, jaki system operacyjny jest uruchomiony, w tym numer dodatku Service Pack, datę instalacji i wygaśnięcia (jeśli dotyczy) oraz konfigurację (np. kontroler domeny, serwer członkowski). Zawiera również listę typów, szybkości i liczby procesorów CPU na komputerze oraz ilość zainstalowanej pamięci fizycznej. Te informacje sprawiają, że narzędzie PsInfo jest przydatne do identyfikacji systemu lub spisu. Podobnie jak wszystkie narzędzia w pakiecie PsTools, narzędzie PsInfo działa na lokalnym lub zdalnym komputerze z systemem Windows NT, 2000 lub XP.

Pobierz plik PsInfo w wersji 1.1 pod adresem http://www.sysinternals.com/ntw2k/freeware/psinfo.shtml.

PSEXEC V1.24

Program PsExec umożliwia uruchamianie procesów w systemach zdalnych bez konieczności ręcznego instalowania jakiegokolwiek oprogramowania w systemie zdalnym, o ile system znajduje się w twojej dzielnicy sieciowej. Siła programu PsExec leży w jego obsłudze przekierowanych operacji we/wy programu konsolowego, gdzie obsługuje zdalne program konsolowy dane wejściowe i tekstowe dane wyjściowe tak, jakby były uruchomione w systemie lokalnym.

Najnowsza wersja programu PsExec obsługuje wiele uruchomionych procesów w tym samym systemie zdalnym, co umożliwia zdalne otwieranie kilku wierszy polecenia w innym systemie, na przykład. Ma również nową opcję "wymuszania kopiowania", która umożliwia określenie, że program PsExec ma skopiować plik na komputer zdalny do wykonania, zastępując dowolną istniejącą wersję.

Pobierz program PsExec v1.24 pod adresem http://www.sysinternals.com/ntw2k/freeware/psexec.shtml.

PSLOGLIST V2.07

PsLogList, inne narzędzie PsTools, zrzuty dzienniki zdarzeń z lokalnego lub zdalnego systemu. W przeciwieństwie do listy eloglist narzędzie Zestawu zasobów systemu Windows 2000 z tym samym celem, Program PsLogList wyświetla pełny ciąg zdarzeń rekordu, a podczas dumpingu dzienników zdalnych używa plików zasobów ciągu dziennika zdarzeń z systemu zdalnego zamiast z lokalnego.

Wersja 2.07 programu PsLogList zawiera przełącznik wiersza polecenia, dzięki czemu można przekierować go do zrzutu rozszerzonych informacji dziennika zdarzeń (dodatkowych informacji, które mogą być skojarzone z rekordem) oraz nowego przełącznika, aby można było wyświetlać rekordy tylko z określonych ostatnich dni.

Pobierz plik PsLogList w wersji 2.07 pod adresem http://www.sysinternals.com/ntw2k/freeware/psloglist.shtml.

UKŁAD ŹRÓDŁOWY SYSTEMU WINDOWS XP

Czy kiedykolwiek zastanawiałeś się, jak firma Microsoft organizuje kod źródłowy, który składa się na jądro Systemu Windows NT/2000/XP? Zrobiłem też i zdałem sobie sprawę, że informacje są publicznie dostępne. Za każdym razem, gdy firma Microsoft wyda nową kompilację systemu Windows 2000/XP, wyda kilka wersji:

  • wersja "bezpłatna" modułu jednoprocesorowego
  • wersja "bezpłatna" uiniprocessor, która obsługuje ponad 4 GB pamięci fizycznej
  • wersja wieloprocesorowa "bezpłatna"
  • wieloprocesorowa wersja "bezpłatna", która obsługuje ponad 4 GB pamięci fizycznej
  • wersja wieloprocesorowa "sprawdzona"
  • wersja wieloprocesorowa "sprawdzona", która obsługuje ponad 4 GB pamięci fizycznej

W sumie 6 wersji. To, co odróżnia "free" od "sprawdzone" nie jest faktem, że "bezpłatna" wersja jest bezpłatna (nie), ale że "sprawdzona" wersja, która jest zawarta w zestawie CD MSDN, zawiera kod i dane, które pomagają w debugowaniu systemu operacyjnego i sterownika urządzenia. Wersja "bezpłatna" jest po prostu kompilowana bezpłatnie z dodatkowego kodu zawartego w instrukcjach kompilacji warunkowej.

Przykłady dodatkowego zaznaczonego kodu obejmują instrukcje drukowania debugowania, które zgłaszają działanie systemu operacyjnego, bardziej rygorystyczne sprawdzanie spójności parametrów przekazywanych do funkcji trybu jądra ze sterowników urządzeń i instrukcji "assertion". Instrukcja asercyjna weryfikuje założenie dewelopera dotyczące warunków, które mają zastosowanie do obszaru kodu. Jeśli na przykład wskaźnik powinien wskazywać strukturę danych z podpisem identyfikującym, deweloper może wstawić do tego efektu asercji. Co się stanie, gdy założenie twierdzenia zostanie naruszone? To zależy od asercji, ale w przypadku tych zawartych w zaznaczonej kompilacji komunikat wyjściowy debugowania jest drukowany, a następnie jest wyzwalany punkt przerwania debugera, aby debuger jądra uaktywnił (lub, jeśli żaden debuger nie jest aktywny, awaria występuje, że miejmy nadzieję, że generuje plik zrzutu, który można później zbadać).

Aby ułatwić identyfikowanie problemów przechwyconych przez asercji, asercji używanych w sprawdzonej kompilacji wyświetla plik, funkcję i numer wiersza lokalizacji asercji. Mogę pokazać układ drzewa źródłowego, wyodrębniając te ciągi za pomocą narzędzia wyodrębniania ciągów "ciągów" i organizując je w widoku drzewa java.

Wyświetl układ źródłowy systemu Windows XP i dowiedz się więcej na temat asercji w witrynie http://www.sysinternals.com/ntw2k/info/xpsrctree.shtml (pamiętaj, że program IE wyświetli ostrzeżenie o powolnym ładowaniu strony. Odrzuć go i zobaczysz drzewo).

DEBUGVIEW V4.13

DebugView to narzędzie deweloperskie, które umożliwia przechwytywanie danych wyjściowych debugowania z aplikacji lub sterowników w systemie lokalnym lub zdalnym — nawet z wielu systemów jednocześnie. Ta najnowsza wersja dodaje zgodność z systemem Windows XP RC 1. Funkcja DebugView działa w systemach Windows 9x, Windows Me, Windows NT, Windows 2000 i Windows XP.

Pobierz widok DebugView w wersji 4.13 pod adresem http://www.sysinternals.com/ntw2k/freeware/debugview.shtml.

PAGEDEFRAG V2.1, CONTIG V1.41

Ranking w górnej części najpopularniejszych plików do pobrania Sysinternals to PageDefrag i Contig. PageDefrag defragmentuje podstawowe pliki danych systemowych w czasie rozruchu, a Contig jest narzędziem defragmentacji pliku wiersza polecenia. Najnowsze wersje tych narzędzi mają ulepszony aparat defragmentacji dla systemu Windows 2000 i każdy z nich ma pewne własne ulepszenia.

Oprócz defragmentacji plików rejestru i stronicowania najnowsza wersja pageDefrag również defragmentuje pliki dziennika zdarzeń. Podobnie jak Chkdsk w systemie Windows 2000, funkcja PageDefrag ma teraz odliczanie 3 sekund podczas procesu rozruchu, podczas którego można nacisnąć dowolny klawisz, aby pominąć defragmentację.

Co sprawia, że Contig jest unikatowy fakt, że można go użyć do defragmentacji pojedynczych plików, całych katalogów lub całego dysku. Contig ma na celu optymalizację określonych plików, które mają kluczowe znaczenie dla wydajności aplikacji, ponieważ w przeciwieństwie do komercyjnych defragmentatorów, nie konsoliduje wolnego miejsca, aby zapobiec przyszłej fragmentacji na dysku. Oprócz ulepszonego aparatu defragmentacji nowy Contig ma lepsze formatowanie danych wyjściowych zarówno w trybach innych niż pełne, jak i pełne.

Pobierz plik PageDefrag v2.1 pod adresem http://www.sysinternals.com/ntw2k/freeware/pagedefrag.shtml.
Pobierz aplikację Contig w wersji 1.4 pod adresem http://www.sysinternals.com/ntw2k/freeware/contig.shtml.

SYSINTERNALS AT WWW.MICROSOFT.COM

Po raz kolejny oto najnowsza odsłona odwołań sysinternals w artykułach bazy wiedzy Microsoft Knowledge Base (KB) wydanych od ostatniego biuletynu. Spowoduje to wyświetlenie 27 całkowitej liczby odwołań KB do programu Sysinternals.

  • 0x8000FFFF komunikat "Awaria katastrofalna" ze sterownikiem ODBC programu SQL Server
    http://support.microsoft.com/support/kb/articles/Q243/3/49.ASP

  • ACC: Komunikat o błędzie: Składnik ActiveX nie może utworzyć obiektu
    http://support.microsoft.com/support/kb/articles/Q296/2/05.ASP

  • INSTRUKCJE: określanie wersji programu MSXML używanej przez program Internet Explorer
    http://support.microsoft.com/support/kb/articles/Q296/6/47.ASP

  • INSTRUKCJE: Rozwiązywanie problemów z usługą "ADODB. Połączenie ion" Błąd 800a0bb9 z zestawu rekordów DTC
    http://support.microsoft.com/support/kb/articles/Q197/3/23.ASP

  • INFORMACJE: Przewodnik rozwiązywania problemów z 80004005 i innymi komunikatami o błędach
    http://support.microsoft.com/support/kb/articles/Q183/0/60.ASP

  • XADM: zdarzenia o identyfikatorze 3036 i 3026 występują po wypełnieniu magazynu skrzynek pocztowych
    http://support.microsoft.com/support/kb/articles/Q296/1/36.ASP

INFORMACJE WEWNĘTRZNE

WEWNĄTRZ SYSTEMU WINDOWS 2000, INTERAKTYWNY DYSK DVD

Dave Solomon i ja napisałem "Inside Windows 2000, 3rd Edition", oficjalny przewodnik po wewnętrznych i architektury systemu Windows 2000, i cieszymy się, że ogłaszamy zbliżającą się wersję "Inside Windows 2000" samouczek DVD. Samouczek rzeczywiście składa się z 5 DVD z ponad 9 godzin treści składających się z Dave i mnie nauczania wewnętrzne pracy Systemu Windows 2000 w nieformalnym otoczeniu.

Omówione tematy obejmują zarządzanie pamięcią, procesy i wątki, magazyn, systemy plików, sieć i nie tylko, a każdy z nich jest podzielony na 10–20 minut modułów w celu wygodnego przeglądania. Prezentacja zawiera dziesiątki diagramów, pokazów, zrzutów ekranu i list podsumowań, a każdy moduł kończy się pytaniami przeglądowymi w celu przetestowania i umocnienia zrozumienia.

Ostateczne ceny i data wydania nie zostały jeszcze sfinalizowane, ale jeśli chcesz otrzymywać powiadomienia o wydaniu, wyślij wiadomość e-mail z mailto:video@... wyrazem "zainteresowanie" w temacie. Możesz też wyszukać http://www.sysinternals.com/video/ szczegółowe informacje.

OZNACZ DATĘ: RUSSINOVICH I SOLOMON UCZĄ SIĘ RAZEM W AUSTIN

Jeśli interesuje Cię zestaw DVD, na pewno będziesz zainteresowany okazją, aby zobaczyć Dave'a i mnie nauczyć NT wewnętrznych na żywo. Przyjdź do Austin, TX 11-13 grudnia, aby usłyszeć nas przedstawić naszą 3-dniową klasę Architektury wewnętrznej systemu Windows XP/2000/NT. Klasa jest oparta na "Inside Windows 2000, 3rd Edition" i obejmuje podsystemy środowiska, wysyłanie wywołań systemowych, wątki systemowe, uruchamianie i zamykanie, wewnętrzne rejestry, procesy i planowanie wątków, zarządzanie pamięcią, zabezpieczenia, system we/wy, magazyn, NTFS i menedżer pamięci podręcznej. Dzięki zrozumieniu działania wewnętrznego systemu Windows XP i 2000 można korzystać z platformy wydajniej i efektywniej debugować i rozwiązywać problemy.

Gdy są dostępne szczegóły, poinformujemy Cię w biuletynie i w witrynie internetowej, więc bądź na bieżąco!

ZARZĄDZANIE DYSKAMI WIERSZA POLECENIA

Kłanianie się pod presję administratorów systemów, firma Microsoft w końcu wydała skryptowe narzędzie wiersza polecenia do zarządzania dyskami w systemie Windows 2000. Narzędzie DiskPart umożliwia tworzenie woluminów lub partycji, tworzenie i przerywanie dublowania, rozszerzanie woluminów oraz analizowanie szczegółów dysków, woluminów i partycji. Co jest miłe, że DiskPart to bezpłatny plik do pobrania http://www.microsoft.com/downloads/release.asp?ReleaseID=31167.

SLAJDY WINHEC 2001 ONLINE

Jeśli przegapiłeś roczną konferencję inżynierów sprzętowych systemu Windows (WINHEC) firmy Microsoft, nadal możesz wyświetlić slajdy z wielu prezentacji. Odwiedź stronę, aby zapoznać http://www.microsoft.com/winhec/sessions/driver.htm się z listą sesji, opisów i towarzyszących linków do talii usługi Power Point. Prezentacje o ogólnym znaczeniu dotyczą technik debugowania sterowników, sterowników filtrów oraz sterowników miniportu NDIS i sterowników pośrednich.

NOWE INTERFEJSY STEROWNIKÓW FILTRU SYSTEMU PLIKÓW W XP

Jeśli masz dublowanie plików w czasie rzeczywistym, sprawdzanie wirusów dostępu lub hierarchiczny produkt do zarządzania magazynem oparty na sterowniku filtru systemu plików, należy upewnić się, że twoje na bieżąco zmiany wprowadzone przez firmę Microsoft w systemie Windows XP wpływają na Ciebie.

Największa zmiana dotyczy szybkich procedur we/wy, specjalnych funkcji, które sterownik systemu plików rejestruje w taki sposób, aby Menedżer pamięci, Menedżer pamięci i System We/Wy mógł wykonywać we/wy systemu plików i korzystać z sterowników systemu plików bez konieczności generowania środowisk IRPs. Może być zaskoczeniem dla niektórych z Was, aby dowiedzieć się, że istnieją 6 szybkich procedur we/wy, dla których sterowniki filtrów systemu plików są zawsze pomijane. Są to:

FastIoAcquireFileExclusive
FastIoReleaseFile
FastIoAcquireFileForCcFlush
FastIoReleaseFileForCcFlush
FastIoAcquireFileForModWrite
FastIoReleaseFileForModWrite

Menedżer pamięci wywołuje sekcję FastIoAcquireFileExclusive i FastIoReleaseFile przed i po utworzeniu sekcji wspieranej przez plik, a inne podsystemy trybu jądra mogą wywoływać te procedury, aby tymczasowo uniemożliwić tworzenie sekcji. Menedżer pamięci podręcznej wywołuje FastIoAcquireFileForCcFlush i FastIoReleaseFileForCcFlush przed i po opróżnieniu wszystkich lub części zmodyfikowanych danych pliku buforowanych z powrotem na dysk, a Menedżer pamięci wywołuje FastIoAcquireFileForModWrite i przed i FastIoReleaseFileForModWrite po zapisaniu zanieczyszczonych stron zmapowanych plików z powrotem do pliku.

Zamiast bezpośrednio wywoływać szybkie funkcje we/wy, podsystemy trybu jądra używają procedur środowiska uruchomieniowego systemu plików zastępczych (FsRtl). Procedury środowiska uruchomieniowego dla najbardziej szybkich funkcji we/wy wywołują sterowniki filtrów, uzyskując odwołanie do obiektu urządzenia filtru za pośrednictwem wywołania IoGetRelatedDeviceObject obiektu pliku docelowego, a następnie wywołując odpowiednią szybką procedurę we/wy filtru, ale procedury środowiska uruchomieniowego związane z szybkimi wywołaniami we/wy zostały właśnie wymienione zamiast wywołania IoGetBaseFileSystemDeviceObject, co zwraca obiekt urządzenia podstawowego sterownika systemu plików. Powodem, dla którego środowisko uruchomieniowe pomija filtry dla tych funkcji, jest moim zdaniem trochę lame: środowisko uruchomieniowe po prostu nie ufa sterownikom filtrów. Jeśli filtr nie przekazuje tych wywołań do bazowego sterownika systemu plików, powoduje uszkodzenie danych systemu plików i prawie na pewno awarię. Ale istnieje wiele rzeczy, które sterownik filtru może zrobić, aby spowodować awarie.

W systemie Windows XP FsRtl wprowadzono nową funkcję , FsRtlRegisterFileSystemFilterCallbacksktóra filtruje sterowniki używane do rejestrowania wywołań zwrotnych dla tych różnych operacji. Dzięki temu sterowniki filtrów systemu plików mogą badać te operacje, a nawet zakończyć je niepowodzeniem, a środowisko uruchomieniowe może zapewnić, że podstawowy sterownik systemu plików jest zawsze wywoływany, gdy jest to konieczne. Gdzie można znaleźć dokumentację funkcji? Zestaw Windows XP Installable File System Kit, który jest dostępny dla 995 USD od firmy Microsoft: http://www.microsoft.com/ddk/ifskit/XPdefault.asp.

AWARIA SYSTEMU WINDOWS Z POCIĄGNIĘCIEM KLUCZA

Kilka biuletynów temu powiedziałem, jak można dodać ustawienie do rejestru Systemu Windows 2000, które umożliwia zainicjowanie awarii bluescreen działającego systemu z specjalną sekwencją kluczy, umożliwiając analizowanie systemów, które w przeciwnym razie nie odpowiadają na dane wejściowe. Jak o sposobie awarii systemu Windows NT i Windows 2000 bez konieczności ustawiania niczego w rejestrze?

Otwórz okno wiersza polecenia, zmień bieżący katalog na katalog główny dysku rozruchowego (dysk z \winnt nim) i wpisz dir /s. Mimo że jest uruchomiony typ F7+Enter kilka razy, a następnie przerwać listę, wprowadzając klawisze Ctrl-C. Natychmiast napotkasz niebieski ekran lub spontaniczny ponowny rozruch. Fajnie, huh? Niestety, w przeciwieństwie do sztuczki, którą wcześniej zgłosiłem, to nie jest zaprojektowane zachowanie, ale raczej usterka, dla której można znaleźć raport pod adresem http://www.WindowsITsecurity.com/articles/index.cfm?articleID=22037.

W przypadku osób, które przegapiły biuletyn zawierający ustawienie naciśnięcia klawiszy i awarii, dodaj następującą wartość rejestru do rejestru systemu Windows 2000 lub XP zgodnie z instrukcjami w pliku pomocy Narzędzia debugowania Firmy Microsoft:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters\CrashOnCtrlScrll DWORD 1

Uruchom ponownie system i możesz go rozbić, wpisując dwukrotnie blokadę przewijania przy przytrzymaniu lewego klawisza sterowania.

POBIERANIE WSTĘPNE SYSTEMU WINDOWS XP

Firma Microsoft koncentruje się na systemie Windows XP na ulepszaniu środowiska użytkownika końcowego, a użytkownicy uważają dużą część środowiska pracy, z jaką komputer włącza się i można go używać. W związku z tym deweloperzy firmy Microsoft poświęcili wiele wysiłków na poprawę wydajności procesu rozruchu i uruchamiania aplikacji. Rozwiązano to na kilka sposobów: po pierwsze, sterowniki urządzeń szeregowych i sieciowych inicjują się równolegle, w przeciwieństwie do systemu Windows 2000, gdzie inicjują szeregowo. Po drugie, winlogon nie czeka już na usługę stacji roboczej (która sama czeka na usługi sieciowe) stanie się dostępna przed wyświetleniem okna dialogowego logowania i zezwolenie użytkownikowi na logowanie. Na koniec włączyli technikę o nazwie "wstępne pobieranie" do procesu rozruchu i uruchamiania aplikacji. Pokrótce omówię, jak działa wstępne pobieranie i wskażę Ci oficjalny dokument firmy Microsoft opublikowany na temat optymalizacji rozruchu.

Windows (wszystkie wersje z wyjątkiem systemu Win3.1 w trybie rzeczywistym) to system operacyjny stronicowany na żądanie, w którym dane plików i kod są "uszkodzone" w pamięci z dysku, ponieważ aplikacja próbuje uzyskać do niego dostęp. Dane i kod są błędnie w fragmentach "page"- granularnych, w których rozmiar strony jest dyktowany przez sprzęt do zarządzania pamięcią procesora CPU. Strona to 4 KB na x86. Wstępne pobieranie to proces pobierania danych i stron kodu do pamięci przed żądaniem.

Aby dowiedzieć się, co powinno zostać pobrane wstępnie, Menedżer pamięci podręcznej XP monitoruje błędy strony, które są naliczane przez aplikacje podczas uruchamiania. Domyślnie śledzi pierwsze 2 minuty procesu rozruchu i pierwsze 10 sekund uruchamiania aplikacji. Po zebraniu śladu zorganizowanego w błędy pobrane w pliku metadanych tabeli plików głównych NTFS (MFT) (jeśli aplikacja uzyskuje dostęp do plików lub katalogów na woluminach NTFS), odwoływano się do plików i katalogów, do których się odwołuje, powiadamia składnik wstępnego pobierania harmonogramu zadań, sygnalizując nazwany obiekt zdarzenia. Harmonogram zadań wykonuje wywołanie ntQuerySystemInformation z typem informacji określającym zapytanie dotyczące śledzenia i odczytuje je w. Po wykonaniu przetwarzania po przetworzeniu danych śledzenia harmonogram zadań zapisuje je w pliku w obszarze \Windows\Prefetch. Nazwa pliku to nazwa aplikacji, do której stosuje się ślad, po którym następuje kreska i reprezentacja szesnastkowa skrótu ścieżki pliku. Plik ma rozszerzenie ".pf", więc przykładem może być NOTATNIK. EXE-AF43252301.PF.

Wyjątkiem od reguły nazwy pliku jest plik, który przechowuje ślad rozruchu, który jest zawsze nazwany NTOSBOOT-B00DFAAD.PF (zbieżność słowa szesnastkowego "BAADF00D", którego programiści często używają do reprezentowania niezainicjowanych danych). Wszelkie błędy wykonywane w procesach systemowych lub bezczynnych są uważane za część rozruchu, co ma sens, ponieważ jest to proces systemowy, który sterowniki urządzeń ładują i inicjują.

Po uruchomieniu rozruchu lub uruchomieniu aplikacji menedżer procesów wywołuje Menedżera pamięci podręcznej, aby dać mu możliwość wstępnego pobierania. Menedżer pamięci podręcznej wyszukuje w katalogu pobierania wstępnego, aby sprawdzić, czy istnieje plik śledzenia dla danego scenariusza pobierania wstępnego. Gdy menedżer pamięci podręcznej wywołuje ntfs, aby pobrać wstępnie wszystkie odwołania do pliku metadanych MFT, odczytuje w zawartości każdego z przywoływanych katalogów, a na koniec otwiera każdy plik, do którego się odwołuje i używa Menedżera pamięci do odczytu w dowolnych danych i kodzie określonym w śladzie, który nie jest jeszcze w pamięci. Menedżer pamięci inicjuje wszystkie operacje odczytu asynchronicznie, a następnie czeka na ich ukończenie przed kontynuowaniem uruchamiania aplikacji.

W jaki sposób ten schemat zapewnia korzyść z wydajności? Odpowiedź polega na tym, że podczas normalnego rozruchu lub uruchamiania aplikacji kolejność błędów występuje tak, że niektóre strony są wprowadzane z jednej części pliku, a następnie kilka z innego pliku, a następnie niektóre z katalogu itd. To przeskoczenie odnosi się bezpośrednio do skoków na dysku, a firma Microsoft dowiedziała się dzięki analizie, że czas wyszukiwania dysku jest dominującym czynnikiem spowalniającym rozruch i uruchamianie aplikacji. Wyszukiwanie jest praktycznie wyeliminowane podczas wstępnego pobierania odczytów w danych z określonego pliku lub katalogu jednocześnie przed przejściem do innego.

Aby zminimalizować dalsze poszukiwania, co trzy dni lub tak Harmonogram zadań organizuje listę plików i katalogów w kolejności, w której są one przywołyane podczas rozruchu lub aplikacji, i przechowuje listę w pliku o nazwie \Windows\Prefech\Layout.ini. Następnie uruchamia defragmentator systemu z opcją wiersza polecenia, która nakazuje defragmentatorowi defragmentację na podstawie zawartości pliku zamiast wykonywania pełnego defragmentowania. Defragmentator znajduje ciągły obszar na woluminie wystarczająco dużym, aby przechowywać wszystkie wymienione pliki i katalogi, a następnie przenosi je do obszaru, tak aby były przechowywane jeden po drugim.

Są to podstawy schematu pobierania wstępnego XP, który firma Microsoft zgłasza znacznie przyspiesza proces rozruchu (można zobaczyć, że xp rozruch jest znacznie szybszy niż Windows 2000). Więcej informacji na temat pobierania wstępnego i innych ulepszeń szybkiego rozruchu można znaleźć w białej księdze na stronie http://www.microsoft.com/hwdev/fastboot/. Również Dave Solomon i ja rozpoczął prace nad XP-revision "Inside Windows 2000" (do publikacji w połowie wiosny), a znajdziesz jeszcze bardziej szczegółowy opis tam.

POŁĄCZENIA SYSTEMU WINDOWS .NET

Ci z was, którzy przegapili mnie w TechEd, mogą usłyszeć mnie mówić na konferencji Windows .NET Połączenie ions w Scottsdale w Arizonie 3 października. Udostępniam prezentacje w analizie zrzutu awaryjnego systemu Windows NT/2000 i zmianach jądra w systemie Windows XP. Inni prelegenci na konferencji obejmują kolegów Windows 2000 Magazine współtworzenia redaktorów Mark Minasi i Sean Daily. Daj mi znać, jeśli weźmiesz udział w konferencji z biuletynu.

Możesz zobaczyć abstrakcje dla moich rozmów i znaleźć link do witryny windows .NET Połączenie ions na stroniehttp://www.sysinternals.com/ntw2k/info/talk.shtml.

CO SIĘ DZIEJE

MOJE ŚRODOWISKA ITANIUM

Firma Microsoft wypożyczyła mi system Itanium, abym mógł przenosić narzędzia Sysinternals do Win64. Maszyna ma imponujące specyfikacje, w drodze: 2 procesory 733 MHz i 8 GB (!) pamięci RAM. Następnym razem powiem ci o moich środowiskach przenoszenia, w tym o zmianach, które musiałem wprowadzić do różnych narzędzi, tak aby działały na Win64.


Dziękujemy za przeczytanie biuletynu Sysinternals.

Opublikowano poniedziałek, 20 sierpnia 2001 19:03 przez ottoh

[Archiwum biuletynów ^][< Wolumin 3, Numer 1][Wolumin 4, Numer 1 >]