хм... не знаю нафига это нужно, но знаю тока один
способ проверить операционку - через WSHom.ocx
ясен пень что в зависимости от настроек безопасности клиентского браузеара тот может ругнуться на AxtiveX:

Код:
function getOS(){
var WshShell = new ActiveXObject("WScript.Shell");
var WshSysEnv = WshShell.Environment("SYSTEM");
var sOS = WshSysEnv("OS");
return sOS;
}
xp под рукой нет и как она будет определяться не знаю..