Linux e…

Antonio Campeglia

La politica serrata dei grandi nomi, unita molto spesso al “sentito dire” tipico di chi è lontano dal mondo dell’informatica, hanno a lungo portato a pensare al sistema operativo Linux come qualcosa di complesso, inadatto e lontano dal musicista.
Se fino a qualche tempo fa questa affermazione poteva risultare veritiera, oggi grazie allo sforzo sempre maggiore della comunità del “pinguino”, sembra vi sia stato un reale avvicinamento agli utenti comuni, poco avvezzi all’uso di stringhe e terminali. Diverse le realtà anche nel nostro paese, in cui Linux aiuta il musicista in tutte le fasi della produzione, dalla progettazione del brano al mastering. Tuttavia essendo un mondo in continuo aggiornamento è facile, per chi vuole produrre musica, perdersi nella vasta mole di argomenti. Vediamo allora semplicemente come arrivare alla meta prefissata insieme a Lello Cardone, presidente dell’associazione culturale che si occupa di e-learning musicale open source attraverso il sito www.studiaremusica.com

Le “Distro”: ovvero le distribuzioni linux.

Per un utente Windows o Mac non è semplice immaginare il loro beneamato sistema operativo ricostruito in base a specifiche esigenze (anche perché questo non sarebbe possibile legalmente). Ecco la prima differenza tra Linux (fig.1) e i sistemi “chiusi”. In questi ultimi non è possibile modificare il cuore del sistema operativo, né tanto meno adattarlo o migliorarlo. Il mondo Linux invece è questo, dare a tutti la possibilità di contribuire al perfezionamento del sistema aggiungendo pezzi, riscrivendo righe di codice, ottimizzare determinate funzioni etc… Questo avviene secondo i canoni della Licenza GNU/GPL, ogni modifica al cuore del sistema è possibile grazie alla possibilità di accedere liberamente al codice sorgente. 1I “sorgenti” degli applicativi, opportunamente modificati, verranno poi ricompilati per dare vita ad una nuova distribuzione. Ovviamente il rischio è che il neofita finisca per perdersi tra le centinaia di varianti e versioni di Linux che giornalmente sono messe a disposizione pubblicamente per il download. Come accennato, Il nome con cui si identificano queste ISO da masterizzare su DVD o CD è “Distribuzione” (in gergo Distro). Se volete essere aggiornati sulle nuove release, potete collegarvi al sito www.distrowatch.org in cui troverete oltre ad una classifica delle Distro più utilizzate, un sunto sulle principali “propensioni” delle distribuzioni offerte. I protagonisti sono: Ubuntu (una variante di Debian in continua evoluzione, grazie all’impegno di Canonical), SUSE, Mandriva, Knoppix, Fedora, Slackware, Gentoo, Mepis, Studio64, Dyne:bolic. La nostra scelta è caduta su Ubuntu (fig.2), che gode di un’interfaccia semplice e di un ottimo supporto.2
Voglio aggiungere che mentre quasi tutti i sistemi operativi chiusi vanno necessariamente installati, è possibile far girare Linux anche senza installare nulla sull’HD, ovviamente con le dovute limitazioni del caso. Basterà procurarsi una distribuzione “Live” per avere un’impressione “a pelle” delle potenzialità offerte, senza rischiare di corrompere un sistema operativo già residente. Personalmente consiglio l’installazione di una macchina virtuale (un sistema operativo nel sistema operativo), Linux girerà così a piene funzionalità, non pregiudicando in alcun modo il “SO” che lo ospita (per dettagli consultare il sito www.vmware.com , oppure Parallels Desktop al link www.parallels.com o ancora, per chi ha computer Mac con CPU PowerPC, Virtual Pc di Microsoft o Guest PC ). D’altronde i moderni Pc potendo beneficiare di notevoli capacità di calcolo e di ingenti quantità di Ram a basso costo, ben si prestano a questo tipo di soluzioni. Spetterà a voi poi la scelta di quello che dovrà essere il compagno definitivo di “giochi”. Ormai siamo lontani dai tempi in cui mettere su una “Distro” era sinonimo di dichiarare guerra ai driver di sistema: Knoppix ed Ubuntu ad esempio (in versione DVD), oltre a contenere migliaia di applicativi, riconoscono nativamente moltissime periferiche. Anche Ubuntu, la distro da noi scelta, possiede di “default” la modalità live. Essa torna utile anche per verificare se tutto l’hardware di sistema viene visto correttamente prima di una eventuale installazione.

