Newsgroup: it.scienza.astronomia.seti
Titolo: Script per versione text-only 2.0 (win98/NT)

Hello!
Visto che la cosa interessava molti, invio gli script 
per rendere piu' produttivi il vostri PC evitando che 
stiano fermi per ore in attesa del vostro intervento 
per porter comunicare i risultati al server seti e 
prelevare la WU. 
Dico ore, ma spesso sono anche giorni, ad esempio quando
il server va' in crash per qualche avaria (e' successo
ancora recentemente). Infatti io li uso anche su PC
connessi permanentemente a internet che in questo modo
non hanno mai smesso di macinare WU ormai da mesi
nonostante i crash del server seti, i guasti telecom
e i down del provider.
Premetto che lo script funge con la versione da linea 
di comando, detta text-only (per win98/winNT), che tra 
l'altro e' la piu' veloce per questi sistemi operativi.
Il principio e' semplice, ci sono due script:
1) "trasf.bat"
2) "elab.bat"
il primo ha il compito di inviare i risultati e scaricare 
nuove WU. Lanciato la prima volta scarichera' tot WU in tot 
directory, che andanno create a mano la prima volta e popolate
solo con il file user_info.txt, se volete evitare che il client 
vi chieda TOT volte in interattivo le user info. 
Questo file lo potete prendere tranquillamente dalla vostra 
dir attuale del seti in qualsiasi situazione si trovi.
Il secondo e' in un loop infinito che elabora solamente le 
WU senza cercare di inviarle, finita una passa alla successiva,
quando arriva all'ultima ricomincia dalla prima, nella
supposizione che nel frattempo sia stato lanciato una
o piu' volte il TRASF.BAT durante i consueti collegamenti
ad internet.
La struttura delle directory che utilizzate dagli script
e' la seguente (se la cambiate dovete cambiare anche tutti
i path):
c:\Programmi\SETI@home 
contiene solo il client text-only rinominato a sh20.exe
c:\Programmi\SETI@home\Ram
contiene lo script TRASF.BAT
c:\Programmi\SETI@home\Ram\Dir1
c:\Programmi\SETI@home\Ram\Dir2
c:\Programmi\SETI@home\Ram\Dir3
c:\Programmi\SETI@home\Ram\Dir4
contengono i file *.sah
R:\
e' la radice della RamDisk dove viene elaborata la WU di turno
contiene i file .sah correnti e lo script ELAB.BAT
Consiglio di lanciare il TRASF.BAT ogni volta che vi dovete
connettere ad internet per altri motivi, anche se avete elaborato
una sola WU, tenere sempre piena la "coda" di WU e' una garanzia 
contro imprevisti periodi di "carestia".
Parlavo di TOT work_unit ... negli script in questione TOT=4
che e' un valore adeguato a far superare il week-end al mio
PC di casa che impiega 24 ore x WU. 
Si puo' aumentare il "tot" a piacere secondo le proprie esigenze,
semplicemente copiando e rinominando piu' volte l'ultimo "gruppo" 
di linee di comando dei due script e creando le varie directory
aggiuntive dir5, dir6, dir7  ... certo potevo mettere tutto 
in un ciclo for, ma siccome 1 sono pigro e 2 non sono 
espertissimo di script dos/win ...
Se pero' qualche volontario vuol fare qualche esperimento 
ben venga, e poi mi mandi lo script parametrizzato e ...
testato! :-)
Quindi calcolate la durata della coda in base all'autonomia
che volete dare al PC (una nottata, un week-end, un'intera
settimana) ricavando TOT tenetelo sempre un po' piu' abbondante
di 1 o 2 WU, perche' non di rado capita una WU con interferenze
che gia' allo 0,5% del calcolo produce un result.txt di 32kb
che va' a terminare con un messaggio di overflow sul numero
di picchi trovati, e in questi casi il calcolo di una WU dura
pochi secondi.
Ad esempio un valore adeguato per un PIII-500 abbandonato a 
se stesso in ufficio nel week-end (che elabora una WU ogni
circa 7 ore) e' di 11 WU.
Altra considerazione: lanciando TRASF.BAT la prima volta o
dopo aver accumulato molti risultati, se si e' fortunati
tutte le nuove WU e i risultati partono e arrivano regolari 
come treni svizzeri, ma, specie con piu' di 6 WU per volta, 
capita che  una o due WU vadano in timeout e non vengano 
trasferite; nessun problema lasciate finire lo script e 
rilanciatelo una seconda volta per ripescare anche quelle
interrotte, in genere per non rimanere a controllare tutto 
il tempo che il trasferimento proceda regolarmente io 
lancio comunque sempre una seconda volta il TRASF per 
sicurezza.
Questo e' solo uno dei vari script che uso a seconda del PC e della
configuazione hw, (e del sistema operativo).
Ha alcuni accorgimenti per lavorare in una RamDisk 
soli 1,4Mb che comporta vari vantaggi:
1 - seti accede all'HD ogni pochi secondi, per aggiornare
    il file state.sah, lavorando in RamDisk si velocizza del
    10% il calcolo
2 - puo' funzionare finalmente l'opzione di risparmio energetico
    con lo spegnimento dopo tot min dell'HD,  si risparmiano
    parecchi watt, si rende piu' silenzioso il PC e particolare
    non da poco si conserva meglio la meccanica dell'HD (su
    vari PC che ho tenuto accesi per due mesi di fila,
    spenti per qualche tempo e poi riaccesi, ho sentito dei
    brutti rumori provenire dall'HD, all'avvio e nei primi
    minuti di funzionamento a freddo)
