By the way, it's an assumption that you're trying to create IPC between two different programs (as opposed to use Sys::Mmap for what it's good for). I know it's annoying to ask for help and have people make assumptions, and the assumptions *are* sometimes wrong, but they're *usually* right. In this case, it's extremely common for people to try to figure out how to create shared variables between threads/tasks/processes/programs. Since there is no clean, easy way to do this that suits all situations, there is no readily forthcoming documentation or short FAQ entries. If you're interested in Coro, and I hope you are, the (brand spankin' new!) (shameless plug alert) book
Perl 6 Now: The Core Ideas Illustrated with Perl 5 has a few chapters on it and a chapter on threading in Perl. It deals with some of these ideas I just mentioned here - creating a server process that speaks HTTP (or whatever) and handles requests in parallel, and shares data structures between threads, and wiring together user interfaces with networking modules and so on. mmap() isn't introduced, but that's for a reason ;)
-scott