Il kernel

Il “nucleo” del sistema operativo è il Kernel. Creato nel 1991 da Linus Benedict Torvalds (fig.3) e distribuito col sistema di licenze GNU (il sistema GNU, creato da Stallman nel 1983, permette una gestione del software libera dai vincoli del diritto d’autore), ha dato vita di fatto a ciò che oggi chiamiamo Linux. 3Nel kernel sono contenute tutte le funzioni necessarie al corretto funzionamento del sistema: la gestione delle risorse, della memoria, delle periferiche, etc… Esso gestisce i processi ed in ogni istante è possibile controllare fin nei minimi dettagli cosa sta succedendo. Si accede a tutte le funzioni di sistema dalla Shell, un terminale testuale che rappresenta l’interfaccia utente con cui è possibile modificarne i parametri. I programmi accedono all’hardware attraverso delle chiamate verso il Kernel (system call) che valuta le priorità e le attiva redistribuendo il calcolo, la disposizione in ram e la gestione dell’hardware connesso (scheduling). Inoltre gestisce il multitasking e la multiutenza con differenti permessi, questo fa si che diversi utenti possano avviare differenti processi, con differente grado di privilegi, contemporanea- mente dalla medesima macchina. Infine il Kernel è in continua e rapidissima evoluzione per supportare nuovi hardware, funzioni e moduli. Potete installare un Kernel Linux su molti hardware, dai telefonini alle consoles, dai router ai videoregistratori ed ovviamente sulle piattaforme PC (32 e 64bit), SPARC, Power PC. Essendo modulare (fig.4)4 potete eliminare righe di codice non strettamente necessarie rendendolo flessibile, minuscolo e solido. Ciò è impensabile nel mondo dei sistemi chiusi che finiscono per fagocitare enormi risorse pur di rendere l’ambiente pronto ad un utilizzo “generico”. Ovviamente anche il Kernel Linux può diventare molto grande ed assolvere così a miliardi di funzioni, incluso il supporto per la grafica 3D ed il multimedia più avanzato. A Maggio 2007 è uscita Ubuntu Studio (www.ubuntustudio.org ) una distribuzione Linux Ubuntu totalmente dedicata al multimedia. Questo Linux possiede il Kernel in real time, fondamentale per le applicazioni audio; di fatto riduce la latenza nella gestione del sistema e comprende nativamente moltissime applicazioni professionali per il doppiaggio cinematografico, per il sequencing e per l’ editing audio/midi oltre che numerosi plug ins e software di mastering e notazione. La stabilità e la personalizzazione del sistema permettono a Linux di competere ed essere vincente anche sul fronte server. Ed è li che i concorrenti maggiormente lo invidiano.

Modalità di funzionamento (amministratore ed utente) e audio driver.

Mentre in un sistema Windows dall’installazione in poi si è normalmente “amministratore”, ovvero utenti con il permesso di poter fare ciò che si vuole del sistema operativo, con Linux di default si è “utente”. Questa sostanziale differenza permette a Linux di non prendere virus perchè le modifiche ai files di sistema possono essere fatte solo se siete in modalità root, ovvero amministratore. Normalmente ogni utente ha una “home” ovvero una cartella dove si possono installare le proprie applicazioni con le relative cartelle, documenti, temi etc… Le librerie che contengono le istruzioni da leggere dal programma sono al sicuro nel file system, spesso in usr/bin che è protetto, mentre nella cartella home vivono due categorie di sottocartelle e files: quelle visibili e quelle nascoste. Le cartelle nascoste iniziano con un punto (.wine o .amule ad esempio) e contengono spesso altri files e cartelle che permettono elevate personalizzazioni. Le cartelle visibili sono invece in chiaro. Ora il nuovo Windows Vista sembra aver appreso molto dai sistemi Linux perchè sta proteggendo l’installazione e la manipolazione dei files di sistema in un modo molto simile a linux. Il core Unix di Mac OS invece possiede lo stesso concetto di protezione di Linux e la stessa gestione user/root.

L’hardware ed i driver audio ALSA ed il server audio JACK

