KdokolivVětšina aplikací reagující na uživatele běží v Normal. Pokud uživatel cokoliv udělá myší nebo klávesnicí, Windows navíc zařazují priority boost, kdy aplikace, jíž se to týká může dostat dočasně vyšší prioritu, než ostatní. Aplikace na popředí (jenž má aktivované aspoň jedno okno) navíc má prioritu 9 (Normal = 8). Každopádně jsem chtěl říct, že odezvu dělají aplikace, které když něco uděláš, téměř okamžitě přeruší vše co je Below normal a níže. Priority totiž ve Win2000 a výše jsou skutečně priority, ne stupeň přidělení procesoru (jako ve Win98). Pokud běží něco souvisle na nějaké prioritě, vlákna na nižších prioritách by se teoreticky nedostali nikdy ke slovu. Ano, můžeme tedy uvažovat, že hodně idle procesů může ovlivnit odezvu, protože Win2000 sem tam provedou náhodný výběr procesu s nižší prioritou, aby nedošlo k úplnému vyhladovění.
PS: Video kompresím na Idle běžně a žádné zpomalení nepozoruji. Naopak je super, že prostě video je schopno se kompresit i teď, mezi jednotlivými stisky kláves.
Mimochodem, pozor u Win2000+, na IO. Taková aplikace v Idle prioritě může dost ovlivnit odezvu, pokud přetíží I/O (disk, file cache, atd). Procesy s vyššími prioritami pak mají smůlu, musí na I/O čekat, bez ohledu na jejich prioritu. Navíc čekání na zámky a události nemají prioritní fronty. V takových případech je priorita naprosto k ničemu, a celý systém jde do háje jen díky nějakému blbému procesu na pozadí (například Indexing service, nebo AVG). |