venerdì 27 marzo 2009

First Look at Nehalem Microarchitecture

In the next few days Intel is going to make another revolution in the processor market – launch Core i7, new processors on Nehalem microarchitecture. This microarchitecture should become the next significant step after extremely successful Core microarchitecture. In our today's article we are going to talk about the details behind Nehalem microarchitecture that will help us better understand what we could expect from Intel.

Table of Contents

from: http://www.xbitlabs.com/articles/cpu/display/nehalem-microarchitecture.html

Ivar Jacobson: ecco cosa non insegnano ai programmatori

Microsoft, in occasione di una giornata di conferenze riguardanti la programmazione, ha dato spazio sul palco ad un personaggio molto importante, che proprio con Microsoft ha avviato una collaborazione. Stiamo parlando di Ivar Jacobson, famoso per essere uno dei creatori dello Unified Modeling Language, nato con l'obiettivo di unificare alcuni approcci alla programmazione  esistenti, formalizzando le best practices, le pratiche, al fine di definire uno standard.

Certo, riconosco che il discorso può non essere del tutto chiaro, così come ammetto il mio imbarazzo unito a soggezione quando mi sono trovato a dover intervistare Mr. Jacobson. Un conto è intervistare personaggi legati al mondo IT in genere, un altro è il mondo della programmazione, di cui sono assolutamente digiuno. Eppure, con mia grande sorpresa e sollievo Mr. Jacobson si è rivelato un ottimo conferenziere (se vi capita, non perdetevelo), che ha preferito descrivere un discorso generale senza scendere nei tecnicismi da me temuti.

Eccomi quindi a riportare a mezzo articolo alcune informazioni che possono essere utili in qualche modo ai programmatori, o a chiunque sia appassionato di questo universo. Il focoso svedese ha impostato la sua brillante conferenza sui problemi legati al software che poi ci si ritrova nel proprio computer, cercando di far capire al pubblico, mediamente molto più informato di me sull'argomento, quali siano le migliori pratiche per uno sviluppo intelligente degli applicativi, elencando anche gli approcci sbagliati o taciuti da chi insegna a programmare.

Un tema molto caro a Ivar Jacobson questo, tanto da dedicargli il titolo della conferenza: "what they don't teach you about software at school", ovvero quello che non vi insegnano a scuola riguardo al software. Ne ha per tutti, Mr. Jacobson, ma l'atteggiamento non è per nulla di supponenza, quanto di reale interesse ad indicare quelli che a detta sua sono le basi per un approccio alla programmazione più ... smart. Non ho volutamente tradotto smart perché è un po' la chiave di tutto, come scoprirete nelle pagine seguenti. 

Ivar Jacobson attualmente ricopre il ruolo di CTO della Ivar Jacobson International, società specializzata nella consulenza per migliorare lo sviluppo del software. Per chi volesse approfondire la biografia del personaggio, invitiamo alla lettura di questa pagina.

http://www.hwupgrade.it/articoli/software/2170/ivar-jacobson-ecco-cosa-non-insegnano-ai-programmatori_index.html

Aggiornare Java all'ultima versione

Java è un linguaggio di programmazione orientato agli oggetti, derivato dal C++ e messo a punto sotto la guida di Sun Microsystems con un lavoro che iniziò già nel 1991. L'annuncio ufficiale del rilascio di Java fu reso nel mese di Maggio 1995.

Tra le perculiarità più importanti di Java vi è il fatto di essere indipendente dalla piattaforma e quindi di essere compatibile con piattaforme differenti (slogan "write once, run everywhere") nonché di essere supportato dai principali browser web.

Un programma Java può essere eseguito su qualsiasi piattaforma hardware-software a patto che sia dotata di un apposito interprete, detto "Java Virtual Machine".

-- Java fu inizialmente rilasciato come Java Development Kit 1.0 (JDK 1.0) che comprende sia Java Runtime (la "Virtual Machine" e le librerie di classi), sia gli strumenti di sviluppo (ad esempio, il compilatore Java).
-- In seguito, Sun Microsystems rese disponibile un pacchetto che integrava esclusivamente gli elementi necessari per eseguire correttamente un'applicazione Java. Tale pacchetto è chiamato Java Runtime Environment (JRE).
Ancora oggi, sebbene Java sia notevolmente cresciuto, con il rilascio di molte nuove versioni, l'utilizzo degli acronimi JDK e JRE per differenziare i due pacchetti è restato invariato.

