Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.11.2009, 00:15   #1
nazavrik
Форумчанин
 
Аватар для nazavrik
 
Регистрация: 01.09.2008
Сообщений: 178
По умолчанию Уточнение по системным процессам

Добрый вечер всем!

В книге Дж.Рихтера рассматривается класс по работе с функциями библиотеки ToolHelp. Метод нахождения информации о первом процессе в снепшоте выглядит так:

Код:
inline BOOL CToolhelp::ProcessNext(PPROCESSENTRY32 ppe) const {

   BOOL fOk = Process32Next(m_hSnapshot, ppe);
   if (fOk && (ppe->th32ProcessID == 0))
      fOk = ProcessNext(ppe); // Remove the "[System Process]" (PID = 0)
   return(fOk);
}
В нем делается проверка на равенство нулю идентификатора процесса, а затем дается комментарий: "Remove the "[System Process]" (PID = 0)". Это делается для удаления системных процессов? ID системных процессов всегда равны 0?
Быть радикальным - значит понять вещь в её корне. К.Маркс
nazavrik вне форума Ответить с цитированием
Старый 02.11.2009, 01:00   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Это делается для удаления системных процессов?
это процесс Система...то есть она сама.
Цитата:
ID системных процессов всегда равны 0?
нет только самой системы...
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.11.2009, 01:07   #3
nazavrik
Форумчанин
 
Аватар для nazavrik
 
Регистрация: 01.09.2008
Сообщений: 178
По умолчанию

Спасибо! Уточню:

Цитата:
System Idle Process — процесс ядра операционной системы семейства Windows, представляющий собой отдельный поток (или несколько потоков на многоядерных системах), работающий тогда, когда процессор не выполняет других потоков. Например, в системе может не быть работающих потоков, либо все они могут выполнятся на другом процессоре.
Вот для таких процессов в Windows PID равен 0.
Быть радикальным - значит понять вещь в её корне. К.Маркс
nazavrik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
небольшое уточнение Golovastik Общие вопросы C/C++ 5 17.07.2009 22:22
Маленькое уточнение prikolist Общие вопросы C/C++ 4 27.04.2009 16:20
Запрет процессам при загрузке WebBrowser SibBear Общие вопросы Delphi 5 17.03.2009 12:30
Уточнение корней при решении слау? RealNt Помощь студентам 3 29.10.2007 16:17