3

I was reading Mel Gorman's book Understanding the Linux Virtual Memory Manager and came across a question about why a process's page table gets updated because of its access to a vmalloc()ed area. Here is a link to the diagram that he uses to explain this process :

Vmalloc done by a process and another process accessing the vmalloc()ed area

The page table that gets updated in this case is a Master Reference Kernel Page Table and not the page table of Process A. My question is why does process B even access the area vmalloc()ed by the process A. What are the real world scenarios when a process will access a memory area that another process has allocated? The question basically boils down to this: If process A has allocated virtual memory, it will at some point start writing to the physical memory backed by that virtual memory. Why would another process want to access that piece of memory ?

Dayanidhi
  • 41
  • 7

0 Answers0