I programmi Java che possono essere eseguiti da browser web si chiamano applet e sono inseribili nelle pagine Internet utilizzando apposite tag. Per fruire di un'applet Java è sufficiente che sul sistema in uso sia installato il "Java Runtime Environment" (JRE).

Java è ampiamente utilizzato anche sui dispositi mobili come telefoni cellulari. La versione J2ME (Java 2 Micro Edition) viene spesso impiegata su telefonini che dispongono di risorse hardware limitate (memoria, storage, etc...).

Molti utenti, tuttavia, pur avendo installato Java sul proprio personal computer (talvolta viene fornito insieme con alcune applicazioni; ad esempio OpenOffice.org), non provvedono ad aggiornarlo tempestivamente e a rimuovere le versioni più datate del pacchetto.
Navigare sul web avendo le applet Java abilitate ed utilizzando una vecchia versione del linguaggio è assolutamente sconsigliato.

Come confermato anche da Secunia, azienda danese che da anni si occupa di sicurezza informatica segnalando la scoperta di nuove vulnerabilità nei vari software disponibili sul mercato, è cosa comune che sui sistemi degli utenti siano presenti versioni ormai superate della "Java Virtual Machine". Circa il 35% degli utenti, a Febbraio 2008, usavano una versione vulnerabile di Java.

Come qualsiasi altra software house, anche Sun rilascia periodicamente degli aggiornamenti di sicurezza per Java in modo tale da correggere tutte le falle di sicurezza via a via scoperte. Alcune di esse, com'è facile accorgersi operando qualche breve ricerca nell'archivio di Secunia (ved. queste pagine), sono considerate particolarmente gravi e possono portare all'esecuzione di codice nocivo nel caso in cui l'utente visiti un sito web maligno, allestito con l'apposito scopo di creare danni, sottrarre informazioni sensibili, rubare credenziali di accesso, installare altri programmi dannosi.

E' facile, quindi, essere vittima di malware non solo quando il sistema operativo o le applicazioni che si utilizzano per comunicare in Rete (browser, client di posta, software per la messaggistica, etc...) non sono aggiornati ma anche quando non si sta adoperando l'ultima versione della Java Virtual Machine.

Un pò discutibile è anche il comportamento dell'installer di Java che non provvede a disinstallare le versioni precedenti della virtual machine o che comunque non informa l'utente circa la presenza, sul sistema, di release ormai superate. E' cosa quindi abbastanza comune trovare sul sistema molteplici versioni di Java, dalle più vetuste 1.3 ed 1.4 alle più recenti 1.5 e 1.6.

Innanzi tutto, per verificare se il browser web è in grado di eseguire applet Java, è sufficiente collegarsi con la pagina ufficiale di test elaborata da Sun.
Immediatamente sotto il paragrafo "Test your JVM", dovrebbero comparire tutti i dettagli relativi alla JRE installata insieme con un'immagine animata. Qualora ciò non dovesse accadere, è possibile che la JRE non risulti installata sul personal computer oppure che l'esecuzione delle applet Java venga in qualche modo bloccata (da browser oppure attraverso le funzionalità messe a disposizione dai più moderni software "personal firewall" che integrano funzionalità di filtro dei contenuti inseriti nelle pagine Internet).

Come secondo passo, è bene controllare all'interno del Pannello di controllo di Windows che non siano presenti versioni "datate" di Java. Diversamente, è caldamente consigliato disinstallare tutte le versioni della Java Virtual Machine non aggiornate. In figura è rappresentato il caso di un utente che ha sul proprio sistema più versioni di Java.

Nel caso in cui il normale processo di disinstallazione delle precedenti versioni di Java non dovesse andare a buon fine, suggeriamo di ricorrere all'utilità Microsoft Windows Installer Cleanup. Si tratta di uno strumento che provvede ad eliminare dal registro di sistema tutti i riferimenti non validi a procedure d'installazione di Java. Il software, gratuito, è scaricabile attraverso il link presente in questa pagina.

