Nel Dos è un po' difficile scindere i concetti di configurazione e script, perché per configurare il sistema, occorre predisporre degli script. Si tratta dei file \CONFIG.SYS
e \AUTOEXEC.BAT
, collocati nell'unità di avvio. Questo fatto è già stato accennato nel capitolo introduttivo; in questo si vuole approfondire un po' la cosa.
Il file CONFIG.SYS
, collocato nella directory radice dell'unità di avvio, è uno script speciale avviato dal kernel prima dell'interprete dei comandi. In linea di massima, si tratta di una sequenza di direttive che occupano ognuna una riga; alcune versioni recenti del Dos consentono di suddividere le direttive in sezioni da scegliere in base a un menù iniziale.
Le direttive di CONFIG.SYS
hanno la forma seguente:
nome=valore |
In pratica, si assegna una stringa (senza delimitatori espliciti) a un nome che ha un significato particolare.
In questo file, vengono ignorate le righe vuote, quelle bianche e quelle che iniziano con la parola chiave REM:
REM annotazione |
È importante osservare che i nomi delle direttive non fanno differenza tra lettere maiuscole e minuscole. In generale, questo vale anche per le stringhe che vengono assegnate a questi nomi. |
BREAK={ON|OFF} |
Teoricamente, questa istruzione consente di attivare o di disattivare la funzionalità abbinata alla combinazione di tasti [Ctrl c]. In condizioni normali, quando si assegna la parola chiave ON, si attiva il funzionamento della combinazione [Ctrl c].
BUFFERS=n_buffer[,n_buffer_secondari] |
Questa istruzione consente di definire la quantità di memoria tampone per gli accessi ai dischi. Si assegnano uno o due valori numerici, separati da una virgola. Il primo valore va da 1 a 99 ed esprime il numero di aree da usare come memoria tampone; il secondo valore, facoltativo, indica delle memorie tampone secondarie, con valori che vanno da uno a otto.
COUNTRY=n_codice_paese[,[n_codifica][,file_informazioni_nazionali]] |
Questa istruzione, attraverso quanto contenuto in un file che tradizionalmente si chiama COUNTRY.SYS
, permette di configurare il sistema in base alla nazionalità. Per la precisione, si può specificare un codice riferito alla nazionalità, attraverso il quale si ottiene una forma particolare per le date e gli orari, con l'aggiunta eventuale di un altro codice che specifica la codifica dei caratteri prescelta (codepage). La tabella u209.1 riepiloga questi codici che fanno riferimento tradizionalmente anche a paesi che non esistono più.
Si può osservare che la stringa assegnata alla direttiva COUNTRY può contenere l'indicazione di un file (con il percorso, completo di unità o meno). Questo file è quello che contiene poi le indicazioni relative alla nazionalità prescelta; come già accennato, di solito si tratta del file COUNTRY.SYS
.
|
L'esempio seguente predispone l'impostazione nazionale per l'Italia, utilizzando la codifica 850, che ha il vantaggio di essere quella più comune dei paesi che usano l'alfabeto latino:
|
DEVICE=programma_di_gestione_dispositivo [opzioni] |
DEVICEHIGH=programma_di_gestione_dispositivo [opzioni] |
Si tratta di un modo per avviare un programma speciale che ha lo scopo di rimanere residente in memoria. In generale, tali programmi servono per la gestione di qualche dispositivo, indispensabile prima di avviare l'interprete dei comandi.
La differenza tra le due direttive sta nel fatto che la seconda cerca di caricare il programma nella memoria «alta».
Le opzioni riguardano il programma.
L'esempio seguente avvia il programma MOUSE.SYS che presumibilmente gestisce il mouse (l'opzione /2 serve probabilmente a utilizzare il mouse collegato alla seconda porta seriale):
|
DOS={HIGH|LOW}[,{UMB|NOUMB}] |
DOS=[{HIGH|LOW},]{UMB|NOUMB} |
Questa istruzione richiede al kernel di allocarsi nella memoria convenzionale, LOW, o in quella alta, HIGH. La parola chiave UMB richiede di mantenere un collegamento tra la UMB e la memoria convenzionale; la parola chiave NOUMB fa sì che questo collegamento non abbia luogo.
DRIVEPARM=[opzioni] |
Si tratta di una direttiva attraverso cui si possono definire i parametri relativi ai dispositivi a blocchi, per la precisione si tratta solo di dischi, se questo può essere necessario. Le opzioni assomigliano a quelle dei programmi di servizio, iniziando con una barra obliqua normale: /x....
|
FCBS=n_blocchi |
Permette di definire il numero di blocchi di controllo dei file (file control block). Il valore va da 1 a 255, mentre il valore normale è di quattro blocchi.
FILES=n_blocchi |
Permette di indicare il numero massimo di file aperti. Il numero che può essere assegnato va da 8 a 255. Il valore predefinito dovrebbe essere di otto file.
INSTALL=programma [opzioni] |
Si tratta di un'istruzione con la quale si può avviare preventivamente un programma (che dovrebbe essere residente in memoria), prima dell'avvio dell'interprete dei comandi. In questo caso, a differenza della direttiva DEVICE, o DEVICEHIGH, si tratta di un programma normale.
Le opzioni riguardano il programma.
LASTDRIVE=lettera_unità_finale |
Consente di specificare l'ultima lettera di unità che può essere richiesta. Questo consente di risparmiare risorse, se si è consapevoli del fatto che non servono lettere oltre un certo punto. La lettera in questione può essere indifferentemente maiuscola o minuscola, senza che ciò possa fare differenza.
SHELL=programma [opzioni] |
Permette di indicare esplicitamente il programma da avviare alla fine della procedura di avvio del kernel. In generale si tratta dell'interprete dei comandi. Questa direttiva può consentire di avviare un interprete alternativo a quello normale, oppure permette di avviarlo da una collocazione insolita; inoltre permette di dare al programma in questione delle opzioni particolari.
L'esempio seguente avvia il programma COMMAND.COM che si trova nella directory C:\DOS\
:
|
STACK=n_livelli[,dimensione_in_byte] |
Con questa istruzione è possibile fissare la dimensione dello stack, utilizzando valori da 8 a 64, oltre allo zero. Il valore dopo la virgola indica la dimensione in byte di ogni livello dello stack. In questo caso i valori vanno da 32 a 512.
Il file AUTOEXEC.BAT
collocato nella directory radice dell'unità di avvio, è inteso essere uno script che viene eseguito dall'interprete dei comandi, COMMAND.COM, dopo l'avvio del sistema.
Questo script viene realizzato normalmente in modo sequenziale, senza strutture di controllo. In generale è importante per due cose: impostare alcune variabili di ambiente fondamentali, per esempio PATH; avviare dei programmi che poi restano residenti in memoria, quando questo non si ottiene già attraverso il file \CONFIG.SYS
.
Anche nel Dos è molto importante l'uso delle variabili di ambiente. È già stato mostrato il comando SET, attraverso il quale si impostano o si annullano le variabili di ambiente:
SET nome_variabile=stringa_assegnata |
Alcune variabili hanno un'importanza particolare, per cui esiste un comando interno apposito (dell'interprete dei comandi), che serve a inizializzarle senza nemmeno l'uso del comando SET.
PROMPT stringa_di_invito |
Il comando interno PROMPT rappresenta un modo alternativo per impostare la variabile di ambiente con lo stesso nome. Se si usa il comando senza l'argomento, si ripristina l'invito predefinito.
PATH [percorsi_degli_eseguibili] |
Il comando interno PATH rappresenta un modo alternativo per impostare la variabile di ambiente con lo stesso nome. Se non si indica l'argomento, si ottiene la visualizzazione dell'elenco dei percorsi attivo.
Esistono altri comandi particolari che si sovrappongono alle istruzioni del file CONFIG.SYS
.
BREAK [ON|OFF] |
Abilita o disabilita la funzionalità abbinata alla combinazione di tasti [Ctrl c]. Utilizzando il comando senza argomento, si ottiene la visualizzazione dello stato attuale.
La localizzazione del Dos si riduce alla configurazione della mappa della tastiera e alla definizione dell'insieme di caratteri. L'insieme di caratteri dipende dalla scelta della nazionalità, fatta nel file CONFIG.SYS
, attraverso la direttiva COUNTRY.
Nelle sezioni seguenti vengono mostrati alcuni comandi utili per le impostazioni che riguardano la localizzazione.
CHCP [n_codifica] |
Si tratta di un comando interno dell'interprete dei comandi che interviene nella definizione della codifica utilizzata. In pratica, se si utilizza senza argomenti, mostra il numero della codifica attiva; se si indica un numero come argomento, cambia la codifica attiva, purché questa sia una di quelle ammissibili in base alla nazionalità stabilita con la direttiva COUNTRY nel file di configurazione CONFIG.SYS
.
L'esempio seguente fa in modo che sia attivata la codifica corrispondente al numero 850:
C:\>
CHCP 850
[Invio]
KEYB [sigla_nazionale[,[n_codifica][,file_informazioni_tastiere]]] |
KEYB è un comando esterno che consente di cambiare la configurazione della tastiera secondo alcuni modelli di nazionalità predefiniti. La sigla nazionale è un codice di due lettere che, assieme alla nazionalità, dovrebbe indicare anche la lingua utilizzata. La tabella u209.6 elenca queste sigle.
|
Segue la descrizione di alcuni esempi.
C:\>
KEYB
[Invio]
Mostra la configurazione attuale.
C:\>
KEYB IT
[Invio]
Predispone la mappa dei tasti per la disposizione italiana.
C:\>
KEYB IT,850,C:\DOS\KEYBOARD.SYS
[Invio]
Predispone la mappa dei tasti per la disposizione italiana, specificando l'uso della codifica 850 e del file C:\DOS\KEYBOARD.SYS
per trovare le impostazioni standard delle tastiere.
GRAFTABL [n_codifica] |
GRAFTABL /STATUS |
GRAFTABL è un comando esterno che consente di cambiare la codifica per i caratteri visualizzati sullo schermo. L'opzione /STATUS permette di conoscere la situazione attuale, mentre l'indicazione di un numero di codifica cambia l'impostazione.
L'esempio seguente imposta l'uso della codifica 850:
C:\>
GRAFTABL 850
[Invio]
Il Dos consente di accedere all'orologio dell'elaboratore, per leggere la data e l'ora, o per cambiare tali informazioni. In generale, il Dos non prevede la gestione di un orologio hardware allineato al tempo universale; pertanto, l'orologio hardware deve corrispondere necessariamente all'ora locale, lasciando all'utente il problema legato alle variazioni dell'ora estiva.
I comandi per accedere all'orologio sono DATE e TIME:
DATE [data] |
TIME [orario] |
Se non si indica la data o l'orario, viene mostrato quello attuale e viene richiesto all'utente di modificarlo o di confermarlo.
Il modo in cui va scritta da data o l'ora, dipende dalla localizzazione. Per conoscere quello giusto, basta osservare in che modo vengono visualizzate tali informazioni.
«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net