3 - la RamDisk che uso non e' quella standard di win ma si
    tratta del programma RamDisk98 e consente rispetto alla
    RamDisk normale, un salvataggio su un file immagine e un
    ripristino automatico (allo shutdown e al boot del PC), 
    inoltre si puo programmare un backup periodico ogni tot 
    minuti per ulteriore sicurezza, vedi improbabili blackout o 
    piantamenti del PC (io l'ho messo ogni 6 ore).
Il RamDisk98 si trova su 
http://www.jlajoie.com/ramdsk98/
ed e' free per dimensioni tipo floppy (1,4Mb).
***************
TRASF.BAT
***************
@echo off
cd dir1
copy c:\Programmi\SETI@home\sh20.exe sh20_m1.exe
echo ***
echo *** Trasferimento WU n.1
echo ***
call sh20_m1 -stop_after_xfer
del sh20_m1.exe
cd ..\dir2
copy c:\Programmi\SETI@home\sh20.exe sh20_m2.exe
echo ***
echo *** Trasferimento WU n.2
echo ***
call sh20_m2 -stop_after_xfer
del sh20_m2.exe
cd ..\dir3
copy c:\Programmi\SETI@home\sh20.exe sh20_m3.exe
echo ***
echo *** Trasferimento WU n.3
echo ***
call sh20_m3 -stop_after_xfer
del sh20_m3.exe
cd ..\dir4
copy c:\Programmi\SETI@home\sh20.exe sh20_m4.exe
echo ***
echo *** Trasferimento WU n.4
echo ***
call sh20_m4 -stop_after_xfer
del sh20_m4.exe
cd ..
***************
ELAB4.BAT
***************
@echo off
:Start
c:
echo ***
echo *** Elaborazione WU n.1
echo ***
cd C:\Programmi\Seti@home\Ram\dir1
if exist C:\Programmi\Seti@home\Ram\dir1\result.sah goto WU2
if exist R:\state.sah goto RUN1
copy C:\Programmi\Seti@home\sh20.exe R:\sh20_r1.exe
copy *.sah R:
copy version.sah R:\wu1.sah
:RUN1
R:
cd \
if not exist wu1.sah goto WU2
call sh20_r1 -stop_after_process
del C:\Programmi\Seti@home\Ram\dir1\*.sah
copy *.sah C:\Programmi\Seti@home\Ram\dir1
del sh20_r1.exe
del *.sah
:WU2
c:
echo ***
echo *** Elaborazione WU n.2
echo ***
cd C:\Programmi\Seti@home\Ram\dir2
if exist C:\Programmi\Seti@home\Ram\dir2\result.sah goto WU3
if exist R:\state.sah goto RUN2
copy C:\Programmi\Seti@home\sh20.exe R:\sh20_r2.exe
copy *.sah R:
copy version.sah r:\wu2.sah
:RUN2
R:
cd \
if not exist wu2.sah goto WU3
call sh20_r2 -stop_after_process
del C:\Programmi\Seti@home\Ram\dir2\*.sah
copy *.sah C:\Programmi\Seti@home\Ram\dir2
del sh20_r2.exe
del *.sah
:WU3
c:
echo ***
echo *** Elaborazione WU n.3
echo ***
cd C:\Programmi\Seti@home\Ram\dir3
if exist C:\Programmi\Seti@home\Ram\dir3\result.sah goto WU4
if exist R:\state.sah goto RUN3
copy C:\Programmi\Seti@home\sh20.exe R:\sh20_r3.exe
copy *.sah R:
copy version.sah r:\wu3.sah
:RUN3
R:
cd \
if not exist wu3.sah goto WU4
call sh20_r3 -stop_after_process
del C:\Programmi\Seti@home\Ram\dir3\*.sah
copy *.sah C:\Programmi\Seti@home\Ram\dir3
del sh20_r3.exe
del *.sah
:WU4
c:
echo ***
echo *** Elaborazione WU n.4
echo ***
cd C:\Programmi\Seti@home\Ram\dir4
if exist C:\Programmi\Seti@home\Ram\dir4\result.sah goto WU7
if exist R:\state.sah goto RUN4
copy C:\Programmi\Seti@home\sh20.exe R:\sh20_r4.exe
copy *.sah R:
copy version.sah r:\wu4.sah
:RUN4
R:
cd \
if not exist wu4.sah goto WU5
call sh20_r4 -stop_after_process
del C:\Programmi\Seti@home\Ram\dir4\*.sah
copy *.sah C:\Programmi\Seti@home\Ram\dir4
del sh20_r4.exe
del *.sah
:WU5
c:
goto Start
***************
FINE
***************
Cieli sereni,
-Alessandro
Iscriveteti al Club Seti Italia: 
http://setiathome.ssl.berkeley.edu/stats/team/team_7422.html
-----------------------------------------------------
mailto:
alessand...@cheodiaglispam.libero.it
Disastri Umani: HiroShima 45, CernoByl 86, Windows 95
-----------------------------------------------------
Mailbox di riserva: 
mailto:
alg...@yahoo.com
 

prelevare la WU. 
L'avete ricevuto ? vi e' servito ? ve ne servono altri ?
Fatemi sapere.
