Это дополнительный вопрос к conhost.exe и csrss.exe
В настоящее время я работаю на компьютере с Windows 7 x64 и использую относительно высокопроизводительный графический процессор (GTX 970 4 ГБ). Windows Aero включен. Я использую Process Explorer для изучения этого случая.
У меня запущены два процесса csrss.exe
, оба в качестве SYSTEM, один в сеансе 0 и один в сеансе 1. У меня есть файлы csrss.exe
, оба в правильных каталогах. Используя Process Explorer, я вижу, что мой графический процессор используется только csrss.exe
. Сессия 1 csrss.exe
использует его. При более внимательном рассмотрении потоков процесса обнаруживаются следующие файлы .dll
:
Cdd.dll
Winsrv.dll
Csrsrv.dll
Cdd.dll - канонический драйвер дисплея особенно важен здесь, как описано ниже в некоторой полезной информации ниже, которую любезный пользователь смог предоставить для меня.
В DWM вызовы GDI перенаправляются для использования программного драйвера Canonical Display Driver (cdd.dll), который представляет собой средство визуализации программного обеспечения.
Так что, возможно, что-то в csrss.exe
фактически перенаправляет вызовы в cdd.dll
. Подтверждено далее, вернувшись к первой статье Википедии: вместо системного вызова библиотеки Win32 (kernel32.dll, user32.dll, gdi32.dll) отправляют межпроцессный вызов процессу CSRSS, который выполняет большую часть фактической работать без ущерба для ядра.
Таким образом, вызовы приложения к gdi32.dll
(то есть к любому компоненту графического интерфейса Windows, такому как кнопки, полосы прокрутки, текст и т.д.) В конечном итоге попадают в csrss.exe
через IPC, который csrss.exe
перенаправляет в cdd.dll
.
Таким образом, dwm.exe
, который, как я предположил, использовал бы графический процессор, вместо этого каким-то образом отображается через csrss.exe
.
Так что это хотя бы частично объясняет историю. В режиме ожидания на рабочем столе использование графического процессора составляет> 0,01%. Однако, если я взаимодействую с некоторыми элементами пользовательского интерфейса программы, например, при наведении курсора на графы графического процессора для отображения стандартного пользовательского интерфейса Windows или при наведении указателя мыши на части пользовательского интерфейса Steams (Steamworks - клиент drm для видеоигр), использование графического процессора для csrss.exe
увеличивается, возможно, на несколько процентов, и в зависимости от того, что происходит, например, быстрое наведение курсора на графики Process Explorer, может доходить до 15-20%.
Я выбрал рассматриваемый процесс csrss.exe
и нажал Ctrl+H. Я нашел темы , связанные с procexp64.exe
steamwebhelper.exe
(отображает веб - интерфейс для steam.exe
который также под этим csrss.exe
explorer.exe
dwm.exe
и все , что казалось , что будет создавать окна / акции UI элементы.
Я попробовал безопасный режим и создал новую стандартную учетную запись пользователя, но такая же активность происходит.
У меня вопрос, нормально ли это? Csrss.exe, кажется, увеличивает дельту цикла при перемещении мыши и при наведении курсора мыши на весь интерфейс. Является ли причина зависания над определенными аэроэлементами или программами, такими как steam, которые могут использовать определенные элементы windows, вызывая рост использования графического процессора под csrss.exe
потому что это процесс, вызывающий cdd.dll
? Как я уже сказал, на холостом ходу использование графического процессора ничтожно мало, что, я думаю, не подтверждает никакой вредоносной активности. Я не испытываю проблем с производительностью в играх высокого уровня с включенным Aero, но мне интересно, нормально ли это для высокопроизводительных компьютеров.
Должен ли csrss.exe
использовать GPU, подобный этому, при вызове таких вещей, как cdd.dll
и winsrv.dll
?
Технические характеристики:
- I5 3570k
- GTX 970 4 ГБ
- 8 ГБ ОЗУ
- Windows 7, 64-битная