Mentre le schede audio integrate sono ottimamente supportate da Linux anche per via di ottimi progetti quali OSS, ALSA, JACK, le schede audio professionali soffrono di una vistosa ostilità verso Linux.
I driver OSS (Open Sound System) creati nel lontano 1992 da Hannu Savolainen sono da molti considerati superati. Hanno avuto un periodo di grande splendore perché erano “portatili” sulle principali versioni di Unix.
In realtà funzioni che oggi appaiono ovvie per una gestione audio completa, per questo tipo di driver non lo sono, e si potrebbero incontrare vari problemi in fase di utilizzo. Non stiamo parlando di cose complesse ma di:

  • Full duplex, ovvero la possibilità di registrare ed ascoltare contemporaneamente allo stesso numero di bit (chi ricorda i primi driver per Windows che gestivano schede audio in half duplex con registrazione a 16 bit e lettura ad 8, nel migliore dei casi, sa cosa voglio dire!);
  • wavetable software (le prime schede audio avevano nel migliore dei casi una eprom su cui era impressa una libreria sonora di base, solitamente GM, anche se non di rado sono esistiti solidi esempi di schede in grado di personalizzare la wavetable con campioni propri)
  • Mixing hardware multicanale limitato.

Il progetto OSS si è evoluto in opensound ma è diventato chiuso mentre da una sua costola sono nati i driver ALSA (fig.5).
5

ALSA (www.alsa-project.org ) che sta per Advanced Linux Sound Architecture, questi possono emulare in modo eccellente i vecchi OSS.
I driver ALSA, (nati nel 1998 grazie a Jaroslav Kisela) sono stati implementati nel kernel solo dopo il 2002. Essi gestiscono diversi processi contemporanei, sono in grado di rilevare e configurare molte schede audio e, abbinate a Jack, riescono a gestire in modo ottimale tutto il flusso del segnale audio sotto Linux.

In realtà a questo punto bisognerebbe fermarsi un attimo e pensare: ma le case di schede audio professionali? Non dovrebbero essere loro ad interessarsi allo sviluppo dei driver anche per questo sistema operativo? Perché ci lasciano soli? C’è solo la voglia di sottovalutare un grande sistema operativo o altro? In effetti sono poche le case che supportano attivamente l’open source. Ciò accade sia per accordi economici con le case produttrici di software chiuso, sia perché sono esse stesse spesso produttrici di software proprietario e temono il software libero. Di fatto non vengono rilasciati i sorgenti dei driver, per questo i programmatori sono costretti al reverse engineering di cui parlavamo in precedenza (con MOTU e Digidesign – fig.6 – ad esempio si sta operando attraverso anche l’analisi dei protocolli). Ad interessarsi di questa lacuna lamentata è il progetto FreeBob (freebob.sourceforge.net ) che produce un driver a bassa latenza generico per le schede audio firewire (sul sito vi è la lista completa ed aggiornata dell’hardware).6
L’installazione sotto Ubuntu è molto semplice. Dopo aver installato l’intero sistema e relativi aggiornamenti, basterà inserire nelle sorgenti software il seguente indirizzo “deb http://ftp.debian.org/debian“. Bisogna dire che sotto Linux molti software commerciali quali Acrobat Reader, Flash, o anche le librerie per leggere gli mp3 o Skype possono essere installati comunque da “repository”, ovvero indirizzi di server che contengono gli stessi programmi. Scegliendo Aggiungi/Rimuovi ed aggiornando la lista sarà possibile vedere anche i nuovi software. E possibile anche arrivarci da Sistema/Amministrazione/Gestore pacchetti Synaptic.
E’ bene fare luce sul server audio Jack, mostrato in figura 7 (è così che Linux identifica alcuni driver particolarmente personalizzabili nelle interconnessioni e con bassissima latenza), che permette alla stregua di un potente sistema ASIO di connettere ingressi ed uscite hardware con line in /out reali (scheda audio) e virtuali (strumenti virtuali e sequencer). Jack, scritto per POSIX e pienamente compatibile GNU/Linux e OS X è arrivato alla versione 0.102.20 e supporta da questa versione anche il protocollo midi. Il porting su Windows è in fase di ultimazione. JACK è molto potente (sono arrivato a 0.2ms di latenza con la mia scheda integrata del notebook a 48khz 16bit) e sono tantissimi i programmi supportati.

7

La prima “killer application” audio: Ardour

