Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];

Вниз

Прерывания   Найти похожие ветки 

 
Jay1982 ©   (2004-12-20 10:19) [0]

Можноли как нибудь обойти запрет на прерывания в NT, или может их можно реализовать как-то по другому, например чтение данных из таймера (int 21h)?


 
Digitman ©   (2004-12-20 10:24) [1]


> запрет на прерывания в NT


NT не запрещает прерывания.


 
Jay1982 ©   (2004-12-20 10:26) [2]

NT может и не запрещает, зато XP запрещает.


 
Digitman ©   (2004-12-20 10:29) [3]


> Jay1982


и ХР не запрещает.


 
Jay1982 ©   (2004-12-20 10:34) [4]

Это ты XP расскажи...
Пробую писать в Делфи, выбрасывает, приходится пользоваться написаными програмками на Паскале


 
Digitman ©   (2004-12-20 10:39) [5]


> выбрасывает


факт что кто-то там куда-то там тебя "выбрасывает" не означает, что ОС запрещает прерывания.

К тому же термин "запрет прерываний" относится к аппаратным, а не программным прерываниям, а Int21h - это программное прерывание, в ДОС именуемое как trap ("ловушка"), в Win32 - gate ("шлюз")


 
Jay1982 ©   (2004-12-20 10:46) [6]

Допустим тогда int 1ah


 
Digitman ©   (2004-12-20 10:52) [7]


> Jay1982 ©   (20.12.04 10:46) [6]
> Допустим тогда int 1ah


резон ?
чего тебе не хватает в Win32 такого, что тебе понадобился программный интерфейс от ДОС ?


 
Jay1982 ©   (2004-12-20 11:03) [8]

Мне из биоса нужно прочитать/записать настройки таймера подъема машины и пароль


 
Digitman ©   (2004-12-20 11:09) [9]


> Jay1982


это вовсе не означает, что нужно обязательно лезть непосредственно в БИОС и не иначе как только с использованием ДОС-ловушек


 
Jay1982 ©   (2004-12-20 11:13) [10]

Проблема то в том, что эти данные как раз в БИОСе и записаны


 
Jay1982 ©   (2004-12-20 11:20) [11]

Проблема то в том, что эти данные как раз в БИОСе и записаны


 
Digitman ©   (2004-12-20 11:23) [12]


> Jay1982 ©   (20.12.04 11:13) [10]
> Проблема то в том, что эти данные как раз в БИОСе и записаны


я понимаю, что они записаны не на луне.
но для доступа к области физ.памяти, занимаемой BIOS, и к портам ввода/вывода CMOS BIOS требуются привелегии 0-го кольца защиты


 
Digitman ©   (2004-12-20 11:34) [13]


> таймера подъема машины


если не ошибаюсь, БИОС-интерфейс этого таймера не является стандартным для IBM-совместимых машин, и его конкретная реализация специфична для конкретных аппаратных реализаций и/или конкретных производителей чипсетов


 
Jay1982 ©   (2004-12-20 11:37) [14]

На счёт этого я в курсе, но проблема с прерываниями остаётся открытой


 
Anatoly Podgoretsky ©   (2004-12-20 11:39) [15]

Ответ в [12]


 
Jay1982 ©   (2004-12-20 11:43) [16]

Да что вы к [12] прицепились, вопрос был в использовании прерываний


 
Digitman ©   (2004-12-20 12:00) [17]


> Jay1982 ©   (20.12.04 11:43) [16]
> Да что вы к [12] прицепились, вопрос был в использовании
> прерываний


в режиме PM на PL0 пользовательскому Win32-приложению по умолчанию доступны только ограниченный набор эмулируемых ф-ций 21-й (и, кажется, еще 25-й) ДОС-ловушки

в режиме VM86 Win32-приложения вообще не исполняются, а исполняемые в этом режиме ДОС-приложения все равно не получат ожидаемого результата от вызова ДОС-ловушек, работающих с БИОС.


 
Ega23 ©   (2004-12-20 12:08) [18]

Пиши свою программулину в kernel-mode


 
Jay1982 ©   (2004-12-20 12:14) [19]

По подробней о kernel-mode, если можно


 
ECM ©   (2004-12-20 12:21) [20]

DDK


 
Jay1982 ©   (2004-12-20 12:27) [21]

Понятно, поищу



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.96 c
1-1103114526
Bobby Digital
2004-12-15 15:42
2005.01.02
Drag Edit


4-1100755386
Grundic
2004-11-18 08:23
2005.01.02
Права NTFS программно - как?


4-1100169917
Unnicked
2004-11-11 13:45
2005.01.02
Информация о процессах


3-1101988326
Blondin
2004-12-02 14:52
2005.01.02
TinyDB 2.0


14-1102934065
alex145
2004-12-13 13:34
2005.01.02
Стать админом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский