/proc/self/mem

Matan Ziv-Av (matan@svgalib.org)
Thu, 2 Dec 1999 22:26:16 +0200 (IST)


Hi

As of 2.3.27 mmapping of /proc/self/mem is not possible.
svgalib (in background mode uses it as follows):

1. frame buffer (at physical 0x000a0000) is mapped into program's
memory space (at GM=0x43210000, for example)

2. program writes to screen.

3. a console switch occurs (program goes to background)

4. svgalib allocates a virtual frame buffer (at VBF), and copies the
physical one to it.

5. svgalib calls mmap(GM,0x10000,,,proc_self_mem_fd,VBF), so that
writes at 0x4321xxxx go to the virtual frame buffer, and not to the
physical one.

6. when the program returns to foreground, svgalib copies virtual frame
buffer to physical.

Now, step 5 is broken. Is the same result (that of the mmap in
step 5) achievable by other means?

-- 
Matan Ziv-Av.                         matan@svgalib.org

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/