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
Odpowiedz
[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!
- 1. Przechodzenie przez końcówki instrukcji Linq
- 2. Przechodzenie przez katalogi hdfs
- 3. Przechodzenie przez ostatni element "przefiltrowanego"
- 4. Jak zabić proces potomny przez proces nadrzędny?
- 5. przechodzenie przez kolumny w wyzwalaczu mysql
- 6. przechodzenie przez komórki w określonym zakresie
- 7. Przechodzenie przez kod źródłowy preludium wywołuje dziwność
- 8. Proces zabity przez SIGKILLa
- 9. . Proces budowania .NET i łączenia
- 10. NET licznika wydajności - proces (w3wp) \% Czas procesora
- 11. Procesor czasu użyty przez proces
- 12. Przechodzenie przez kod źródłowy za pomocą rozszerzenia Windbg SOS
- 13. Jak mogę debugować plik wykonywalny .NET na poziomie MSIL?
- 14. Rozpocznij proces .Net jako inny użytkownik
- 15. funkcjonalnie przechodzenie drzewa C#
- 16. Rekursywnie przechodzenie przez drzewo katalogów i wyświetlanie nazw plików
- 17. Najbardziej efektywny sposób na przechodzenie przez macierz Eigen
- 18. Przechodzenie przez dane CMSampleBufferRef do gniazda wyjściowego audio
- 19. Czy przechodzenie przez odniesienie Unikaj tworzenia nowej zmiennej?
- 20. Przechodzenie przez kod C++ na papierze, jak by to zrobić?
- 21. Czy możliwe jest przechodzenie przez obiekt klasy C#?
- 22. Przechodzenie obrazu przez WCF i wyświetlanie ich w datagrid WPF
- 23. Przechodzenie do sedna sprawy
- 24. Odczytywanie pliku używanego przez inny proces
- 25. Uśpij proces przez losowy czas - Erlang
- 26. System.IO.IOException: plik używany przez inny proces
- 27. Java. Proces prowadzona przez Runtime.getRuntime() Zabij exec()
- 28. Jak zabić proces uruchamiany przez wątek potomny?
- 29. Jak przejść przez proces oceny wyrażeń Pythona?
- 30. Plik wykonywalny sterownika musi być ustawiony przez właściwość systemową webdriver.ie.driver
Pytasz o zachowanie CLR? – Amy