http://qs1969.pair.com?node_id=348325


in reply to Re: Re: Re: May Thy Closures Be Blessed
in thread May Thy Closures Be Blessed

You can't use /dev/mem if you're not root; but fortunately there's a simpler interface to read the memory of process: ptrace.

For those who don't already know. Ptrace is the system call on linux and many other unixes that debuggers such as gdb and strace use. With ptrace any process can inspect any other process that is running under the same uid (provided that the other process is not setuid or setgid; root can ptrace any process but init). You can trace system calls and signals, read or write the virtual address space and registers of the traced process. You can single-step a process by setting the single-step flag of the processor, and catching the generated SIGTRAP signals with ptrace.