Prima di procedere, è comunque bene accertarsi che nessuna applicazione desktop richieda una versione di Java specifica. Non è infrequente, infatti, imbattersi in software gestionali che, per poter funzionare correttamente, necessitano (lo dichiarano esplicitamente) di una ben precisa versione di Java. Ciò, di regola, non dovrebbe comunque accadere nel caso di un'applicazione Java ben scritta che dovrebbe essere sempre adeguata, anche mediante il rilascio di aggiornamenti, all'ultima versione disponibile della "Virtual Machine".

Gli utenti che sono costretti ad utilizzare vecchie versioni di JRE per consentire l'esecuzione di applicazioni piuttosto datate (cosa piuttosto comune con alcuni software di tipo fiscale, installati, ad esempio, presso gli studi commercialisti), dovrebbero provvedere a disabilitare l'esecuzione delle applet Java dal browser in uso (Internet Explorer, Firefox, ...). Nel caso di Firefox, è sufficiente disattivare la casella Attiva Java presente nella sezione Contenuti (menù Strumenti, Opzioni del browser). Analoga casella è disponibile, in Internet Explorer, accedendo al menù Strumenti, Opzioni Internet quindi cliccando sulla scheda Avanzate (sezione Java (Sun)).
E' bene ricorrere a questa pagina per verificare se le applet Java siano o meno eseguite.

Attraverso la finestra di configurazione di Java (Pannello di controllo di Windows, icona Java, scheda Avanzate, Java predefinito per browser), è poi possibile disattivare il caricamento del plug-in da parte dei vari browser.

L'ultima versione di Java è scaricabile da questa pagina.

Per verificare di utilizzare le versioni più aggiornate di Java e quindi esenti da vulnerabilità di sicurezza, è possibile effettuare una scansione del sistema con Secunia PSI (ved. questi articoli per maggiori informazioni).

fonte: http://www.ilsoftware.it/articoli.asp?id=4595

Java: Sun rilascia le versioni aggiornate

Sun Microsystems ha da poco rilasciato gli aggiornamenti che consentono di risolvere, tra l'altro, una serie di vulnerabilità di sicurezza scoperte all'interno di Java JRE (Java Runtime Environment).
Tutti gli utenti sono invitati ad aggiornarsi alle versioni più recenti (ved. il sito ufficiale), esenti da problemi. Per la versione 6.0 di Java, Sun ha reso disponibile l'"update 13". Contemporaneamente, è stato rilasciato anche un aggiornamento destinato ai possessori della precedente versione 5.0 (1.5.0.18; ved. questa pagina per il download).

JRE (acronimo di "Java Runtime Environment") permette al sistema operativo di eseguire applicazioni sviluppate nel linguaggio Java. Tali software possono essere distribuiti nella forma "stand alone", ossia eseguibili localmente sul personal computer in uso oppure integrati nelle pagine web (si parla di "applet" Java).
E' possibile verificare la versione di JRE eventualmente installata ed in uso sul proprio sistema, collegandosi con questa pagina. Immediatamente sotto il paragrafo "Test your JVM", dovrebbero comparire tutti i dettagli relativi alla JRE installata insieme con un'immagine animata.
Qualora ciò non dovesse accadere, è possibile che la JRE non risulti installata sul personal computer oppure che l'esecuzione delle applet Java venga in qualche modo bloccata (da browser oppure attraverso le funzionalità messe a disposizione dai più moderni software "personal firewall" che integrano funzionalità di filtro dei contenuti inseriti nelle pagine Internet).

Java è un linguaggio estremamente potente: se si preferisce evitare del tutto di imbattersi in applet Java potenzialmente nocive, è possibile disattivarne l'esecuzione da browser (in Internet Explorer, menù Strumenti, Opzioni Internet, scheda "Avanzate", sezione "Java"; in Mozilla Firefox, menù Strumenti, Opzioni, scheda Contenuti, disabilitare la casella Attiva Java) oppure da software firewall. Disattivando le applet, si potranno comunque eseguire applicazioni sviluppate in Java sul personal computer.
Sono infatti un sempre maggior numero le applicazioni che poggiano su Java (soprattutto quelle contabili e gestionali): uno dei vantaggi principali deriva infatti dal fatto che JRE può essere installato su piattaforme completamente diverse (Windows, Linux, Solaris).

