2010-12-13 12 views
5

Czy istnieje szczegółowy opis opisujący wszystkie procesy, które występują na poziomie .NET podczas uruchamiania pliku wykonywalnego? Podobnie jak foldery, do których uzyskiwany jest dostęp, procesy, które mogą być uruchomione, osoby, które działają jako itp., Które mają miejsce poza aplikacją?Proces wykonywalny .NET przechodzenie przez

+0

Pytasz o zachowanie CLR? – Amy

Odpowiedz

3

[Nie jestem w 100% jasny, co masz na myśli przez procesy. Jeśli masz na myśli wewnętrzne procedury CLR, zastosowanie ma poniższa odpowiedź. Jeśli masz na myśli procesy OS poza CLR, nieważne!]

Nie wiem, czy istnieje szczegółowy przewodnik. W każdym razie jest to skomplikowane. Uruchamiając się, CLR czyta wiele wpisów rejestru, machine.config, app.config, itp., Rozwiązuje, które wersje DLL mają być ładowane (aka .NET Fusion), itp.

Najlepszy sposób na zdobycie ogromnych szczegółów na ten temat jest uruchomienie aplikacji .NET pod ETW (Event Tracing for Windows). Możesz włączyć rejestrowanie zdarzeń systemu operacyjnego, aby obserwować wszystkie interakcje w systemie operacyjnym (odczyty wpisów do rejestru, odczyty plików, ładowanie bibliotek DLL itd.), A także można włączyć rejestrowanie zdarzeń na poziomie CLR. Następnie (przetwarzanie końcowe) możesz zestawiać (sortować według czasu) wszystkie te informacje, aby uzyskać w pełni dokładny harmonogram wydarzeń. Używałem tej oprzyrządowania do mierzenia i dostosowywania czasu uruchamiania aplikacji CLR.

Zobacz także http://msdn.microsoft.com/en-us/library/ff357719.aspx, aby uzyskać informacje o zdarzeniach CLW ETW.

Happy hacking!

Powiązane problemy