(be gentle - first post)
I have just submitted a package called "ser_no" that lets one serialize processors using AVRDUDE and without requiring one of the rather expensive stand-alone programmers that does serialization. Besides, I was having a time finding a programmer that would support the AT90PWM316 that my product uses.
The package contains the C source to a program the generates and stores serial numbers in a format that can be used in the AVRDUDE command line for "write immediate", the "i" sub-option to the -U command. It also contains a *nix shell script to drive the process.
This will probably work under Cygwin but I haven't tried it yet since I'm a pure Linux shop.