E' inoltre sempre bene accertarsi che sul sistema in uso non siano presenti versioni "datate" di Java. Per tutti i dettagli sulla gestione delle installazioni delle varie versioni di Java, vi suggeriamo di fare riferimento a questo nostro articolo.

Le vulnerabilità risolte con il rilascio delle ultime versioni della piattaforma Java riguardano un'incorretta inizializzazione di connessioni LDAP, un errore in "Java Web Start" che potrebbe essere sfruttato da un aggressore per eseguire codice nocivo invitando l'utente ad aprire un file JAR "maligno", una lacuna che potrebbe favorire l'utilizzo di codice in grado di permettere l'accesso a porte locali normalmente "bloccate", una serie di bug legati alla gestione di file PNG e GIF - potenzialmente utilizzabili per eseguire codice dannoso -, alcuni errori nel plug-in Java che potrebbero facilitare l'esecuzione di codice con versioni precedenti di JRE, eventualmente installate sul sistema. Le più recenti versioni di Java correggono anche altre problematiche di sicurezza che potrebbero agevolare attacchi DoS (Denial of Service), il superamento di alcune restrizioni, l'esecuzione di codice in modalità remota.

fonte della notizia: http://www.ilsoftware.it/articoli.asp?id=5120

giovedì 26 marzo 2009

Parallels Transporter

Parallels Desktop brought it to you first.

Migrate an entire real or third-party virtual PC system, including operating system, applications, files and personal settings, to your new Parallels Desktop 4.0 for Mac virtual machine. Make the move even faster by using FireWire.
Parallels Transporter

* Migrate a physical PC system directly to a Parallels Desktop 4.0 virtual machine.
* Convert a non-Parallels virtual PC system to a Parallels Desktop 4.0 virtual machine.
* Make the move even faster using FireWire.

Migrate remote Windows PC over network to Parallels VM on your Mac/PC

* Step 1: Install Transporter Agent on the Windows PC you want to migrate to a Parallels Desktop 4.0 VM.
* Step 2: Run Transporter on your Mac/PC.
* Step 3: Follow the migration wizard.

Migrate Windows PC locally or to any removable media

* Step 1: Install both Transporter and Transporter Agent on the Windows PC you want to migrate.
* Step 2: Run Transporter on that Windows PC.
* Step 3: Follow the migration wizard.
* Step 4: Deliver the resulting VM to the Mac/PC using any removable media.

Migrate or convert a non-Parallels virtual computer to Parallels Desktop 4.0 virtual machine

* Step 1: Run Transporter on your Mac or PC.
* Step 2: Follow the simple Transporter Wizard.

http://www.parallels.com/products/desktop/features/transporter/

venerdì 20 marzo 2009

Gestire ed utilizzare le applicazioni "portabili"

Un'applicazione è detta "portabile" quando è in grado di funzionare da qualunque supporto rimovibile (ad esempio, CDROM, chiavette USB, memorie flash, floppy disk,...) senza richiedere l'installazione sul disco fisso. Com'è ovvio, un'applicazione "portabile" potrà essere eseguita esclusivamente sui sistemi operativi per i quali ne è garantita la compatibilità. Tuttavia, una vera applicazione "portabile" - una volta avviata dal supporto rimovibile prescelto – non opererà alcuna modifica alla configurazione del sistema. Il software, ad esempio, non installerà file aggiuntivi sul disco fisso né varierà la configurazione del registro di sistema o di altre aree che regolano il funzionamento di Windows.

Le applicazioni sviluppate per il sistema operativo di Microsoft, in genere, non sono portabili dal momento che le procedure d'installazione aggiungono spesso dei file nelle cartelle di sistema ed interagiscono pesantemente con il registro. Proprio il registro di Windows è utilizzato, sin dall'uscita delle prime versioni del sistema operativo, per memorizzare informazioni sulla configurazione di ogni singolo programma installato. Inoltre, nel caso in cui sul sistema siano attivati più account, nel registro sono di solito conservati dati differenti per ciascun utente che utilizza Windows così come ogni singola applicazione.

Un'applicazione, per divenire "portabile", deve quindi astenersi dall'utilizzare il registro di sistema ed evitare il caricamento di qualunque file sul sistema in uso che, alla chiusura del programma, non deve risultare in alcun modo modificato. In genere, quindi, un'applicazione portabile provvede a memorizzare file temporanei e file di configurazione direttamente nel supporto rimovibile.

