According to the ActivePerl documentation, signals are only "crudely" supported on Win32, and alarm() is not implemented at all in ActivePerl. However, I have used the method from "Programming Perl" (also found in "Perl Cookbook"), which uses both alarm signals and alarm(), in some CGI code. It doesn't work, but otherwise seems to do no harm on WindowsXP, and works properly unchanged on a Linux/Apache web server.