Hi...

On Mon, Sep 20, 2010 at 12:33, Rajat Jain <rajatj...@juniper.net> wrote:
> 1) If the backing file is /dev/mem or a device file, then at the time of 
> mmap(), the page table entries / TLB entries are set up such that the virtual 
> address in the user space, maps to the actual physical address desired. And 
> the thus job is done. This case is clear.

I think what you mean here is anonymous mapping.

> 2) The other case is that when the file is actually a datafile present in a 
> file system lets say on a SATA disk. Now, for each load / store in the 
> application, some driver code needs to trigger that will program the SATA 
> controller registers and do n number of thinks to initiate the diska read / 
> write transaction. How is this achieved? Because application is not making 
> any System calls. Its just having load / store instructions.

I'm not really sure about the point of the above question, but I will
take it literally.

For file backed mmap, read/write (or in your term, load/store), could
mean two things: triggerring hard page fault, that is when the content
of the file is not in page cache..or directly reading it from the page
cache.

So, the key here is the page fault.


-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecar...@nl.linux.org
Please read the FAQ at http://kernelnewbies.org/FAQ

Reply via email to