In queste pagine presentiamo PortableApps, una delle piattaforme più valide per la gestione delle applicazioni portabili. Uno dei principali vantaggi derivanti dall'utilizzo di soluzioni come PortableApps consiste nel fatto di avere modo di portare sempre con sé, ad esempio una semplice e sempre più comune chiavetta USB, gli elenchi dei propri siti web preferiti (bookmarks), gli archivi della posta elettronica, modelli e documenti pronti per essere editati senza la necessità di installare alcunché.


La soluzione di PortableApps

Per avere a disposizione una collezione delle più apprezzate ed utilizzate applicazioni opensource all'interno, ad esempio, della propria chiavetta USB, è possibile impiegare la soluzione proposta da PortableApps.com. Il sito, oltre ad offrire le ultime versioni portabili delle più famose applicazioni, mette a disposizione un ottimo gestore per l'avvio dei vari software: si tratta di una comoda interfaccia, che ricorda da vicino il menù "Start" di Windows, attraverso la quale si possono eseguire i programmi, eliminarli oppure aggiungerne di nuovi.
Il componente software che permette l'avvio e la gestione delle applicazioni, può essere memorizzato su qualunque supporto rimovibile, insieme con i programmi in versione "portabile".

Per installare PortableApps sull'unità rimovibile prescelta, è sufficiente prelevare il pacchetto d'interesse (Platform only, Suite light, Suite standard), eseguirlo quindi seguire la procedura passo-passo. Per poter avere a disposizione sia il gestore dei programmi sia le applicazioni in lingua italiana, suggeriamo di utilizzare il pacchetto d'installazione "Platform only", scegliere l'italiano infine specificare la lettera identificativa corrispondente all'unità all'interno della quale si desidera inserire le applicazioni portabili.

Per avviare il "manager" delle applicazioni di PortableApps, sarà poi sufficiente fare doppio clic sul file eseguibile StartPortableApps.exe contenuto nell'unità rimovibile. Nel caso in cui la funzionalità "autorun" di Windows dovesse risultare abilitata, PortableApps verrà automaticamente avviato grazie all'aggiunta di un apposito file autorun.inf nella directory radice dell'unità stessa.

Il menù che apparirà a video, sul lato destro dello schermo, permetterà di avviare le varie applicazioni portabili, accedere alle cartelle Documenti, Musica, Immagini e Video create nell'unità rimovibile, effettuare il backup del contenuto del supporto, accedere alle opzioni ed avviare delle ricerche locali o sul web.

La versione "Platform only" di PortableApps ha la prerogativa di essere multilingua e quindi di permettere la visualizzazione dell'interfaccia interamente in italiano. In questo caso, però, non verrà proposta alcuna applicazione portabile in elenco: l'utente dovrà aggiungere manualmente quelle di proprio interesse.

Il menù principale di PortableApps. Nel caso in cui si sia installata la versione "Platform only" multilingua del pacchetto, le applicazioni portabili dovranno essere aggiunte manualmente.

Utilizzare la suite PortableApps in modo sicuro

Per utilizzare in tutta sicurezza l'unità rimovibile all'interno della quale si installa la suite PortableApps, è bene impiegare alcune semplici precauzioni. In primo luogo, è indispensabile che sul personal computer sia installato un valido software antivirus. Nel caso della chiavetta USB o dell'unità PortableApps, è caldamente consigliata l'installazione di un programma antivirus portabile come ClamWin accertandosi di mantenere sempre aggiornate i suoi archivi delle definizioni virali.
Va inoltre tenuto presente che, nel caso in cui si dovesse connettere l'unità PortableApps ad un sistema sul quale siano presenti dei malware, anche il disco rimovibile potrebbe essere a sua volta infettato. E' quindi sempre opportuno verificare con attenzione che sul sistema al quale si prevede di connettere l'unità rimovibile, ad esempio la chiavetta USB PortableApps, non siano presenti delle minacce. Una soluzione può essere quella di avviare preventivamente una scansione con Prevx CSI, strumento che permette di rilevare qualsiasi genere di malware.

Prima di rimuovere l'unità di PortableApps è indispensabile cliccare sul pulsante "eject", così come spiegato più avanti: è assolutamente sconsigliato disconnettere l'unità disco senza prima aver chiuso tutte le applicazioni portabili.