Per “killer application” si intende quel software che sbaraglia la concorrenza ed impone un modo di lavorare professionale. Di fatto è un programma che, sviluppato con grande professionalità, permette di trainare anche un sistema operativo. Nei vecchi Atari ST le killer applications sono state Notator (poi diventato Logic) e Cubase (chiamato nella prima versione Cubit e poi cambiato per problemi di copyright). Il midi integrato nel computer e la grande scaltrezza delle software house che produssero queste applicazioni permisero al musicista di avvicinarsi al mondo dell’informatica come nessuno è riuscito a fare prima.
Nell’ambiente Linux la killer application è senza dubbio Ardour (fig.8); sequencer audio potentissimo che attraverso una seria gestione del server audio Jack permette alle periferiche audio di comunicare con i moduli software del kernel con grande precisione e velocità. Tutte le frequenze di campionamento professionali sono supportate ed il segnale viene gestito con cura e bassa latenza.8
Di fatto Ardour è una completa DAW con registrazione multitraccia e multicanale, con editing non lineare e non distruttivo, gestione delle regioni complessa, undo/redo infiniti, mixer software capace di rivaleggiare, nella gestione del routing con i maggiori equivalenti hardware, supporto di controller midi professionali, supporto dei plug in LADSPA (di questo formato che raccoglie innumerevoli plug-in ne parleremo in seguito) e multioutput.
Essendo POSIX-like, questo sequencer è multipiattaforma e lo si può installare anche sotto MAC OSX.
Per quanto riguarda le richieste hardware minime di Ardour, questo gira anche sotto un 200 Mhz con 64mb di RAM. Considerando che oggi tutti posseggono un computer pingue, date le esose richieste dei sistemi operativi chiusi, (millantati come unico sistema operativo installabile), qualunque macchina va bene.
Ovviamente un conto è far suonare 5 tracce audio senza un carico di plug-ins e tutt’altra storia è dire “voglio registrare 78 tracce audio con 56 plug ins su ogni traccia!” Il produttore consiglia un dual processor con quanta più ram possibile, oltre ovviamente ad un hd veloce per tempi di accesso e numero di giri, magari SCSI o firewire, qualora fosse esterno. AMD è il produttore di processori consigliato. Le schede audio consigliate sono: RME Hammerfall (fig.9) e M-Audio Delta series, pienamente supportate da Linux.

9

Come s’installa?

Spesso chi si avvicina a Linux scappa via perchè è abituato a non lavorare con la shell (console testuale) ed ha solo voglia di fare click per ottenere il risultato, insomma “avanti, avanti, fine”. Questo modo di fare, forse voluto per gli utenti di sistemi chiusi, ha portato spesso i computer a diventare oltre che raccoglitore di software spesso inutili, un vero e proprio vivaio di spyware, virus (fig.10), malware, ed altre pestilenze informatiche.
Una mia particolare convinzione è che se un sistema è instabile è anche colpa delle scelte dell’utente che lo usa. Tornando a Linux ed Ardour ci sono diversi modi di installarlo. O si scarica un repository (l’indirizzo di un server che contiene tutte le librerie e soddisfa in automatico le dipendenze installando tutto ciò che serve) da dove prelevare il software solo scrivendo il nome tra i pacchetti da installare (spesso è già sotto il menù multimedia) o ancora per via testuale. Vediamo come:

  • apriamo il terminale (shell o console come dir si voglia) che si trova sotto la voce accessori e digitiamo senza apici, e dopo essere connessi ad internet ovviamente, “apt-get install ardour” e premiamo invio. Fatto!

Attenzione questo comando installa tutte le dipendenze ed il software automaticamente, quindi dovete essere in modalità amministratore. Per diventare amministratore dal terminale digitare “su” e premere invio, vi basterà ora inserire la password amministrativa. Questa prassi funziona su tutti i Linux che dispongono dei tools APT. Altri “facilitatori” delle installazioni sono Emerge e Yum (la pratica è pressoché simile: “yum install nomepacchetto”).
Ad ogni modo esistono ancora altri sistemi di installazione, quello manuale ossia installando tutte le librerie richieste e soddisfacendo tutte le dipendenze da console, e quello dai pacchetti precompilati RPM e DEB. Essi si trovano su differenti siti tra cui rpm.pbone.net .

10

