DI RECENTE ACCOMAZZI...
CERCA
» Ricerca avanzata
MAILING LIST

Se vuoi iscriverti alla mailing list di Luca Accomazzi inserisci qui la tua mail:

Vuoi ricevere i messaggi immediatamente (50 invii / giorno) o in differita e in gruppo
(due invii / giorno)?

» Vuoi saperne di più?

Una memoria da elefante, parte II

Ogni estensione installata nel sistema (quelle che vediamo apparire in fila durante l'avvio) viene caricata quando il computer viene avviato o riavviato. Questo consuma un po’ di tempo durante il lancio del sistema e un po’ di memoria in permanenza durante l’uso. Le estensioni vengono chiamate, a volta, anche "INIT": è questa infatti la sigla che Mac usa internamente per distinguerle. Alcune init utilizzano davvero poco spazio e poco tempo macchina, ma altri sono particolarmente sciuponi.

Ci sono poi i cdev, sigla orribile sotto la quale si nascondono i moduli del Pannello di controllo come Controlli generali oppure Suono e monitor: occupano memoria solo quando vengono aperti sulla scrivania, e pertanto possono venire aggiunti al nostro disco di sistema senza problemi. Attenzione, però: esistono su Mac alcuni programmini che, pur apparendo al Finder come moduli del Pannello di controllo, sono in realtà delle Init, e dunque come queste occupano un po’ di memoria centrale. Essi si fingono dei normali cdev poiché in questo modo possono sfruttare il familiare ambiente del Pannello per le operazioni di configurazione. Li riconosciamo, solitamente, perché ne vediamo apparire l'icona a video durante l'avvio di sistema -- subito dopo delle estensioni.


I font

I font, come i già citati cdev, sono caricati in memoria solamente quando vengono utilizzati in un documento. Il Mac tiene però in memoria centrale tutti i nomi di tutti i font: chi disponga di pochissima memoria RAM lo tenga presente. Un amante dei caratteri più eleganti, più utili o più sfiziosi deve dedicare ad essi un appezzamento del proprio disco rigido, ma non deve temere di riempire la propria memoria, purché ne possieda una quantità decente. Se accadesse che la memoria si riempia oltre il limite di guardia, tra le prime entità a venire sloggiate da essa per fare spazio troviamo proprio i font: in questo caso il Mac OS dovrà ricaricarli da disco quando torneremo a utilizzarli e finirà per rallentare le operazioni.


Dalla finestra informazioni del Finder scopriamo quanta memoria una applicazione desidera che le sia assegnata, e stabiliamo quanta le verrà effettivamente concessa.

Le applicazioni e la memoria

Come abbiamo già spiegato qualche mese fa, quando dedicammo una intera puntata a MultiFinder, nel Mac OS è l’utente a stabilire quanta memoria va assegnata a ciascuna applicazione in uso, tramite il dialogo Informazioni del Finder. Tutte le applicazioni suggeriscono all’utente un quantitativo di memoria che vorrebbero vedersi assegnata (figura 1). Le applicazioni sviluppate nell’era pre-MultiFinder non hanno nessun suggerimento da effettuare (nello spazio dedicato appare la scritta n.d., e cioé non disponibile) e MultiFinder assegna loro per convenzione 384 kbyte di Ram.
Come abbiamo già spiegato in precedenza, noi possiamo cambiare la quantità di memoria assegnata all’applicazione, sia a suo vantaggio sia a suo scapito. Le applicazioni conscie di MultiFinder sono caratterizzate da due cifre: la quantità ottimale di memoria, che è quella indicata nel dialogo Informazioni, e la quantità minima, sotto la quale l’applicazione non è in grado di operare.

Per stabilire quanta memoria sia opportuno assegnare ad una applicazione, provate ad eseguirla assegnandole un grande quantità di memoria, quasi tutta quella che avete, e a caricare un documento di grandi dimensioni (o più documenti), in modo da simulare una sessione di lavoro particolarmente intensa. A questo punto passate al Finder, ed osservate il dialogo Informazioni sul Mac nel menu Mela. Vi apparirà la memoria utilizzata in quel momento dall’applicazione come una sbarra scura, e quella ancora disponibile come una sbarra chiara (figura 3). Assegnate all’applicazione in questione una quantità di memoria pari all’area della sbarra scura, più un piccolo spazio extra di cuscinetto. Per esempio, se noterete che uno spazio di 1O Mbyte assegnato è riempito per una metà circa dalla sbarra scura, potreste assegnare all’applicazione la metà di 10 Mbyte, e cioè 5000 Kbyte, più uno spazio di riserva del 20%, per un totale di 6000 Kbyte.
Una curiosità: il MultiFinder assegna la memoria a pagine di 32 Kbyte ciascuna; pertanto, se scriverete 600 Kbyte, MultiFinder arrotinderà la cifra a 608 Kbyte. HyperCard, che richiede 1000 Kbyte, ne ottiene in realtà 1024.


New Daleks è un gioco prodotto prima dell’uscita di MultiFinder. Osservando attentamente il dialogo di Informazioni sul Finder scopriamo che si accontenta di soli 64 Kbyte. Se non lo specificassimo, MultiFinder ne assegnerebbe 384, con un notevo

Il disco RAM

Un eccellente pretendente a un pezzetto di memoria è lo splendido disco Ram, tanto comodo e flessibile. Dal Pannello di controllo "Memoria" ci è possibile riservare una porzione della memoria installata, togliendola dall’ammontare disponibile per le applicazioni, di modo che essa divenga uno pseudo-disco, caratterizzato da grandissima velocità. In teoria è possibile che un programma difettoso vada a corrompere i dati salvati su quel disco, ma in pratica questo non avviene praticamente mai (se succede a voi, e se per questo vi capita di perdere dati preziosissimi, dimenticate per favore di aver letto questo commento su Bit).
Il disco Ram è utilizzabile su alcuni modelli di Mac anche come disco di avvio. É cioè possibile riavviare la macchina partendo da esso. Questo è particolarmente comodo con i PowerBook, dove l’uso del disco rigido a lungo andare esaurisce le batterie molto più di quanto non faccia la memoria Ram. Se il vostro portatile contiene tantissima memoria e state per affrontare un viaggio molto lungo, pensateci.


La memoria tampone è assegnata dal Pannello di controllo "Memoria"

La memoria tampone

Tutti i computer Apple permettono, tramite il Pannello di controllo "Memoria", di dedicare una parte della memoria Ram disponibile all’uso come memoria tampone (figura 4). Che cosa sia, però, pochi sanno dire esattamente.
La memoria tampone è memoria che viene riservata all’uso del dos, il sistema operativo del disco, quella parte del software di sistema che si occupa delle unità a disco (siano essi dischetti, dischi rigidi, Cd Rom o dischi Ram). La memoria che usiamo come memoria tampone è rubata dal quantitativo disponibile alle applicazioni, esattamente come la memoria riservata al disco Ram.
Nella memoria tampone il dos conserva copia di alcune informazioni che potrebbero venire utili; esistono svariate forme di memoria tampone, e non tutte queste sono controllabili dall’utente. Ad esempio, su Macintosh, ogni disco presente sulla scrivania occupa circa 20 Kbyte di spazio in memoria Ram, utilizzati dal dos per tenere in memoria centrale il catalogo del disco in questione.

Una seconda memoria tampone viene usata per memorizzare l’ultima traccia letta dal disco. Un documento, infatti, è salvato su disco in più blocchi, che tipicamente sono allocati contiguamente su una traccia del disco. Il dos, anzichè leggere un blocco alla volta, legge una intera traccia, nella speranza di prevedere quale sarà la prossima richiesta di lettura e, così facendo, di risparmiare un ulteriore (e relativamente lento) accesso a disco.

La memoria tampone che noi possiamo assegnare dal Pannello viene anche utilizzata per memorizzare i documenti (o parti di documento) che l’applicazione legge o rilegge spesso. I dettagli precisi sono piuttosto complessi, perché esiste un meccanismo tramite il quale l’applicazione può richiedere al sistema operativo che una certa porzione di documento venga o non venga salvata nella memoria a tampone, e perché esiste un metodo adottato dal sistema operativo per scegliere cosa debba venire espulso dalla memoria tampone quando essa si riempia (per i lettori più tecnicamente ferrati aggiungerò che si tratta di un classico algoritmo lru, least recently used).
In base a queste ed altre considerazioni, una buona strategia per scegliere quanta memoria va riservata alla memoria tampone è la seguente: 32 Kbyte per ogni Mbyte di Ram.


Questo articolo fa parte di uno dei miei percorsi. Se vuoi saperne di più su questo argomento, visita il resto del percorso cliccando qui.