#!/usr/bin/perl use IPC::SysV qw(IPC_STAT IPC_PRIVATE IPC_CREAT IPC_EXCL S_IRUSR S_IWUSR IPC_RMID); $key=shmget(IPC_PRIVATE,100,IPC_CREAT | IPC_EXCL | S_IRUSR | S_IWUSR); my $ret=fork(); if($ret>0){ my $int=0; while(1){ ++$int; shmwrite($key,$int,0,99); sleep 60; } } else { my $t=0; while(1){ shmread($key,$message,0,99); ++$t; $result=$t-$message; print "$t - $message is $result\n"; sleep 10; } }