Linux vs Vista

Sempre più musicisti utilizzano Linux e sempre più aziende cercano soluzioni alternative ai sistemi chiusi e troppo blindati. Proprio in questi giorni il presidente Raffaele Cardone dell’associazione Studiare Musica, ha comprato una versione basic di Windows Vista (fig.11), per realizzare un confronto con i sistemi Linux installati sui computer su cui effettuano i corsi di informatica musicale. Gli allievi abituati ormai ad Ubuntu, Fedora, Mandriva, Dine:Bolyc e Knoppix, sbalordivano davanti all’elevato numero di crash, anche dello stesso kernel di Windows, in una macchina dichiarata “Vista capable” e si meravigliavano di come i driver di periferiche venissero gestiti pessimamente (pensate che non siamo riusciti ad installare un controller firewire, né una semplice stampante HP laserjet.). Per fortuna sul sito del produttore MOTU sono comparsi da tempo i driver per Vista. Come vedete il potere economico sovrasta ogni cosa e mentre i programmatori di Linux scrivono da zero i driver di controllo per le periferiche Motu, spesso ricorrendo ad intricate fasi di reverse engineering (freebob ad esempio), gli utenti Microsoft dispongono per Vista degli stessi driver in tempi rapidissimi. Ma di un solido confronto Linux Ubuntu – Windows Vista ne parleremo nei prossimi numeri.11

Conclusioni

Molti di voi si chiederanno ma se Linux è così potente ed è libero perché non è diffuso al pari dei sistemi chiusi?
Perché ormai è radicata la convinzione che sia un sistema operativo adatto solo a “smanettoni” e di difficile manutenzione. Anche se, talvolta, può risultare frustrante aver a che fare con una miriade di dipendenze per installare un singolo software c’è da dire che rispetto ad anni fa, la situazione è notevolmente migliorata e le distribuzioni odierne sono molto più “user friendly”. Ci si chiede, inoltre, perché le case produttrici di schede audio non rilascino drivers nativi per Linux. Il problema è che bisognerebbe spostare della forza lavoro da progetti economicamente “produttivi” verso qualcosa che non porterebbe altri introiti. Inutile dire che sarebbe un utopia sperare che le case rilascino le specifiche per permettere alla comunità di poter sviluppare in proprio i suddetti drivers. Perché tanta ostilità?
Semplice, i sistemi chiusi portano soldi a molta gente dal negoziante che li piazza, al pirata che lo rivende sottobanco. Linux no. Linux non spende miliardi di per la pubblicità e né inculca nella testa delle persone che per usare un word processor bisogna avere 15GB di spazio sull’hard disk e almeno 2GB di ram con un processore di ultima generazione. Ottimi tools per l’ufficio (openoffice.org) sostituiscono alla perfezione i software proprietari e sono pienamente compatibili con essi. Per quanto riguarda la pirateria Linux la cancella a priori, dato che tutto è libero. Se volete fare una donazione agli autori essi ve ne saranno grati lavorando ancora meglio e nessuno vi impedirà di realizzare il vostro disco solo perché non avete soldi a disposizione. Inoltre la veste grafica di questi sistemi è di notevole potenza ed il 3D delle finestre di Vista fa sorridere di fronte ai server video 3D multipoligonali di Linux. Provate a osservare Compiz o i temi grafici di Beryl o i vari 3D desktop GNOME e KDE (fig.12) per rendervi conto. 12In più avere sequencers gratuiti che possono competere con il top per Windows ed OS X non è più un sogno. Certo, se le case di hardware audio professionali, fossero meno legate ai sistemi proprietari rilasciando i drivers per Linux, darebbero un grande contributo permettendo a chi non vuole spendere decine migliaia di euro per il sistema operativo ed il software, di acquistare schede audio con convertitori e caratteristiche superiori. Con questa mia modesta missiva invito i produttori di hardware a rendersi conto che ormai Linux è una realtà ed anche tra i professionisti sta divenendo uso comune. Ma reggerà il confronto con piattaforme ormai divenute standard da svariati lustri? La battaglia è appena iniziata ed i contendenti si sfideranno a singolar tenzone, chi per guadagnarsi l’accesso al podio, chi per difendere la posizione guadagnatasi negli anni come piattaforma definitiva per l’audio professionale.

Condividi questo articolo!
Nessun commento