The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.
Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/
Hello, everyone. I'm new to developing device driver, but I got into trouble shortly after I started.
I'm making Intel High Definition Audio Controller driver, and I checked in the specification
that the access on the memory mapped register would be necessary.
I found their addresses using devmgmt.msc and RW - Read & Write Utility,
they're started at 0xF7FF8000.
When I wrote DriverEntry, I directly accessed that base address(e.g. (unsigned char*)0xf7ff8000)
and used index and offset to access specific register, but when I started driver, BSOD occured
at the point I read a value from one of them register(It was CorbSize register on offset 0x4e)
BSOD stop code was 0x00000050, "PAGE_FAULT_IN_NONPAGED_AREA".
kd showed me that f7ff8000 is freed(or corrupted) pool and
there's Bad allocation size @f7ff8000, too large
Are those error codes mean that address 0xF7FF8000 is unavailable data space?
But I checked the contents on 0xF7FF8000 using RW - Read & Write Utility,
and there were constantly changing values on that space,
even though db 0xf7ff8000 command on kd
show me only ??-filled memory space... I really wonder what the problem is,
and what the right way to access their memory mapped registers is.
Sorry for my bad english skill
It looks like you're new here. If you want to get involved, click one of these buttons!
|Upcoming OSR Seminars|
|OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!||Kernel Debugging||30 Mar 2020||OSR Seminar Space|
|Developing Minifilters||15 Jun 2020||LIVE ONLINE|
|Writing WDF Drivers||22 June 2020||LIVE ONLINE|
|Internals & Software Drivers||28 Sept 2020||Dulles, VA|