Maggio
30

Il Computex sarà una manifestazione importante per il mondo degli UMPC, ormai il 3 giugno è ad un passo e tutti i geek (e i nerd) ne stanno aspettando con ansia l’arrivo.

Qualche giorno prima però Laptoping rivela le mosse di Acer:
Si chiamerà Aspire One, avrà un display da 8.9 pollici e Intel Atom N270. Il display sarà retroilluminato a led e la risoluzione sarà 1024×600 px. La prima versione dovrebbe essere distribuita con Linux, e con 512 mb di ram oltre ad un hard disk a stato solido da 8gb. Si presume costi all’incirca 400$. Per il futuro (circa un mese dopo secondo le indiscrezioni) sembra essere prevista una versione con 1gb di ram, 80 gb di hard disk e un costo nettamente superiore: 620$.

Entrambe queste due versioni avranno un lettore 5 in 1 di memorie flash, una webcam, wireless a/b/g, 3 porte usb, una ethernet e una batteria da tre celle (quindi non credo durerà poi molto).

Aspire One

Maggio
30

Ieri Mobile Computer ha postato la prima review ufficiale dell’UMPC che tutti stiamo aspettando, l’MSI Wind!

Ecco un breve riassunto di cosa viene riportato:

L’MSI Wind sarà in vendita in UK dalla seconda settimana di giugno. Verrà però lanciato ufficialmente il 3 giugno al Computex. Hanno promesso di non dire quale processore contiene il modello in prova fino al lancio ufficiale del 3 giugno.
Le prime impressione sono molto molto buone, è solido ed è molto lontano ai pc economici. Il primo blocco di Wind in vendità sarà bianco, anche se loro credono che nero sarà molto più bello esteticamente. Dubitano anche che MSI possa mettere in vendita il modello rosa nel regno unito.
Pesa 1.26 kg ed è 260 x 180 x 19mm di dimensioni. Il modello con la batteria a 3 celle peserà invece intorno al kg, quello in prova aveva la batteria da 6 celle che sarà però opzionale.
I tasti sono larghi e comodi, il trackpad è piccolo ma funzionale e reattivo.
Il modello testato possiede le seguenti caratteristiche:
1Gb of DDR2 RAM, 80Gb 5400rpm hard disk and Windows XP SP2.
Nel corso dell’anno ne usciranno versioni più economiche, ad esempio quella con Suse Linux e con il monitor da 8.9”, ma l’hard disk resterà lo stesso, sempre 80gb.

MSI ha aggiunto al Wind una doppia modalità accessibile tramite shortcut da tastiera: una di nome “turbo”, che effettua un overclock del processore per aumentarne le performance, e una che serve a diminuire la luminosità dello schermo e a rallentare il processore per prolungare la durata della batteria. In questa modalità e con nessuna applicazione aperta al 99% di carica Windows Xp riporta 7 ore e 10 minuti di vita.

Dopo averlo testato per un po sembra comportarsi molto bene nell’uso generico, e ciò è sicuramente dovuto al processore (che però non dicono quale sia, anche se deduco sia un Atom di Intel a questo punto).
Se state pensando di prendere un Hp mini-note o un Asus eeePc 900, consigliano di tenere i soldi ancora per qualche settimana, fino a quando verrà rilasciato il Wind. MSI sembra avere un mostro tra le mani.

Maggio
29

Yesterday for me was the second day of Summer of Code for Drupal. My
project is Security
scanner component for SimpleTest module
. chx, my mentor, and I
were working on a way to scan through all links on the site, checking
for XSS vulnerabilities. In order to do this, we have to build up a crawler that
catch all the links of the website and save them into a database. Then we
have to use these links to inject xss or sql seed into the forms, in order to
view if there are vulnerabilities or not. But now we’re only at the first part of
the project, so we’re catching links.
Read More

Maggio
29

Ieri è stato il secondo giorno di Summer of Code per Drupal, io e chx dovevamo valutare come realizzare un algoritmo che permettesse a più crawler di catturare contemporaneamente tutti i links presenti in una pagina e di memorizzarli nel database. Abbiamo previsto a tal scopo due tabelle: una di nome crawler contenente solo un campo “id” di tipo intero auto_increment e una di nome “crawler_links” contenente “id”, “path”, “status” e il campo “has_form”, che in futuro servirà a segnalare la presenza di una form nella pagina.

L’idea era quella di fare la scansione di una pagina e di salvarne i link nel db. Dopodichè si doveva procedere all’estrazione del primo link che ha ha come status il valore 0 e come crawler_id il valore 0 dal database per farne la scansione con il crawler e salvarne nuovamente i link in esso contenuti. In sostanza nel database veniva salvata una coda di link estratti dalle pagine e pronti per essere processati. Dopo aver processato la pagina si doveva fare l’update del record riportante quella pagina nel database per segnalare status = 1 e crawler_id = al nome del crawler. Il nome del crawler per questo scopo doveva avere caratteristiche di atomicità, per far si che con crawler multipli non si finisse per contrassegnare due link nel database con lo stesso crawler. Ciò che abbiamo fatto è stato sfruttare l’auto_increment del campo “id” nella tabella crawler per garantire questa caratteristica. A questo punto l’algoritmo sarebbe potuto funzionare, ma occorreva immaginare completamente lo scenariocon la presenza di più crawler che contemporaneamente svolgevano questo algortmo per valutarne la correttezza.

Il problema della contemporaneità delle operazioni nasce dal fatto che myisam non ha il supporto alle transazioni, per cui occorre fare in modo che le operazioni non vadano a sovrapporsi.
Supponiamo che l’algoritmo alla base del nostro crawler sia questo:

db_query("SELECT id,path FROM {crawler_links} WHERE crawler_id = %d AND status = 0 LIMIT 1", $crawler_id));
db_query(”UPDATE {crawler_links} SET crawler_id = %d WHERE crawler_id = 0 LIMIT 1″, $crawler_id);

E’ evidente in questo caso che se partissero due crawler in contemporanea, può capitare che nella SELECT venga estratto per due volte lo stesso crawler_id. Questo succede quando l’operazione di UPDATE è ancora in esecuzione mentre l’operazione di SELECT viene terminata dal secondo crawler. Per risolvere questa problematica abbiamo invertito l’ordine delle operazioni assegnando eseguendo prima l’update del campo in questo modo:

db_query("UPDATE {crawler_links} SET crawler_id = %d WHERE crawler_id = 0 LIMIT 1", $crawler_id);

poi selezionando il link dalla tabella:

$page_to_visit = db_fetch_array(db_query("SELECT id,path FROM {crawler_links} WHERE crawler_id = %d AND status = 0 LIMIT 1", $crawler_id));

e infine facendo nuovamente update sul campo status, assegnandogli un valore per rimuoverlo dai valori estratti dalla select precedente:

db_query("UPDATE {crawler_links} SET status = 1 WHERE crawler_id = %d and status = 0 LIMIT 1", $crawler_id);

Questo permetterà a due o più crawler di lavorare contemporaneamente, senza rischiare sovrapposizioni.
E questo è il bello del SoC, imparare a ragionare per risolvere i problemi nel modo migliore possibile.

Maggio
29

Un UMPC anche per Dell

Posted In: Technology by Dario

Sembra che anche Dell sia pronta a rilasciare sul mercato un UMPC, di cui però non si hanno ancora dettagli. A questo punto sembra conveniente aspettare qualche mese prima di prendere un UMPC.