информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Портрет посетителяСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Microsoft обещает радикально усилить... 
 Ядро Linux избавляется от российских... 
 20 лет Ubuntu 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / beginners
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Господа, будьте снисходительны, не бросайтесь сразу штрафовать за, как вам кажется, глупые вопросы - beginners на то и beginners.
sysenter - что это 02.08.07 14:59  
Автор: Андрей Статус: Незарегистрированный пользователь
<"чистая" ссылка>
При дизасемблировании делфовским дебагером свою прогу наткнулся на эту функцию дальше она по ней не переходит. Что это такое
Это точка перехода в иной мир ;-))))))))) 03.08.07 08:53  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 03.08.07 08:59  Количество правок: 2
<"чистая" ссылка>
Ядро операционной системы защищено, и крутится процессором в своей "небожительской" части. Когда программа пользователя хочет обратиться к службам операционной системы (к примеру, прочитать файл), она вызывает соотв. функцию API, которая реализована, к примеру, в kernel32.dll. Там ваш вызов немножко дообрабатывается, и, наступает момент, когда в пользовательском режиме уже сделать ничего невозможно, а необходимо вызвать соотв. функцию ядра. И вот, виндовозная dll заботливо укладывает нужные параметры в регистры микропроцессора по заранее условленным M$ законам, как то номер службы, дескриптор файла и т.п., и вызывается SYSENTER, великий и ужасный. Разверзаются небеса, и программе "кажется", что данные из файла чудесным образом очутились в заказанной программой области памяти. ;-)
Но на самом деле поработало ядро. Дельфийский отладчик не может справляться с такой ситуацией, поскольку он поставил точку останова сразу за SYSENTER'ом, а ядро возвращает управление в программу не туда, а куда-то в другое место, я уже не помню. Поэтому прога продолжает работать, а отладчик остаётся с носом ;-)

SYSENTER в процах появилась с приходом PII, до этого использовалась инструкция INT. Соответственно, в Win2k ещё использовалась INT, SYSENTER появился начиная c WinXP и старше.

SYSENTER работает чуть быстрее.

-------------------------------
Инструкция SYSENTER аналогична инструкции INT с той лишь разницей, что не хранит вектор прерывания в таблице IDT с последующий его выборкой и передачей управления, а вызывает код, адрес которого расположен в одном из регистров MSR.
-------------------------------
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach