Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.144.124.232] |
|
Страницы: (4) 1 [2] 3 4 все ( Перейти к последнему сообщению ) |
Прикр. сообщ.
#1
,
|
|
|
Скриншоты Process Explorer от Sources.ru Итак, в проект ищутся желающие поковыряться в недрах win, и создать проект, позволяющий изучать процессы от А до Я. Цель проекта - Отобразить максимально возможную информацию о процессах и потоках: -- Структура процесса: Потоки, модули, объекты ядра, объекты GUI, принадлежащие ему; -- Потребление памяти, CPU и прочих ресурсов; -- Управление процессом: запуск, остановка, управление потоками, модулями, объектами ядра и GUI. Структура Проект состоит из трех составляющих: - GUI-приложение, с которым работает пользователь; - Прослойка между GUI-приложением и драйвером ядра: библиотека DLL, имеющая абстрактный от ядра интерфейс, с которым работает GUI-приложение; - Драйвер ядра, собирающий и управляющий объектами, недоступными из режима USER (3 кольцо). GUI-приложение Его проект непосредственно представлен на скриншотах выше (т.е. на скриншотах только проект, который в конечном варианте скорее всего будет сильно отличаться от представленного). - Главное окно отображает совокупную информацию по процессам и ресурсам системы; - Диалоговое окно процесса содержит в себе несколько категорий: -# Системная информация: -- Совокупные данные по процессу (время запуска, потребление физической и виртуальной памяти, данные исполняемого модуля и т.д.); -- Модули, загруженные процессом; -- Потоки; -- Привилегии; -- Использование сети; -- Службы, содержащиеся в процессе; -- Прочие данные. -# Объекты ядра: -- Полный список объектов ядра, принадлежащих процессу; -- Объекты реестра (ключи); -- Объекты ФС (файлы, директории); -- Объекты синхронизации; -- Прочие объекты. -# Объекты GUI: -- Окна; -- Таймеры; -- Контекстные устройства, кисти, шрифты и т.п. -- Хуки; -- Прочие данные (полный список приведен в структурах ядра). !!! Примечание: в GUI-приложении НЕ используются ресурсы типа RT_DIALOG. Все диалоги создаются посредством класса CDialog (на базе DialogBoxIndirectParam), весь текст на которых берется уже из ресурсов. Библиотека абстракции от ядра Содержит интерфейс обмена данными между GUI-приложением и ядром. Т.е. предоставляет API для извлечения и изменения данных объектов ядра и GUI. Т.е. системное API будет все тут, все данные по системе, процессам, потокам, объектам ядра и GUI будет предоставлять именно эта библиотека, GUI-приложение будет использовать системное API лишь для отображения собственного оконного интерфейса. Драйвер режима ядра Содержит в себе API для работы с ядром: извлечение и управление данными ядра. Изначально общение с DLL планировалось сделать через SSDT, но не срослось, и поэтому используются CTL-коды. Текущее положение проекта Находится в стадии "набросков". Т.е. общая картина представленного предложения прослеживается, но весьма и весьма размыта. Если найдутся желающие, то подниму SVN и даю исходники (далекие, кстати, от идеала) и их описание. Добавление идей и/или поправка имеющихся приветствуются. Т.е. это мое предложение заключается в наборе команды, готовой заняться таким довольно весомым, но бесплатным и открытым проектом, который в теории переплюнет PE от Руссиновича. Достаточно иметь желание и уметь разбираться во всяких "системных штучках". Соответственно, все комментарии приветствуются. Пока все. |
Сообщ.
#16
,
|
|
|
Urich, если есть интерес заняться, то можем обсудить в ПМ или icq, что есть и что нужно.
|
Сообщ.
#17
,
|
|
|
ALXR, а не удобнее создать группу в Скайпе? И инвайтить туда желающих по мере появления..
|
Сообщ.
#18
,
|
|
|
Цитата Исходники жесточайшим образом грохнул (вместе с бинарниками). Привлечь бы тебя за порчу имущества. |
Сообщ.
#19
,
|
|
|
Цитата B.V. @ ALXR, а не удобнее создать группу в Скайпе? И инвайтить туда желающих по мере появления.. Не умею пользоваться. Да и пока не досуг изучать. |
Сообщ.
#20
,
|
|
|
Проект заглох?
|
Сообщ.
#21
,
|
|
|
Цитата ALXR @ Не умею пользоваться Там нечего особо уметь, интерфейс достаточно простой. А плюс в том, что в Скайпе очень многие наши тематики |
Сообщ.
#22
,
|
|
|
B.V., а поподробнее об ентом где узнать? (а то я как всегда не вкурсах..)
|
Сообщ.
#23
,
|
|
|
Цитата Krid @ а поподробнее об ентом где узнать? Здесь, например: Чат игроманов (и не только) Исходников в Скайпе. (сообщение #2593349) |
Сообщ.
#24
,
|
|
|
Потихоньку впиливаем под Win7.
|
Сообщ.
#25
,
|
|
|
Можно глупый вопрос? Я понимаю мол хардкорить в коде. Но с формами то зачем хардкорить? )) заняться нечем?))
|
Сообщ.
#26
,
|
|
|
Тут подумалось - а зачем вообще изобретать лисопед??
ИМХО, лучше уж сделать что-нибудь типа Task Manager Extension Помнится, когда-то я его юзал (+ ещё кое-чего туда добавил) - довольно удобная чтука была. Да и намного меньше кода нужно писАть, поскольку это как-бы "плагин" к стандартному TaskManager'у. Ну а в последнем основная функциональность уже реализована. И задача сводится к тому, чтобы просто добавить что-то своё, не переписывая по-новой нормально работающий, отлаженный код. |
Сообщ.
#27
,
|
|
|
Killbrum, где хардкод? Какой хардкод? Никакого хардкода и костылей там нет.
Krid, TME это как раз хардкод. Выглядит прилично, но удачной реализации быть не может. |
Сообщ.
#28
,
|
|
|
Цитата ALXR @ TME это как раз хардкод. Интересно, где это ты хардкод увидел? (или ты имеешь ввиду, что TME в систему встраивается?) Цитата ALXR @ удачной реализации быть не может Интересная мысль. И главное, полностью расходится с реальностью ЗЫ Вообще не понятно - зачем плодить клоны Process Explorer'а (которых и так немеряно)?? Вот ты можешь объяснить мне внятно, зачем нужен этот твой очередной клон PE? Не лучше ли будет сделать что-нибудь по-оригинальнее? |
Сообщ.
#29
,
|
|
|
Цитата Krid @ Интересная мысль. И главное, полностью расходится с реальностью ЗЫ Вообще не понятно - зачем плодить клоны Process Explorer'а (которых и так немеряно)?? Вот ты можешь объяснить мне внятно, зачем нужен этот твой очередной клон PE? Зачем? Цитата Krid @ Не лучше ли будет сделать что-нибудь по-оригинальнее? Мне (ну и, похоже, не только мне) хочется покопаться во всех этих делах. Кроме того, наличие исходных текстов будет существенным плюсом ко всему этому делу. |
Сообщ.
#30
,
|
|
|
Цитата ALXR @ Мне (ну и, похоже, не только мне) хочется покопаться во всех этих делах. Кроме того, наличие исходных текстов будет существенным плюсом ко всему этому делу. Не, ну с этим, конечно не поспоришь. Вещь, конечно же, очень полезная в плане обучения, изучения механизмов работы системы, ядра, etc. Наверное, нет такого программера, который бы не делал какой-нибудь свой taskman или PE (или хотя бы не думал об этом).. Просто сначала не очень понял - какова практическая цель всего этого. ЗЫ но всё-таки обрати внимание на TME. Он же с исходниками и содержит массу полезного кода.. |