Dos: configurazione

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.

File «CONFIG.SYS»

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

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

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

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.

Tabella u209.1. Codici di nazionalità.

Località Codice di nazionalità Codifiche utili
USA 001 437, 850
Canada francese 002 863, 850
America latina 003 850, 437
Russia 007 866, 437
Olanda 031 850, 437
Belgio 032 850, 437
Francia 033 850, 437
Spagna 034 850, 437
Ungheria 036 850, 852
Jugoslavia 038 850, 852
Italia 039 850, 437
Svizzera 041 850, 437
Cecoslovacchia 042 850, 852
Regno unito 044 850, 437
Danimarca 045 850, 865
Svezia 046 850, 437
Norvegia 047 850, 865
Polonia 048 850, 852
Germania 049 850, 437
Brasile 055 850, 860
Australia 061 850, 437
Giappone 081 932, 437, 850, 942
Corea 082 934, 437, 850, 944
Cina 088 938, 437, 850, 948
Turchia 090 857, 850
Asia (inglese) 099 850, 437
Portogallo 351 850, 860
Islanda 354 850, 861
Finlandia 358 850, 437

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:

COUNTRY=039,850,C:\DOS\COUNTRY.SYS

DEVICE, DEVICEHIGH

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):

DEVICE=C:\MOUSE\MOUSE.SYS /2

DOS

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

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....

Tabella u209.4. Alcune opzioni.

Opzione Descrizione
/d:n_dispositivo_fisico
Consente di indicare il dispositivo attraverso un numero, da 0 a 255. Lo zero corrisponde alla prima unità a dischetti.
/c
Se si utilizza questa opzione, si intende che l'unità fisica è in grado di sapere se il disco è inserito o meno.
/f:n_formato
Stabilisce il formato del dispositivo fisico; in pratica, fissa la geometria.
/f:0
Dischetto 160 Kibyte, 180 Kibyte, 320 Kibyte, 360 Kibyte.
/f:1
Dischetto 1 200 Kibyte.
/f:2
Dischetto 720 Kibyte.
/f:5
Disco fisso.
/f:6
Nastro.
/f:7
Dischetto 1 440 Kibyte.
/f:9
Dischetto 2 880 Kibyte.
/h:n_testine
Definisce il numero di testine.
/i
Indica che si tratta di un dischetto da 3,5 pollici.
/n
Si tratta di un disco fisso.
/s:n_settori
Definisce il numero di settori per traccia.
/t:n_cilindri
Definisce il numero dei cilindri (in altri termini: il numero di tracce per faccia).

FCBS

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

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

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

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

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\:

SHELL=C:\DOS\COMMAND.COM

STACK

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.

File «AUTOEXEC.BAT»

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.

Comandi ridondanti

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.

Esistono altri comandi particolari che si sovrappongono alle istruzioni del file CONFIG.SYS.

Localizzazione

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

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

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.

Tabella u209.6. Sigle nazionali-linguistiche per l'impostazione della mappa della tastiera.

Sigla Corrispondenza
US USA (predefinito)
FR Francia
GR Germania
IT Italia
SP Spagna
UK Gran Bretagna
PO Portogallo
SG Svizzera tedesca
SF Svizzera francese
DK Danimarca
BE Belgio
NL Olanda (Nederland)
NO Norvegia
LA America latina
SV Svezia
SU Finlandia (Suomi)
CF Canada francese

Segue la descrizione di alcuni esempi.

GRAFTABL

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]

Orologio

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