[pso] IRQL_NOT_LESS_OR_EQUAL

Bercea Gabriel gamitech at gmail.com
Mon Apr 20 18:14:35 EEST 2009


Irp->AssociatedIrp.SystemBuffer e nonpaged.

Da Razvan are dreptate la [2] m-am referit.

De ce te sfiesti in continuare sa arati !analyze -v ?


Bercea Gabriel
Mobile contact: (+40) 0740049634
Blog: http://gamitech.blogspot.com/
Linkedin: http://www.linkedin.com/in/gamitech



-----Original Message-----
From: pso-bounces at cursuri.cs.pub.ro [mailto:pso-bounces at cursuri.cs.pub.ro]
On Behalf Of Razvan Deaconescu
Sent: Sunday, April 19, 2009 11:18 PM
To: Proiectarea Sistemelor de Operare
Subject: Re: [pso] IRQL_NOT_LESS_OR_EQUAL

On Sun, 2009-04-19 at 22:52 +0300, Matei Gruber wrote:
> Multumesc Gabriel.
> 
> 1. Abordarea driverului meu a fost sa marchez IRP-urile ca pending si
> sa le completez pe masura ce primesc data dintr-un DpcForIsr, pornit
> din ISR. Dat fiind ca din DPC nu pot accesa memorie paginata, (care
> cred ca este cazul bufferelor asociate IRP), n-am cum sa completez
> bufferele. Este viabila o astfel de abordare?

Dar de ce lucrezi direct cu bufferele asociate IRP-urilor. De ce nu
folosesti un set de buffere circulare asociate driver-ului? Asa cum se
intampla si in exemplul indicat in enunt[1]. Doua buffer per dispozitiv
(unul de citire si unul de scriere). In acest fel:

          read/write              ISR
              |                    |
              |                    |
IRP buffer <----> kernel buffer <----> hardware buffer (FIFO)

<snip>
> 3. Am dat google dupa DIRQL operations si n-am gasit nimic.

Cred ca Gabi se referea la ce operatii poti sa faci in context
intrerupere[2].

Razvan

[1] http://cs.pub.ro/%7Epso/wiki/images/5/55/ExModuleWinCase.zip
[2] http://www.osronline.com/DDKx/kmarch/intrupts_0kh3.htm

_______________________________________________
pso mailing list
pso at cursuri.cs.pub.ro
http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso



More information about the pso mailing list