На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются.
4. Используйте теги [ code=cpp ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Старайтесь формулировать свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной и более давности без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта (C++) user posted image FAQ Форума user posted image Наши Исходники user posted image Поиск по Разделу user posted image MSDN Library Online (Windows Driver Kit) user posted image Google

Ваше мнение о модераторах: user posted image B.V.
Модераторы: B.V.
Страницы: (4) [1] 2 3 ... Последняя » все  ( Перейти к последнему сообщению )  
> Process Explorer от Sources.ru
    Скриншоты Process Explorer от Sources.ru
    user posted image
    user posted image
    user posted image
    user posted image
    user posted image
    user posted image
    user posted image
    user posted image
    user posted image
    user posted image


    Итак, в проект ищутся желающие поковыряться в недрах 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 от Руссиновича. :) Достаточно иметь желание и уметь разбираться во всяких "системных штучках". Соответственно, все комментарии приветствуются.

    Пока все. :)
      скриншоты есть, а прога хде ???
        ALXR, судя по скриншотам, непростая и трудоемкая работа.
        (Весьма полезный инструмент. Особенно, когда есть код и в любую секунду можешь добавить любой функционал)
        Мне понравилась. Молодец ! :)
          А где сама программа то? :wacko:
            Исходники жесточайшим образом грохнул (вместе с бинарниками). По оставшимся кускам допилил заново с совместимостью под Win7 и... терпение кончилось. :) Выложил скриншоты, еще планировал добавить описание и предложение совместно заняться проектом, но это было еще до того, как первый вариант ушел в небытие. Сейчас руки не дойдут и поэтому здесь висит такой загадочный топик. :)
            Сообщение отредактировано: ALXR -
              А красиво... :rolleyes:
                ALXR, вот тебе и дополнительная мотивация довести руки до этого топика :)
                  Готов выложить описание проекта:
                  - Что требуется от проекта;
                  - Что сделано;
                  - Структура проекта;

                  Если найдется хотя бы 1-2 человека, готовых принять в нем участие и тогда дадим свой ответ Руссиновичу. :)
                  Задачи будут примерно такие:
                  - Ковыряние недр виндовс;
                  - Ковыряние в pdb различных версий виндовса;
                  - Применение полученных знаний в проекте.

                  Часть оной документации уже имеется в виде исходных текстов с хоть и скудными, но комментариями.
                  Сообщение отредактировано: ALXR -
                    Ты сначала выложи, а потом, думаю, желающие оценят имеющийся материал и план, и примут решение, будут участвовать или нет.

                    Отличный шанс для керо, лео и Рипли проявить лучшие свои качества :)
                      Проекту не помешает штатная русификация.
                        B.V., дал описание. :)
                          Цитата ALXR @
                          Т.е. это мое предложение заключается в наборе команды, готовой заняться таким довольно весомым проектом, который в теории переплюнет PE от Руссиновича.

                          Что ж ты сразу пугаешь. Уточнил бы, что проект планируется бесплатный и открытый, без жесткого отбора по уровню знаний и т.д.
                          Со своей стороны, я даже могу пообещать рассмотреть какие-то поощрения, а возможно, и призы за активное участие в этом проекте. Все-таки, проект от Sources.ru, и ресурс не должен оставаться безучастным :)
                            Цитата ALXR @
                            Т.е. это мое предложение заключается в наборе команды, готовой заняться таким довольно весомым, но бесплатным и открытым проектом, который в теории переплюнет PE от Руссиновича.


                            Цитата B.V. @
                            Что ж ты сразу пугаешь.


                            Не. Он не пугает - он очень коварно и грамотно заманивает ! :)
                            Я серьезно :)

                            У меня сейчас загрузка жуткая (ни в сказке сказать, ни пером описать) :(
                            И это будет продолжаться еще, как минимум, полтора месяца.
                            А поучаствовать в попытке "переплюнуть Руссиновича" ну очень хочеться O:-)
                            Плюс к этому, это шикарная возможность получить хорошие "скилы" в С, С++
                            P.S.
                            Ну и, как я писала выше, это весьма полезный инструмент в домашнем хозяйстве :)

                            P.P.S.
                            Меня, пока со счетов не сбрасывайте, может сумею придумать, как выкроить время.
                              Да тут и так никто никуда не торопится. Так что не факт, что еще будем плеваться, чтобы переплюнуть.
                                ALXR
                                Как процесс? Чем можно помочь?

                                пс. картинки понравились:)
                                  Urich, если есть интерес заняться, то можем обсудить в ПМ или icq, что есть и что нужно. :)
                                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                  0 пользователей:


                                  Рейтинг@Mail.ru
                                  [ Script execution time: 0,0378 ]   [ 19 queries used ]   [ Generated: 28.03.24, 21:37 GMT ]