use ModuleServer; my $modpath = "/foo"; # path to where modules are expected my $module = ""; while (1) { open (INPIPE, "> $INPIPE) || die "Can't open $INPIPE: $!"; my $modname = ; close INPIPE; # fetch module $modname from database or wherever into $module unless (-p $modname) { unlink $modname; system('mknod', $modname, 'p') && die "Can't make pipe $modname: $!"; } open (OUTPIPE, "> $modpath$modname") || die "Can't write to $modname: $!"; print OUTPIPE $module; close OUTPIPE; sleep (1); }