Board.KolibriOS.org

Official KolibriOS board
It is currently Tue May 21, 2019 4:23 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 7 posts ] 
Author Message
PostPosted: Sun Nov 17, 2013 12:13 pm 
Offline

Joined: Sun Nov 17, 2013 11:44 am
Posts: 3
Есть драйвер перехватывающий и обрабатывающий неиспользуемую функцию (eax=0xF0) из прерывания 0x40.
Есть приложение которое вызывает эту функцию (далее, драйвер должен загрузить файл в память этого процесса).
---
Нужно в обработчике прерывания прочитать файл и скопировать буфер в память приложения. Должно получится что-то вроде динамической библиотеки.
---
Какие способы позволяют такое реализовать?


Top
   
PostPosted: Sun Nov 17, 2013 12:23 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
CoreX, а почему бы не использовать специально предназначенную для этого функцию?
Функция 68 > Подфункция 19 - загрузить DLL


Top
   
PostPosted: Sun Nov 17, 2013 12:36 pm 
Offline

Joined: Sun Nov 17, 2013 11:44 am
Posts: 3
Я хотел бы чтобы драйвер сам связывал таблицу экспорта библиотеки и импорта приложения, ну возможно еще какие-либо действия свои производил.


Top
   
PostPosted: Tue Nov 19, 2013 8:29 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1619
int 0x40 для драйверов тоже работает.

_________________
Сделаем мир лучше!


Top
   
PostPosted: Wed Nov 20, 2013 4:30 pm 
Offline

Joined: Sun Nov 17, 2013 11:44 am
Posts: 3
А разве прерывания возможны в обработчике 0x40 прерывания?
---
Я так понял, что после обработки прерывания, управление вернется драйверу? Надо включать прерывания (sti) для вызова int 0x40?


Top
   
PostPosted: Wed Nov 20, 2013 4:36 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1619
Да. Да. Нет.

_________________
Сделаем мир лучше!


Top
   
PostPosted: Mon Nov 25, 2013 9:47 pm 
Offline
User avatar

Joined: Fri Jun 27, 2008 3:22 pm
Posts: 988
diamond in PM wrote:
При программировании драйверов лучше не использовать int 0x40 - это API для прикладных программ. Для драйверов есть отдельные API, функции, экспортируемые ядром (объявленные в imports.inc).

Если нет соответствующих функций, можно их эспортировать.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 7 posts ] 

All times are UTC+03:00


Who is online

Users browsing this forum: Baidu [Bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited