информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Атака на Internet
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / beginners
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Господа, будьте снисходительны, не бросайтесь сразу штрафовать за, как вам кажется, глупые вопросы - beginners на то и beginners.
Это точка перехода в иной мир ;-))))))))) 03.08.07 08:53  Число просмотров: 3459
Автор: 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.
-------------------------------
<beginners> Поиск 
  • sysenter - что это - Андрей 02.08.07 14:59 [1817]
    • (!) Это точка перехода в иной мир ;-))))))))) - HandleX 03.08.07 08:53 [3459]






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


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