Differenze tra le versioni di "Cosa è A.L.S.A."

Da Gambas-it.org - Wikipedia.
(Note:)
(ALSA ed i suoi Client)
Riga 24: Riga 24:
  
 
Poiché il ''device'' è genericamente un elemento che assume ogni applicazione come ''fonte'' e come ''contenitore'' del suo flusso di dati; tali applicazioni - riferendosi tutte con il dispositivo di ALSA - assumono la denominazione di ''Client''[1]. Sia i controller dell'hardware che i vari programmi dell'utente non sono altro che "''Client''" di ALSA.
 
Poiché il ''device'' è genericamente un elemento che assume ogni applicazione come ''fonte'' e come ''contenitore'' del suo flusso di dati; tali applicazioni - riferendosi tutte con il dispositivo di ALSA - assumono la denominazione di ''Client''[1]. Sia i controller dell'hardware che i vari programmi dell'utente non sono altro che "''Client''" di ALSA.
In particolare la gestione reale dei dati Midi è esercitata dai programmi dell'utente e dall'hardware, mentre la funzione più generale del sistema ALSA è quella semplicemente di inviare i predetti dati ''nel momento giusto al Client giusto''. In ciò il sistema ALSA si configura esso stesso come un particolare ''sequencer'', in quanto la sua gestione dei dati si sostanzia nella specifica funzione della loro "''temporizzazione''".  
+
In particolare la gestione reale dei dati Midi è esercitata dai programmi dell'utente e dall'hardware, mentre la funzione più generale del sistema ALSA è quella semplicemente di inviare i predetti dati ''nel momento giusto al Client giusto''. In ciò il sistema ALSA si configura esso stesso come un particolare ''sequencer'', in quanto la sua gestione dei dati si sostanzia nella specifica funzione della loro "''temporizzazione''".
 +
Da quanto detto, ogni nostro programma dovrà essere pensato e strutturato necessariamente come "client" del sistema ALSA.
  
 
=Note:=
 
=Note:=

Versione delle 03:30, 1 lug 2011

Come per ogni argomento, prima ancora di scendere nei dettagli di A.L.S.A, è opportuno ed essenziale comprenderne il funzionamento in termini generali


DEFINIZIONE

ALSA (acronimo di Advanced Linux Sound Architecture) è un componente del kernel Linux che permette, al posto dell’originario OSS (Open Sound System), di gestire le schede audio mediante dispositivi (device) "driver". Il sistema ALSA è esso stesso un Dispositivo che offre - per quel che qui ci interessa - una modalità uniforme di connettere flussi di eventi MIDI tra diversi programmi e tra vari dispositivi hardware.


Linux - Device - Hardware

In via generale il nucleo del sistema operativo non si relaziona direttamente con l'hardware, bensì attraverso un particolare componente strumentale: il dispositivo (device).

Il sistema ALSA in relazione alle sue specifiche funzioni rappresenta, dunque, proprio un dispositivo di tal genere, che consente, appunto, al sistema operativo ed ai vari programmi di dialogare con la scheda audio.

Architettura del sistema ALSA

Il sistema ALSA è composto da diversi sub-sistemi, ciascuno dei quali esercita una propria specifica funzione controllando un particolare tipo di flusso di dati per l'audio. Il sub-sistema che controlla il flusso degli eventi MIDI è denominato: seq . Pertanto, nel redigere il nostro programma Gambas di gestione dei dati MIDI, dovremo sempre considerare questo particolare sub-sistema "seq" , facente parte del più ampio e complesso dispositivo ALSA.

I dispositivi in ALSA

Il subsistema seq mette a disposizione dei programmi applicativi una serie di dispositivi (device), che possono essere specificati mediante un identificatore. Gli applicaztivi possono relazionarsi con quei dispositivi mediante le operazioni di lettura e di scrittura. Ogni dispositivo è formato da una catena di plugin, i quali esercitano una specifica operazione nei confronti del flusso di dati del dispositivo. L'ultimo plugin, in particolare, si rapporta con il controller dell'hardware mediante le operazioni di lettura e scrittura.

ALSA ed i suoi Client

Poiché il device è genericamente un elemento che assume ogni applicazione come fonte e come contenitore del suo flusso di dati; tali applicazioni - riferendosi tutte con il dispositivo di ALSA - assumono la denominazione di Client[1]. Sia i controller dell'hardware che i vari programmi dell'utente non sono altro che "Client" di ALSA. In particolare la gestione reale dei dati Midi è esercitata dai programmi dell'utente e dall'hardware, mentre la funzione più generale del sistema ALSA è quella semplicemente di inviare i predetti dati nel momento giusto al Client giusto. In ciò il sistema ALSA si configura esso stesso come un particolare sequencer, in quanto la sua gestione dei dati si sostanzia nella specifica funzione della loro "temporizzazione". Da quanto detto, ogni nostro programma dovrà essere pensato e strutturato necessariamente come "client" del sistema ALSA.

Note:

[1] Il Client è un componente (hardware o software) che si serve delle funzionalità e dei servizi di un altro componente (hardware o software).


                                           < pagina in costruzione >