Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTFSD

More Info on Driver Writing and Debugging


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/


Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

Are the pages for Cache Manager mapped views shared with user mapped views?

0xrepnz0xrepnz Member Posts: 73
edited April 10 in NTFSD

I did some experiments with NtMapViewOfSection and NtWriteFile / NtReadFile and It seems like the physical page of the mapped view used by the cache manager and a mapped view mapped using NtMapViewOfSection in my process are the same. Can this situation happen? Just want to know if I get things right...
This practically means that I will see the data updated right away in NtReadFile whenever I write to the mapped view. (There is no delay waiting for the IRP_MJ_WRITE of the mapped page writer that can come seconds later)

- Ori Damari

Comments

  • rod_widdowsonrod_widdowson Member - All Emails Posts: 1,200

    Absolutely, that’s how it manages coherency. And it’s which file systems have to support the cache manager.

  • Scott_Noone_(OSR)Scott_Noone_(OSR) Administrator Posts: 3,450

    Cached I/O ends up being memory mapped I/O under the covers because the Cache Manager memory maps the file and copies data into/out of the mapping. If you then memory map the file you're seeing the same pages as the Cache Manager.

    -scott
    OSR

Sign In or Register to comment.

Howdy, Stranger!

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!
Developing Minifilters 24 May 2021 Live, Online
Writing WDF Drivers 14 June 2021 Live, Online
Internals & Software Drivers 27 September 2021 Live, Online
Kernel Debugging 15 November 2021 Live, Online