+ Ответить в теме
Показано с 1 по 3 из 3.

Тема: Работа с CMOS и RDTSC

  1. #1
    Andeserg is on a distinguished road
    Регистрация
    22.05.2010
    Сообщений
    2

    Работа с CMOS и RDTSC

    Не подскажите, каким образом можно сопоставить временные каналы 70h и 71h и значения счетчика временных тиков процессора (посредством команды RDTSC выводимых на экран). Как появятся дельные советы, выложу еще пару вопросов по данной теме. Идея заключается в следующем : мы получаем показания счетчика, и имеем текущее время из cmos . В момент фиксации и , например, спустя 60 секунд мы должны просмотреть изменилось ли время или нет. А именно - показатели cmos и таймера. Есть ли расхождения. Так же интересен вопрос - возможно ли как то вести подобие истории работы системы(процессов) имея шкалу времени (миллисекунды, секунды, минуты, дни, месяца) и как ее возможно организовать в ассемблер.

    Рассматриваю также помощь на платной основе... Уже отчаялся диплом стоит , преподаватель грызёт *facepalm*

  2. #2
    Andeserg is on a distinguished road
    Регистрация
    22.05.2010
    Сообщений
    2

    Re: Работа с CMOS и RDTSC

    Видимо ранее был неточен в формулировке задачи) вот несколько более точное описание проблемки.


    Используя регистр RDTSC необходимо в программном варианте реализовать следующее:
    Всё довольно просто - суть задачи такова: если программу трассируют под отладчиком, то естественно количество тактов увеличивается. Поэтому необходимо поймать время которое без отладчика, сравниваем его с текущим и если больше, значит отладчик есть .
    То есть сравнение времени до попадания отладчика в работу системы, и текущего времени( допустим отладчик уже в системе).
    + реализовать необходимо так, чтобы шла своеобразная проверка - если есть отладчик в системе, писалось бы сообщение , нападобие * меня атакуют* , если же все тихо - то * система работает нормально*, или что-то в этом роде.
    В теории как будет все выглядеть мне понятно, а код никак не получается сваять. Вот и ищу помощи извне. Всё еще рассмотрю платный вариант работы под заказ.( имеется некая модель операционной системы и идеальным будет вариант вклинивания туда этого момента).

  3. #3
    system architect somewhere will become famous soon enough somewhere will become famous soon enough Аватар для somewhere
    Регистрация
    31.08.2006
    Адрес
    71 RUS
    Сообщений
    1,285

    Re: Работа с CMOS и RDTSC

    RDTSC - это не регистр, это - команда. А сам метод, вероятно, должен основываться на предварительном замере времени выполнения конкретных процедур и сравнения затем в моменты их вызова с уже замерянным, в момент старта проги, значением. Очевидно, что процедуры должны вызываться на протяжении всего кода. Такими могут быть, например, функции выделения памяти или же распиханые по всей программе специальные Check-функции. Защитить весь код такими образом невозможно. Почему? Потому что невозможно предварительно узнать время выполнения всей очереди команд или какой то выборочной части, т.к. на разных процессорах число тактов будет разное и может отличатся от шаблона (не только шаблона, но и предварительного замера в начале) на сотни процентов. Даже без отладчика время выполнения одного и того же кода на одном и том же процессоре может варьироваться до 50-70%. То есть на первом проходе код выполнился за Х тактов, на следующем за 0.8Х, а на третьем может даже 1.7Х
    Последний раз редактировалось somewhere; 11.06.2010 в 10:43.
    It's a long way to the top if you wanna rock'n'roll

+ Ответить в теме

Похожие темы

  1. Разовая работа для программиста. Работа c Web.
    By 3apadlo in forum Поиск работы и заказов.
    Replies: 0
    Последнее сообщение: 05.02.2007, 16:34
  2. Разовая работа для программиста. Работа с Web.
    By 3apadlo in forum Вакансии и заказы для программистов
    Replies: 0
    Последнее сообщение: 05.02.2007, 16:32

Ваши права в разделе

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения