La mia esperienza con gli OS, pionieri della Rivoluzione Digitale

14 Giu

Ciao a tutti i lettori,

Ho deciso di raccontare la mia esperienza con gli OS dal primo computer che ho avuto ed esprimere il mio giudizio su questo affascinante settore dell’informatica. Cercherò di renderlo interessante per voi.

La mia esperienza con i pc è cominciata da piccolo su un computer dotato di MS-DOS e di una versione particolare di Windows: il logo aveva il numero 95, ma non c’erano la barra delle applicazioni e il menu Start, e si accedeva ai programmi da un’unica finestra principale, allo stesso modo di Windows 3.1. Ancora oggi non saprei indicare con certezza quale versione fosse.

Windows 3.1 o 95?

Windows 3.1 o 95?

Il mio interesse per gli OS era scaturito dalla varietà presente di interfacce, che di solito venivano a coincidere con la versione di Windows, ma che a volte potevano subire delle modificazioni (è possibile ad esempio impostare l’interfaccia classica, propria di Windows 95, su Windows 7). Con il passare del tempo ho imparato a distinguere le piccole distinzioni tra le interfacce proprie di ogni versione (inevitabilmente solo di Windows, vista la scarsa diffusione di Linux e Mac negli anni ’90)  e ad apprezzare la lenta ma inesorabile progressione ed evoluzione degli elementi più comunemente utilizzati, come la grafica delle finestre, il tasto Start e persino le barre di scorrimento.

L'evoluzione delle barre di scorrimento (Fonte: Dribbble)

L’evoluzione delle barre di scorrimento (Fonte: Dribbble)

Da ciò deriva il logo che abbiamo scelto per il blog: un Tetrimino (pezzo di Tetris). In una partita di Tetris i pezzi si aggiungono uno per volta per creare la struttura complessiva, così come i sistemi operativi evolvono. Ogni elemento conta allo stesso modo degli altri, e dalla loro unione ordinata si arriva all’eliminazione delle righe complete, per fare spazio alle altre: il vuoto è simbolo di semplicità, qualcosa che si ha solamente quando ogni pezzo è al suo posto.

Gli OS non sono sempre stati semplici da utilizzare come lo sono adesso, tuttavia. I primi OS furono creati dopo l’avvento dei calcolatori a transistor, negli anni 50′, e servivano a non dover dare manualmente ogni comando alla macchina, ma dovevano essere programmati secondo le istruzioni da dare (da Wikipedia). Da allora sono diventati sempre più articolati e plurivalenti. Alcuni degli OS storici più famosi sono OS/360, installato sui primi PC della IBM, e UNIX, progettato dai ricercatori dei laboratori AT&T e Bell, dal quale provengono Linux e Mac OS.

Una finestra sul mondo (Fonte: lonestar.edu)

Una finestra sul mondo (Fonte: lonestar.edu)

Senza gli OS non saremmo mai arrivati ad un così elevato livello di interazione con i computer e con altri dispositivi (ad esempio cellulari) come quello che abbiamo adesso. Possiamo affermare che essi sono la nostra “finestra” (e qui il nome dato da Microsoft ai suoi OS mi sembra azzeccato) sul complesso mondo dell’informatica, permettendoci di capire con facilità cose altrimenti incomprensibili e di interagire con il mondo senza preoccuparci di come funzionano i computer.

 

Cristian Ricardo Quadro

Annunci

iOS 7 al WWDC MMXIII

14 Giu

Salve lettori appassionati,

qualche giorno fa vi ho parlato del nuovo sistema operativo per computer presentato dalla Apple, ora invece vi illustrerò le novità principali mostrate per quanto riguarda il mobile. Il nome del nuovo iOS è 7, segue quindi la scia dei suoi predecessori ma la sostanza segna una drastica rottura rispetto al passato. Prima di tutto bisogna precisare che il sistema presentato è under-construnction, ossia è ancora in fase di produzione e ciò che abbiamo visto al WWDC è solo un’anteprima.

(immagine da apple.com)

(immagine da apple.com)

La grafica però risulta già completamente rinnovata, con colori molto più chiari (il bianco predomina nella quasi totalità degli sfondi) e all’insegna della semplicità. Proprio questa è la parola d’ordine di tutto iOS 7, ma non solo ([…]simpler, more useful, and more enjoyable. apple.com), ossia hanno cercato di creare un sistema che integri un nuovo design e nuove funzionalità nella tipica intuitività di iOS. Il risultato è a tratti più semplice (molti tasti nelle app native sono stati eliminati), a tratti più complesso (è stato ad esempio introdotto un Pannello di controllo con le funzioni più importanti.

Control Center (immagine da apple.com)

Control Center (immagine da apple.com)

Semplificare il design può sembrare facile ma non dimentichiamoci che l’ultima volta che Cupertino ha “creato” un design essenziale, per un orologio non ha dovuto pagare solo gli sviluppatori, ma anche le ferrovie svizzere (“Apple, l’orologio svizzero costa caroLaStampa.it). Il lavoro in questo caso è stato svolto in modo eccelso dai vari team di designer che Jonathan Ive ha messo in competizione. I loro frutti dovranno poi essere unificati in modo da diventare più coesi e omogenei (già si intravede qualche modifica alle icone, leggi di più su iphoneitalia.it).

Jonathan Ive (immagine da apple.com)

Jonathan Ive (immagine da apple.com)

E’ stato introdotto un vero Multitasking, che tutti aspettavano da tempo; tutto il controllo del dispositivo è quindi più coerente e fluido, grazie anche alle animazioni 3D che lo accompagnano (che a mio avviso sono davvero fighe!). Era davvero obbligatoria quest’ultima modifica dato che con potenze sempre maggiori non avrebbe senso limitare in questo modo l’utente.

(Video di presentazione del Multitasking)

Un’altra bella novità è iTunes Radio, una nuova funzione del celebre programma di gestione musica e non solo. In breve offrirà un servizio simile a Spotify e Pandora, ma “gratuitamente”. Ci sarà della pubblicità (che io considero sempre una forma di pagamento) oppure sarà davvero gratuito se si usa “Match”, ossia la sincronizzazione attraverso iCloud. Le stazioni inoltre saranno create in base ad artisti, generi, canzoni, in evidenza o personali.

Schermata 06-2456458 alle 22.21.00

 

Altre migliorie importanti sono state apportate alla Camera, con inserimento di zoom e snapshot di alta qualità durante i video, filtri e immagini di dimensioni quadrate per quanto riguarda le foto. Anche la loro archiviazione è stata modernizzata e resa più simile ad iPhoto, con collezioni per luoghi, mesi e anni.

 

Schermata 06-2456458 alle 22.58.55

 

 

L’app Trova il mio iPhone ha integrato qualche funzione in più come il poter mandare messaggi a distanza al proprio dispositivo perso e nel caso di smarrimento definitivo il possibile blocco a distanza. L’iPhone sarà riattivabile loggandosi con il proprio account.

Schermata 06-2456458 alle 22.59.30

Volendo fare un bilancio complessivo, iOS 7 sembra porti un vero cambiamento, e dimostra quindi un desiderio di osare e progredire. La Apple sembra infatti che abbia voluto sfidare tutti i grandi nei loro specifici ambiti (considerando anche OS X Mavericks): Windows e il pacchetto Office con iWork su iCloud, Instagram con le migliorie sul software Camera, Spotify e Pandora con iTunes Radio, Dropbox e similari con le migliorie ad iCloud e così via.

Cupertino è stata positivamente impetuosa, speriamo che i risultati degli sviluppatori in autunno non deludano le nostre aspettative!

Federico Fallace

Fonti: iphoneitalia.it

Fonte di tutte le immagini: apple.com

 

Lo stile Linux: Libertà e spirito di comunità!

14 Giu

Avete mai pensato di provare a passare ad un OS gratuito e libero dalle costrizioni delle compagnie software? Siete mai siete mai stati incuriositi da Linux e attratti dalla sua diversità? Io lo sono sempre stato, ma non ho mai avuto l’occasione di dedicare del tempo all’immersione nell’universo dell’Open Source (anche se sarebbe più opportuno usare il termine Free Software), fino ad ora.

Il Software Libero (Fonte: tis.bz.it)

Il Software Libero (Fonte: tis.bz.it)

Innanzitutto vorrei spiegare la differenza tra i termini appena menzionati. Il termine Free Software (Software Libero) denota il software creato con in mente la comunità e la progressione della conoscenza umana. Infatti il Free Software deve rispettare le quattro libertà fondamentali:

  • 0) La libertà di eseguire il programma per qualsiasi motivo.
  • 1) La libertà di studiare il programma e di modificarlo.
  • 2)La libertà di ridistribuire copie così che si possa aiutare il proprio vicino.
  • 3)La libertà di ridistribuire copie della tua versione modificata così che l’intera comunità possa beneficiare dei tuoi cambiamenti.

(Fonte: lezioni al corso di Rivoluzione Digitale)

Le libertà 1 e 3 impongono che il software debba essere a sorgente aperto, ossia con il codice di programmazione visibile. Vi potete rendere conto che il Free Software non è necessariamente gratis, ma solo libero.

Open Source (Sorgente Aperto), invece, è un termine creato a scopo di marketing dalle imprese per distanziarsi dal radicalismo del Free Software e attrarre i consumatori che cercano delle soluzioni “economicamente sostenibili”. Il software denominato con questo termine è effettivamente a sorgente aperto, ma non rispetta necessariamente le quattro libertà e quindi è possibile, ad esempio, che sia vietato modificare o ridistribuire il codice.

(Fonte: /CHKDSK)

(Fonte: /CHKDSK)

Dopo questo excursus posso parlare della mia esperienza con Linux: Ho provato ad installare su una macchina virtuale Linux Mint, la distribuzione basata su kernel Linux più utilizzata al mondo. Inaspettatamente non ci sono stati problemi con i driver e l’installazione è stata veloce.

Al primo avvio mi sono accorto con piacere che l’interfaccia MATE è molto simile a quella di Windows, fatto forse voluto per minimizzare i traumi dal cambiamento. I tasti per la chiusura delle finestre, ad esempio, sono nell’angolo superiore destro, invece che a sinistra come si trova solitamente nei sistemi basati su UNIX, come Mac OSX.

Il desktop di Mint (Fonte: arstechnica)

Il desktop di Mint (Fonte: arstechnica)

Dopo poco tempo dal primo avvio si incontrano tuttavia i primi problemi, il principale dei quali è: come posso utilizzare i programmi di cui ho bisogno? Molti programmi sono disponibili anche in versione Linux, ma spesso capita di dover ricorrere a un programma disponibile solo per Windows. Allora basta installare Wine, il cui acronimo significa Wine Is Not an Emulator (Wine non è un emulatore). In effetti lo si potrebbe definire un simulatore: imita i file di sistema di Windows per permettere di utilizzarne i programmi. Wine è ancora esperimentale (lo è da più di 15 anni) e non sempre funziona, ma può essere di grande aiuto.

Programma di conversione per Windows su Wine

Programma di conversione per Windows su Wine

Linux Mint si è dimostrato reattivo e leggero, dunque viene da chiedersi: Perché sono ancora pochi coloro che utilizzano le distribuzioni Linux sui propri pc? Secondo me è perché il timore dei cambiamenti resta comunque forte tra chi non sa utilizzare bene il computer. Inoltre si stanno diffondendo sempre maggiormente i tablet Android tra chi faceva un uso basico dei pc: navigare su internet, controllare la posta, giocare a qualche gioco. In questo caso si può decretare la vittoria di Linux, che è alla base di Android.

E’ tuttavia una vittoria amara: Android induce ben poco chi lo utilizza allo spirito di comunità proprio di Linux. Questo spirito si basa sul dare il proprio contributo secondo le proprie possibilità, ad esempio segnalare i bug trovati o aiutare a rimuoverli, e induce a mantenere il software libero dai vincoli pecuniari. E’ vero che chi ha conoscenze basiche di informatica difficilmente si preoccuperà dell’esistenza di una comunità, ma in questo caso si orienterà sui tablet, più facili da utilizzare, ed è questo il fattore che differenzia chi utilizza Linux sui computer e chi utilizza Android (almeno la maggior parte).

GetInv

Non è dunque ancora arrivato il momento della grande diffusione di Linux sui computer, e secondo me difficilmente arriverà.

 

Cristian Ricardo Quadro

Live from Africa: Ubuntu!

14 Giu

ubuntu-wallpaper2

Ubuntu è una distribuzione Linux, nata nel 2004 e basata su Debian, che si concentra sulla facilità di installazione e d’uso e sul rilascio semestrale di nuove versioni. Ubuntu, rilasciata come software libero, ha un orientamento spiccato verso l’utilizzo del desktop e una maggiore attenzione al supporto hardware dei portatili.

Il nome deriva da un antico vocabolo, “Zulu” (letteralmente “umanità”) diffuso in varie parti dell’Africa meridionale nel contesto del detto “Zulu umuntu ngumuntu ngabantu”, tradotto come “io sono ciò che sono per merito di ciò che siamo tutti”. La distribuzione Ubuntu si prefigge l’obiettivo di portare nel mondo del software questo concetto, dando un grande peso alla comunità di utenti che partecipano allo sviluppo del sistema operativo.
Il progetto comprende tra i punti chiave:

  • Una forte impronta Debian (una fork temporanea di questa distribuzione);
  • L’uso del Desktop environment GNOME;
  • La garanzia di aggiornamenti semestrali;
  • Una forte impronta come software libero;
  • Una risoluzione del bug #1.

Il primo rilascio del sistema operativo avviene il 20 ottobre 2004. I rilasci semestrali seguono di un mese i rilasci di GNOME in maniera da includere sempre l’ultima versione stabile disponibile. A differenza di altri precedenti fork di Debian, come MEPIS, Xandros, Linspire, Progeny e Libranet che usano parti di codice chiuso, il modello di Ubuntu è di usare sempre un software libero (concetto derivato dalla filosofia di Debian). I pacchetti di Ubuntu derivano generalmente dal ramo instabile di Debian, usando APT o Synaptic per l’installazione degli stessi.

Ubuntu coopera, fino ad un certo livello, anche con lo sviluppo di Debian apportando correzioni a vari bug e aggiungendo funzionalità, anche se ci sono critiche sulla non notevole mole di integrazione e sulla non compatibilità binaria di alcuni pacchetti tra Debian e Ubuntu. Ubuntu è basata sull’ambiente desktop GNOME, specificatamente progettato per fornire un’interfaccia semplice, intuitiva ed allo stesso tempo completa e potente corredata da un’ampia gamma di applicazioni libere.
Il punto di forza di Ubuntu è la sua estrema semplicità di utilizzo, il suo ottimo riconoscimento e supporto dell’hardware, il proprio pacco software aggiornato contenente tecnologie come Compiz Fusion ed altri strumenti che rendono questa distribuzione spiccatamente improntata verso l’ambiente desktop.

Una delle promesse della distribuzione è di avere un sistema desktop pronto all’uso in 25 minuti (tempo medio di installazione). La versione desktop è stata progettata per i compiti più utili all’utente medio. Il sistema appena installato comprende un word processor (OpenOffice.org, per creare e stampare documenti e presentazioni), un internet browser (Mozilla Firefox, per navigare su internet), il programma di fotoritocco (GIMP), un client di messaggistica istantanea (Pidgin), oltre a funzioni più basilari come un editor di testi (Gedit), un visualizzatore di documenti PDF (Evince), un lettore multimediale e giochi. È possibile comunque installare, con gli strumenti inclusi nel sistema oltre 20.000 programmi, tra cui software come Skype, MSN ed altri.

dash13.04
Tutte le versioni di Ubuntu sono sensibili al tema dell’accessibilità, ovvero la possibilità a persone diverse per età, cultura e condizione fisica di usare lo stesso sistema:

  • Temi ad alto contrasto – per soggetti ipovedenti;
  • Sintetizzatore vocale e lente di ingrandimento virtuale – per ipovedenti o non vedenti;
  • Tastiera virtuale (on screen) – per soggetti incapacitati ad usare una normale tastiera

In virtù dei sistemi di gestione dei pacchetti tipici di un sistema Linux, Ubuntu tiene traccia di tutti i programmi installati e effettua gli aggiornamenti in maniera centralizzata e senza il bisogno di riavviare il computer.
Una importante caratteristica di un sistema Ubuntu è la sua resilienza a virus, adware, spyware e malware, essendo questi sviluppati generalmente per Microsoft Windows.

L’architettura di un sistema Linux lascia poca libertà d’azione ad un programma nocivo data la tendenza ad operare con un account utente limitato (non amministrativo, root).
Scegliendo applicazioni libere dai repository ufficiali è quasi impossibile trovare applicazioni malware dato che l’eventuale codice maligno verrebbe notato ed eliminato.

ubuntu-1024x8191

In conclusione, ecco un commento da parte di un utente che presenta il pensiero della stragrande maggioranza delle persone che usano Ubuntu.

“Ubuntu non é un sistema, é una roccia! Il termine “crash” non lo conosce! Le risorse dell’hardware vengono innanzitutto riconosciute dal Wi-Fi al Bluetooth alla prima volta e soprattutto sfruttate bene, vale a dire:

  • I processori non lavorano mai a pieno regime (come in Vista!);
  • La RAM viene utilizzata in maniera parsimoniosa (mentre Vista ne utilizza già 500 Mb per i fatti suoi).

Configurabilità ed estetica, dopo un bel trattamento con Beryl, non ha rivali.

Certo, nessun sistema é perfetto ma Ubuntu batte tutti in efficienza, costo (completamente GRATUITO), estetica, configurabilità del proprio ambiente di lavoro, ecc.”

In seguito, vi riporto un video in cui potete farvi un’idea.

http://www.youtube.com/watch?feature=player_embedded&v=i0ZtcxHUSDQ

Ed adesso, a voi i commenti!

 

Giuseppe Zocco

L’emulazione dei sistemi: Via libera alla nostalgia!

14 Giu

La caratteristica particolare del digitale è che, grazie al binario e ai programmi, tutto si può fare. Esempio di ciò è la macchina di Turing: una macchina che funziona con degli algoritmi (procedimenti), allo stesso modo dei programmi per computer, e che teoricamente può fare qualunque calcolo o analisi con un numero finito di passaggi.

Cosa voglio dire con questo? Che possiamo persino far credere a un sistema o a un programmi di trovarsi su un dispositivo diverso da quello per il quale è stato progettato, ad esempio usare dei programmi per cellulare sul computer. Sto parlando dell’emulazione.

(Fonte: Fantasyanime)

Gli infiniti utilizzi dell’emulazione (Fonte: Fantasyanime)

Sapete la differenza tra emulazione e virtualizzazione? Mentre la virtualizzazione permette al pc di creare una replica virtuale di sé stesso, con l’emulazione si può creare una macchina con hardware completamente diverso da quello di origine: E’ possibile così replicare i primi computer, come il Commodore 64 e l’Amiga, o giocare ai giochi della PlayStation direttamente dal proprio pc.

Alcuni esempi di emulatori:

(Fonte lista: Wikipedia)

Come vedete, le applicazioni sono molteplici. Oltre ad emulare diversi dispositivi sul computer è possibile emulare un computer su altri dispositivi, ad esempio sulla PSP o sullo smartphone Android, grazie a programmi come Dosbox o QEMU. In questo modo si possono portare dei programmi per computer sempre con sé in tasca:

DOS e Windows su PSP con Dosbox (Fonte: Modthis)

DOS e Windows su PSP con Dosbox (Fonte: Modthis)

L’emulazione viene anche sfruttata ufficialmente su console come la PS3 per permettere di giocare ai giochi di console precedenti, come la PS2. Un altro utilizzo, molto interessante, è quello sfruttato da Bluestacks, un programma che permette di emulare l’hardware dei cellulari, che usano processori con architettura ARM invece della solita x86 dei pc, permettendoci di utilizzare le app scritte per il sistema operativo Android sui nostri computer.

Bluestacks (Fonte: Crunchbase)

Bluestacks (Fonte: Crunchbase)

Il maggior pregio dell’emulazione rispetto alla virtualizzazione è anche il suo maggiore problema: Visto che deve replicare esattamente il sistema di riferimento, lo spazio in cui sono permesse ottimizzazioni è limitato, e il sistema emulante deve avere una potenza molto maggiore di quello emulato, in maggior modo rispetto a quanto si vede con le macchine virtuali. E’ comunque possibile emulare un sistema dentro ad un altro:

Emulatore di Sinclair ZX Spectrum, dentro a un emulatore di Acorn Archimedes su Windows XP (Fonte: Wikipedia)

Emulatore di Sinclair ZX Spectrum, dentro a un emulatore di Acorn Archimedes su Windows XP (Fonte: Wikipedia)

Ciò rende l’emulazione molto meno utile della virtualizzazione in ambito lavorativo, ma almeno ci permette di rivivere le nostre esperienze più nostalgiche con i giochi retro’ e fare delle cose improbabili con i nostri dispositivi, senza limiti imposti dai tipi di hardware.

 

Cristian Ricardo Quadro

Android e il rooting: Libera il potenziale del tuo smartphone!

13 Giu

Avete un cellulare con OS Android e volete di più? Siete rimasti a una versione vecchia del sistema perché il produttore non rilascia più gli aggiornamenti? Oppure, semplicemente, volete sbarazzarvi delle app preinstallate che vi rallentano il sistema? Se la risposta a una di queste domande è sì, allora potreste essere interessati al rooting del cellulare, e all’installazione di ROM Custom. Adesso vi spiegherò tutto quello che c’è da sapere.

(fonte: Tronicsrepair)

(fonte: Tronicsrepair)

Come sapete dagli articoli scritti in precedenza, Android si basa su Linux. Quando si utilizza Linux di solito si hanno solamente permessi da Utente Normale: non è possibile modificare i file di sistema. Ciò permette, durante il normale utilizzo del cellulare, di non correre rischi di compromettere i file che permettono il funzionamento. Tuttavia, se si vuole modificare i file alla radice del sistema e sbloccare il potenziale di Android bisogna ottenere i permessi di root (radice), diventando in questo modo un Superuser.

Superuser è anche il nome del programma che da' i permessi di root alle altre app (Fonte: Google)

Superuser è anche il nome del programma che da’ i permessi di root alle altre app (Fonte: Google)

Una volta che si hanno i permessi di root si può fare di tutto: installare dei driver per utilizzare il joystick della PS3 attraverso Bluetooth, eliminare le app fastidiose che prima non era possibile disinstallare, e installare una versione modificata del sistema Android, ossia una Rom Custom, che vi permette di acedere a tutte le personalizzazioni possibili del vostro cellulare e alle ultime versioni rese disponibili da Google (sempre che il vostro smartphone non sia troppo vecchio).

Tutto ciò vi interessa? Bene, ma fare il rooting è una procedura tutt’altro che semplice, e il metodo varia da modello a modello. Cercherò di darvi delle istruzioni generiche che valgono, con i dovuti accorgimenti, per tutti i cellulari, e vi indirizzerò verso i siti giusti.

Prima di tutto il solito disclaimer: Fare il rooting del cellulare e installare una Rom Custom può essere rischioso. Se non si seguono bene le istruzioni e non si legge in modo esauriente sull’argomento prima di agire si può arrivare al brick del cellulare. Non sono responsabile per qualunque danno causato da voi ai vostri smartphone nel seguire questa guida.

Attenzione! (Fonte: hse.gov)

Attenzione! (Fonte: hse.gov)

Adesso, quello che ho scritto potrebbe spaventarvi e indurvi a desistere. Tuttavia basta considerare i vantaggi in rapporto ai rischi, e sapere che secondo la mia esperienza basta seguire alla lettera le guide alla lettera per rimanere al sicuro. Nel mio caso i vantaggi sono stati superiori ai rischi: ho un Galaxy S che aveva un sistema vecchio e reso lentissimo da Samsung, mentre adesso avrebbe poco da invidiare a un S2. Sappiate inoltre che se, dopo aver installato un sistema Custom, scoprite che non vi piace, è possibile tornare a quello di partenza facilmente e senza ulteriori rischi.

Se volete solamente fare il rooting, mantenendo il sistema ufficiale, basta usare dei tool come One Click Root. Questi tool richiedono poche conoscenze tecniche e sono abbastanza sicuri. E’ ben più difficile, invece, andare oltre e installare una Rom Custom, ma i benefici sono molto maggiori: avrete un sistema libero dalle interfacce rese pesanti dai produttori.

Avete deciso di installare una Rom Custom? Siete pronti? Cominciamo!

  • Passo 1: Cercate il vostro modello sulla wiki di Cyanogenmod. CM è forse la Rom Custom più conosciuta al mondo, e una delle migliori. Se trovate il vostro dispositivo sul sito, e c’è la guida per fare il rooting e installare la Rom, siete fortunati. Avete tutto quello che vi serve per effetuare il root con facilità. Andate al Passo 3.
(Fonte: Phandroid)

La home page di Cyanogenmod (Fonte: Phandroid)

  • Passo 2: Cercate il vostro modello sul forum xda developers. Se il vostro dispositivo non è nella lista di CM, non c’è da disperare. Basta cercarlo su xda, la comunità di sviluppatori di Rom custom più grande al mondo. Una volta che siete sulla pagina del vostro dispositivo, basta andare nella sezione Android Development (o, se c’è, Original Android Development) e trovare una Rom che vi piaccia e che, soprattutto, abbia le istruzioni per installarla.
  • Passo 3: Leggete bene tutto ciò che vi sembra importante sapere, prima ancora di iniziare a provare. Questo è l’unico modo per evitare spiacevoli inconvenienti.
  • Passo 4: Fate il backup di tutti i vostri file e programmi (per le app vi consiglio un programma come Helium).
  • Passo 5: Seguite le istruzioni e incrociate le dita. Se avete fatto tutto bene il root dovrebbe funzionare.
  • Passo 6: Una volta che avete installato qualsiasi Rom potete installare la Rom custom che volete, agendo dalla recovery, un menù al quale si accede all’accensione del cellulare grazie a una certa combinazione di tasti, che varia a seconda del modello (di solito Volume Su + Power).
(Questo è il menu recovery. Fonte: Your Next Android)

(Questo è il menu recovery. Fonte: Your Next Android)

Adesso il vostro cellulare non sarà più lo stesso. Sentite il cambiamento, ed esperimentate tutte le varietà di interfacce che offre Android. In caso di problemi chiedete aiuto nel forum di xda, dove c’è sempre qualcuno pronto a rispondervi, oppure domandate a me nei commenti. Buona avventura!

 

Cristian Ricardo Quadro

Grandi novità con OS X Mavericks!

12 Giu

Salve amanti dell’hi-tech,

come saprete il 10 giugno è iniziato il WWDC (developer.apple.com), ossia il World Wide Developers Conference dove l’azienda Apple ha presentato davvero molte novità sia sul piano Hardware che Software. In questo post descriverò solo quest’ultime.

www.ninjamarketing.it

Logo del WWDC 2013 (immagine da ninjamarketing.it)

OS X Mavericks è il nome del nuovo sistema operativo per compuer presentato all’evento. In molte delle novità vedremo un grande avvicinamento a iOS, il mondo mobile della Apple; d’altronde le vendite degli smartphone e tablet sono sempre più in crescita ed è giusto cercare di colmare questa divisione. Ho diviso le novità rispetto all’ambito, ossia quelle che riguardano Internet, quelle per la sincronizzazione col mobile e quelle per la gestione file e altre funzioni non in relazione alla rete.

Foto del WWDC (da ninjamarketing.it)

Foto del WWDC (da ninjamarketing.it)

Per quanto concerne la gestione file è stato migliorato il Finder, ossia l’applicazione che “consente praticamente di accedere “visivamente” a tutti i dati presenti sul Mac, inclusi dischi rigidi, applicazioni, file, cartelle e DVD” (support.apple.com). Ciò grazie a tag e diverse priorità per i file, che permettono di individuarli molto velocemente. Spesso infatti può essere molto frustrante trovare file archiviati molto tempo prima e queste sono due ottime soluzioni, anche se era già possibile ottenere tabs per il Finder grazie all’app TotalFinder (totalfinder.binaryage.com).

Funzionamento dell'app TotalFinder (immagine da sito ufficiale totalfinder.binaryage.com)

Funzionamento dell’app TotalFinder (immagine da sito ufficiale totalfinder.binaryage.com)

OpenGL 4, un’altra innovazione, è un gestore delle prestazioni che migliora anche la durata della batteria attraverso l’uso di memoria compressa, che evita l’uso di memoria inattiva, migliorando reattività e diminuendo consumi (fino al 62% di energia in meno).

L’ultima miglioria che non riguarda la rete è il Multiple Display, che migliora la gestione di più schermi, che potranno avere dock e menu, rendendoli praticamente computer diversi (ma ovviamente sarà possibile il dragging tra i veri schermi). Molto interessante per chi è abituato a esporre presentazioni o per chi usa più display per velocizzare le operazioni (anche se già con il trackpad la gestione delle applicazioni è molto comoda, quasi come avere più schermi).

Multiple Display (immagine da engadget.com)

Multiple Display (immagine da engadget.com)

Per quanto riguarda strettamente applicazioni Internet abbiamo sicuramente un grande miglioramento di Safari, che dovrebbe diventare più veloce di Google Chrome di 1,44 volte usando meno CPU. A quanto dichiarato migliorerà anche lo scrolling e diminuirà il lag. Le promesse sono quindi di un Browser che possa visualizzare di più e più velocemente. Personalmente trovo che già ora Safari sia molto stabile anche se messo “sotto pressione” con l’apertura di decine di schede. Sarà inoltre presente una barra con gli Shared Links, ossia i link condivisi dai propri amici su Twitter, Facebook e altri social.

safari

Statistiche uso CPU da parte dei browser (immagine da ninkamarketing.it)

 

Un contatto ancora più diretto con iOS si avrà grazie alla disponibilità di iBooks anche per computer (ovviamente con possibilità di usare iCloud). Penso che sia per gli ebook sia per i file PDF sarà molto comoda una sincronizzazione automatica senza passare manualmente attraverso iTunes. Un servizio simile è comunque già offerto da Dropbox, integrato in molte app, ma visto che i preziosi giga gratuiti sono limitati in entrambi i casi, dividere i la syncro delle varie app in due “nuvole” non può che raddoppiare la comodità. Sarà inoltre possibile calcolare un percorso dal proprio Mac e trasferirlo attraverso l’applicativo Mappe all’iPhone che verrà usato come GPS. Ritengo minore questa miglioria perché l’app Google Maps supera di gran lunga in accuratezza il programma della Apple.

open-gl-4

Personalmente penso che alcune tra le pecche più fastidiose delle precedenti versioni siano state corrette e che sia stata aggiunta qualche novità carina. Commentate e dite anche la vostra sulle novità di Mavericks! In ogni caso il nuovo OS sarà disponibile dal prossimo autunno, sperando che gli sviluppatori soddisfino le nostre aspettative! 

Federico Fallace

Fonti: http://www.ninjamarketing.it/2013/06/10/wwdc-2013-apple/

AGGIORNAMENTO: Pubblicato video della presentazione di Mavericks nella sezione video.

il kernel

10 Giu

Il kernel, termine inglese per nucleo, è la base del sistema operativo. Il suo compito è  quello di gestire i tempi di accesso dei diversi programmi all’hardware e di controllare che il tutto avvenga in sicurezza. Ovviamente  la sua assenza non determina il mancato funzionamento di un computer, ma è certamente importante nell’ottimizzazione dello svolgimento dei vari processi. A seconda del grado di astrazione della parte hardware, resa necessaria per la sua complessità, i kernel si dividono in kernel monolitici, microkernel, kernel ibridi ed esokernel.

schema funzionamento

Il kernel coordina: la memoria, i processi, l’accesso all’hardware del sistema, il file system, l’accesso alle risorse da parte dei processi. Inoltre suddivide la memoria in parti più piccole e “maneggevoli” dette pagine, che vengono scaricate sulla memoria di massa (hardisk) quando non servono più e ricaricate da quest’ultima in memoria centrale quando se ne presenta la necessità (tecnica dello swap) ; si arriva così a creare una memoria virtuale teoricamente illimitata da far vedere alle applicazioni mentre il SO utilizza una contenuta quantità di memoria.

Processi e memoria devono essere coordinati tra loro in modo che le pagine di programma che sono attualmente in esecuzione o che contengono dati attualmente utilizzati, possano risiedere in memoria centrale.  Il processo viene sospeso e passa in stato di attesa se una pagina necessaria ad un processo in esecuzione non si trova in memoria centrale; il processo torna ad essere pronto per l’esecuzione dopo l’operazione di input da memoria di massa della pagina necessaria.

Il kernel può essere considerato la naturale evoluzione dei programmi debugger, cioè di quei software, utilizzati sui primi elaboratori e caricati su una memoria ROM, in grado di resettare il sistema alla fine dell’esecuzione di un programma e di prepararlo ad uno successivo. Il kernel ha il vantaggio di riuscire a gestire in modo efficiente il multitasking,  rendendo possibile la virtualizzazione dei processi: in pratica l’utente percepisce come contemporanee le esecuzioni di due o più programmi, che nella realtà avvengono in modo alternato.

Il concetto di time-sharing è alla base del multitasking e permette la condivisione della CPU tra più processi concorrenti; il tempo di esecuzione del processore è condiviso tra più processi/utenti e ogni processo in esecuzione  ha a disposizione dei quanti di tempo della CPU. Se viene chiesto al sistema di eseguire contemporaneamente due processi A e B, la CPU attuerà un meccanismo di time-sharing, cioè eseguirà per qualche istante (quanto di tempo) il processo A, poi per qualche istante il processo B,poi ritornerà ad eseguire il processo A e così via … Il passaggio dal processo A al processo B e viceversa viene definito cambio di contesto (contest switch).

Le decisioni riguardanti l’esecuzione di un cambio di contesto tra due programmi vengono intraprese da un componente del sistema operativo (software) detto scheduler. Questo programma   stabilisce un ordinamento temporale per l’esecuzione di un insieme di richieste di accesso ad una risposta.

Viene definito scheduling la ripartizione del tempo di CPU tra tutti processi concorrenti . Lo scheduling è un operazione molto importante per il corretto ed efficiente funzionamento del calcolatore consentendo di migliorare l’utilizzo del processore massimizzandone l’utilizzo e la produttività e minimizzando il tempo di attesa e quello di risposta.

Il Kernel è un passaggio fondamentale nell’evoluzione dei sistemi operativi, perché nella sua struttura e funzione ne costituisce l’idea basilare. Come molte altre  invenzioni, il kernel nasce dall’esigenza di agevolare il lavoro dell’uomo: in questo caso migliorare l’operatività dei programmi, lasciando il compito di gestirli ad un altro software. Chiunque può usare il computer adoperando vari programmi contemporaneamente  non preoccupandosi di come il processore debba analizzare le informazioni. Questo rende il pc alla portata di tutti.

Il multitasking, reso fattibile dal kernel, è un fattore determinate nello sviluppo della società perché modifica il nostro accesso all’informazione e quindi la nostra capacità critica. Se possiamo accedere a più notizie contemporaneamente siamo in grado di fare collegamenti tra fatti diversi e avere visione più ampia del mondo. Inoltre il multitasking rende possibile lo svolgimento di più compiti contemporaneamente migliorando l’efficienza.

Ariel Belga Fedeli

Fonti: www.diit.unict.it, http://vandali.org/DanieleMasini/MyLinux/MyLinuxsu93.php, http://it.m.wikipedia.org/wiki/Kernel

RTOS: real time operative system

9 Giu

 Gli RTOS, i sistemi operativi real-time, sono SO  in grado di fornire delle risposte in un tempo determinato. Hanno particolare rilevanza in ambito industriale e hanno la peculiarità di essere deterministici e prevedibili. Si dividono principalmente in due categorie, gli hard e i soft,  in base alla fattibilità di schedulazione di diverse tipologie di task, cioè a seconda della loro capacità di ottimizzare dei processi che qualora non rispettassero dei tempi precisi di esecuzione potrebbero provocare dei danni al sistema.

                                                           

Vxworks e Windows CE due RTOS

I  RTOS sono particolarmente importanti nello sviluppo dei sistemi embedded, cioè apparecchiature elettroniche sviluppate specificatamente per un determinato scopo; ad esempio il computer che gestisce il risciacquo dei piatti in una lavastoviglie o la copia e la stampa su una fotocopiatrice.  Un sistema real time garantisce infatti la realizzazione di sistemi complessi altrimenti irrealizzabili tramite la sola parte hardware. Nel corso del tempo le aziende hanno quindi gradualmente concentrato  quasi la totalità degli sforzi per sviluppare degli RTOS specifici per problemi come il multicolore adottato da varie piattaforme di computing.

Vi sono sistemi operativi real-time  sia open source che closed source e l’uso di uno o dell’altro comporta diverse conseguenze: i primi garantiscono, sopprimi garantisconorattutto per un’azienda , dei vantaggi economici  di spesa contenuta; i secondi, invece, un costante supporto dell’azienda proprietaria dello RTOS alla risoluzione dei problemi . la scelta open source crea sicuramente un’indipendenza da parte dell’azienda verso la produttrice dell’OS e quindi una maggiore libertà di sviluppo; la scelta closed source una sinergia tra due fabbriche che determina una maggiore efficienza del prodotto.

Dal punto di vista economico lo sviluppo di un RTOS può essere costoso; invece da quello pratico un sistema operativo real time  richiede da parte del processore un numero notevole di cicli e causa un sovraccarico del processore. Un thread può sicuramente occupare della memoria aggiuntiva e, se non provvisto di un sistema di priorizzazione, il RTOS può far aspettare un insieme di istruzioni alta priorità svolgendone uno meno importante.

Il  RTOS è un esempio di come un sistema operativo sia determinante non solo per l’utilizzo di software ma anche per il miglioramento dell’hardware e dell’elettronica in generale. Bisognerebbe tuttavia considerane il limite: l’efficienza in tempi precisi e un sistema deterministico richiedono notevoli finanziamenti; inoltre i problemi di sovraccarico del processore possono determinare non solo il danneggiamento di un computer ma comprometterne tutto il contenuto, causando ulteriori e più gravi problemi.

Ariel Belga Fedeli

Fonti:http://robotics.fau.edu/wp-content/uploads/2010/10/Tom-Presentation.pdf , http://it.wikipedia.org/w/index.php?search=&button=&title=Speciale%3ARicerca , http://www.elettronicanews.it/articoli/0,1254,40_ART_4329,00.html

Cos’é GNU/Linux?

9 Giu

GNU/Linux é un sistema operativo che grazie alla sua licenza (GPL, descritta a questo link su Wikipedia) é un software libero. Ciò vuol dire che é utilizzabile per qualsiasi scopo (personale, didattico, in ambito lavorativo…), riproducibile in maniera illimitata e modificabile per le proprie esigenze, ma nel caso in cui si pubblichi il programma con le proprie variazioni bisogna distribuirlo con la stessa licenza in modo che sia di beneficio per la comunità. Il tutto gratuitamente e senza chiedere il permesso all’autore.

Il naturale logo di GNU, l'omonimo animale (immagine da gnu.org)

Il naturale logo di GNU, l’omonimo animale (immagine da gnu.org)

Il codice sorgente, ossia il testo che un programmatore scrive e riesce a comprendere e che le macchine interpretano e compilano, è scaricabile, consultabile e modificabile liberamente. Questa é la vera differenza tra “free” come gratuito (free beer) e “free” come libero (free speech).

Stallman si oppone all'Open Source, concetto troppo moderato rispetto al software libero (immagine da blog.hfoss.org)

Stallman si oppone all’Open Source, concetto troppo moderato rispetto al software libero (immagine da blog.hfoss.org)

Una mappa delle infinite distribuzioni di Linux (da Wikipedia). Clicca per ingrandire l'immagine.

Una mappa delle infinite distribuzioni di Linux (da Wikipedia). Clicca per ingrandire l’immagine.

Con il Computer Software Copyright Act del 1980 si incominciò a tutelare il software esattamente come un’opera letteraria; contro questa decisione Richard Stallman creò il sistema operativo GNU (GNU is Not Unix) che era completamente libero ma a cui mancava un kernel funzionante. Nel 1991 Linus Torvalds, volendo un software simile a Minix (Wikipedia) ma senza una licenza che ne limitasse le modifiche, creò un sistema operativo partendo dalla base GNU a cui aggiunse il kernel chiamato Linux in suo onore. L’unione complementare di GNU e Linux ha dato vita alle migliaia di versioni di OS che oggi sono la piú valida alternativa ai software proprietari quali Windows, Mac e UNIX. 

GNU e Linux insieme per un OS davvero libero (immagine da gnu.org)

GNU e Linux insieme per un OS davvero libero (immagine da gnu.org)

 

 

 

 

 

Una particolarità di GNU/Linux é che si può utilizzare completamente da linea di comando, essendo stato concepito per server. La shell (qui una breve guida di linuxguide.altervista.org) é lo strumento che acquisisce i comandi dall’user o dalle applicazioni e li traduce in linguaggio eseguibile dal kernel. Esistono anche degli strumenti grafici che aiutano l’utente nell’utilizzo dei comandi. Ad esempio un emulatore di shell aiuta con il loro completamento, mostra facilmente quelli inseriti in precedenza e cosí via.

Spiegazione della relazione  shell-kernel (immagine da ubuntulandia.blogspot.it)

Spiegazione della relazione shell-kernel (immagine da ubuntulandia.blogspot.it)

Linux é inoltre un sistema operativo fortemente multi utente, quindi ha utenti standard con permessi limitati e l’amministratore, chiamato root, che ha i permessi massimi.  Con questo super utente ci si può loggare per tutta la sessione (non in tutte le distribuzioni di Linux) o lo si può “invocare” per singoli comandi volta per volta grazie al comando sudo. Per il normale uso é consigliabile il secondo metodo, soprattutto per utenti non espertissimi (per evitare di dare permessi a comandi “pericolosi” senza rendersene conto).

Root has got the power! (immagine da linuxbasic.altervista.org)

Root has got the power! (immagine da linuxbasic.altervista.org)

Spero che il mondo Linux vi abbia affascinato come ha affascinato me! In caso positivo provatelo almeno in versione live! Ecco i link ai rispettivi siti delle distribuzioni più diffuse Ubuntu e Linux Mint.

Federico Fallace