Come suggeriscono gli stessi autori della suite PortableApps, è anche ragionevole effettuare – su base periodica – un backup dei dati presenti nell'unità disco ricorrendo alla funzionalità integrata nel menù del programma.

from: http://www.ilsoftware.it/articoli.asp?id=5098

Visual Lightbox: per creare gallerie fotografiche in pochi clic

Sia in ambito aziendale che domestico, quando si ha a che fare con una serie di immagini prodotte, ad esempio, servendosi di una fotocamera digitale, può essere utile produrre una sorta di "galleria". Visual Lightbox è un software che si occupa di sovrintendere l'intera procedura senza costringere l'utente a digitare una singola riga di codice.

Inviando a Visual Lightbox (il programma supporta il "drag&drop") una serie di fotografie, il software provvederà sia a generare le versioni ridotte delle immagini - da visualizzare sotto forma di "miniature" -, sia a produrre le pagine web, in formato html, che permettono di visualizzare le varie foto.

Il "pacchetto" che Visual Lightbox è in grado di generare potrà essere pubblicato in Rete per condividere le proprie foto online oppure distribuito via e-mail od altri supporti di memorizzazione (si pensi all'esigenza, comune in molte realtà aziendali, di produrre rapidamente dei cataloghi in formato elettronico).
Visual Lightbox integra un client FTP: ciò significa che il materiale prodotto potrà essere inviato online, ad esempio sul proprio server FTP, senza abbandonare il programma.

Il software integra inoltre alcune funzionalità di base per la modifica delle fotografie: dall'interfaccia di Visual Lightbox si possono ridimensionare e ruotare le foto oltre ad aggiungere delle etichette descrittive.

Il funzionamento di Visual Lightbox è molto semplice: dopo aver avviato il programma, è sufficiente trascinare nella finestra principale un insieme di file oppure intere cartelle contenenti delle immagini. Il software proporrà una versione di anteprima di tutte le foto. In alternativa, è possibile cliccare sul pulsante Add images to gallery presente nella barra degli strumenti.

Cliccando sul pulsante a forma di "ingranaggio" (Edit gallery properties), si può indicare al programma se le foto debbano essere automaticamente ridimensionate o meno. Affinché sulle immagini in versione ingrandita non venga apportato alcun intervento, è sufficiente scegliere l'opzione Do not resize dal menù a tendina Image resolution. In alternativa è possibile scegliere la dimensione desiderata.

Le impostazioni che permettono di agire sulla qualità dell'immagine ridimensionata e l'opzione che permette di eliminare il riferimento a Visual Lightbox in calce alle foto sono fruibili solo acquistando la versione a pagamento del prodotto.

Gli altri due pulsanti della finestra delle proprietà della galleria consentono, rispettivamente, di scegliere la tipologia di presentazione "slide show" che deve essere proposta all'utente e di specificare dove, in modo predefinito, Visual Lightbox dovrà memorizzare quanto prodotto.

Per avviare la procedura di creazione della propria galleria fotografia, è sufficiente cliccare il pulsante Publish gallery della barra degli strumenti indicando quindi se si vuole memorizzare tutti i file in locale (Publish to folder) oppure se si preferisce caricarli subito online via FTP.
La casella Index file name dà modo di specificare l'appellativo della home page: la prima pagina attraverso la quale sarà possibile successivamente accedere all'intera galleria.

La galleria fotografia così semplicemente realizzata potrà infine essere visualizzata con un qualsiasi browser web, sia in un contesto di lavoro locale, sia online.

Esplorando il contenuto della cartella "engine" di Visual Lightbox e del file indice, si noterà immediatamente come il programma abbia automaticamente provveduto a generare tutto il codice JavaScript e i fogli di stile (CSS) necessari per la corretta visualizzazione della galleria fotografia.

Visual Lightbox è un programma distribuito gratuitamente ed utilizzabile, sempre a titolo non oneroso, per scopi non commerciali. La versione più completa, destinata a qualunque genere di impiego, può essere invece acquistata previo versamento della quota di registrazione.

Visual Lightbox, nella versione freeware, può essere prelevato cliccando qui (1,9 MB circa).

fonte: http://www.ilsoftware.it/articoli.asp?id=5093