1 Procesy i wątki dla dociekliwychGrzegorz Tworek, GK Neuca MVP, MCP, MCSE, MCDBA, MCT, MCTS, MCITP, MCSA, MTA
2 Agenda Procesy Wątki Kolejkowanie Priorytety Źródła wiedzy i narzędzia
3 O czym nie porozmawiamyO programowaniu O włóknach (fibers) O zadaniach (jobs) O bezpieczeństwie O obiektach systemowych O zarządzaniu pamięcią w systemie O jądrze
4 Procesy i wątki
5 Wątki – wstęp Ciągi instrukcji do wykonania „Ważniejsze” od procesówWchodzą w skład procesów Schowane przed administratorem Ciąg dalszy nastąpi..
6 Procesy dla IT Pro Definicja dla IT Pro: Istotne cechyZbiór wątków + ich pamięć Istotne cechy 32/64 bit PID Priorytet Koligacja (affinity) Właściciel Sesja
7 Charakterystyka procesuPrywatny obszar pamięci Plik wykonywalny Uchwyty (handles) Struktury związane z bezpieczeństwem Opis w systemie
8 Demo #1 Proces w systemie
9 Start procesu Weryfikacja specjalnych okolicznościOtwarcie pliku wykonywalnego Utworzenie obiektów w systemie Zainicjowanie struktur Utworzenie wątku Powiadomienie systemu Start wątku
10 Demo #2 Start procesu
11 Wątki Pełny dostęp w ramach procesu „Lżejsze” niż procesyPamięć Uchwyty „Lżejsze” niż procesy Uruchamianie Zamykanie Trudniejsze dla programistów
12 Demo #3 Wątki w procesie
13 Kolejkowanie i Priorytety
14 Kolejkowanie wątków Stany wątków Ready (1) Standby (3) Running (2)Waiting (5)
15 Demo #4 kolejkowanie wątków
16 Priorytety dla niezaawansowanychRealtime High Above Normal Normal Below Normal Low (Idle)
17 Priorytety dla zaawansowanychLiczba 0-31 0 do czyszczenia pamięci 1-15 do normalnych zastosowań 16-31 „realtime” Priorytet bazowy procesu Priorytet początkowy wątku Priorytet bieżący wątku
18 Zasady kolejkowania Scheduler przegląda wątki w stanie „ready”Przynależność do procesu nie ma znaczenia Scheduler wybiera wątek z najwyższym priorytetem Scheduler wybiera procesor „Procesor idealny” Maska Wątek jest wykonywany Do końca kwantu czasu Dopóki sam nie zrezygnuje Dopóki nie przyjdzie ważniejszy
19 Demo #5 Priorytety w akcji
20 Narzędzia i wiedza
21 Wiedza microsoft.com Egzamin 70-660 http://zine.net.pl/blogs/mgrzeg/Dev center – hardware Sysinternals Egzamin TS: Windows Internals
22 Narzędzia http://live.sysinternals.com/ WinDbg Process HackerProcess Explorer Process Monitor livekd WinDbg Process Hacker Performance Monitor Windows Performance Toolkit
23 Procesy i wątki dla dociekliwychGrzegorz Tworek, GK Neuca