Anno: 1993

Capitolo 2

I COMANDI DOS DI CONFIGURAZIONE

DOSKEY    EMM386    KEYB    LH    MODE    PROMPT    SET    SETVER
------------------------------------------------------------------------

I COMANDI BATCH

ECHO     PAUSE     REM
------------------------------------------------------------------------

I COMANDI CONFIG.SYS

BUFFERS        FILES       DEVICE        DEVICEHIGH        DOS
EMM386        LASTDRIVE        REM        SETVER       SHELL

------------------------------------------------------------------------

I DRIVERS DI SISTEMA

ANSI      EMM386      HIMEM      SETVER      RAMDRIVE      SMARTDRV
------------------------------------------------------------------------

I comandi precedenti vengono impiegati all'interno dei file di configurazione del sistema e all'interno dei file Batch.

I file Batch sono dei file eseguibile che hanno estensione BAT e contengono sequenze di comandi scritti in caratteri ASCII e riconosciuti dal S.O.
L'esempio piu' classico e' il file AUTOEXEC.BAT che viene eseguito all'accensione della macchina.
L'altro file di configurazione e' il CONFIG.SYS ed e' il primo ad essere eseguito durante il caricamento del S.O.
Sia CONFIG.SYS che AUTOEXEC.BAT possono essere scritti con un normale editor di testi e nel caso specifico del DOS 5.00 si puo' impiegare il programma EDIT del DOS stesso.
Un esempio di configurazione di sistema puo' essere il seguente :

Il comando PATH e' stato impostato in base alla struttura della directory che vedremo negli esempi a seguire.
Con questo comando si dice al DOS di cercare i comandi inviati da tastiera, ( comandi Dos , nomi di applicativi ecc ) prima in C poi in C:\DOS ed infine in C:\UTILITY\NORTON.
Se il comando o il file si trovano un una di queste directory essi verranno eseguiti.
Va da se che la ricerca inizia sempre dalla directory corrente e poi secondo la direttiva PATH.
Quanto visto sopra rispecchia una configurazione spartana ma in grado di far funzionare il sistema.

Su macchine basate su CPU 286 e superiori e' possibile gestire la memoria estesa, se presente, e caricarvi parte del S.O.
Si ricorda che la memoria estesa e' quella parte di RAM che eccede i 640 Kb. e che puo' essere indirizzata tramite appositi gestori ( Programmi particolari).
Non si entrera' nei dettagli della memoria ma, per non far confusione, si deve distinguere lo spazio indirizzabile dalla CPU, operante in modo reale, che e' di 1 Mb. ed e' composto da 640 Kb di RAM e 384 Kb. di ROM e il quantitativo di 1 Mb. di memoria RAM della quale solo i primi 640 Kb. sono gestibili in modo normale mentre i rimanenti 384 Kb.sono gestibili tramite appositi programmi di supporto.
Uno di questi programmi e' appunto HIMEM.SYS che permette al S.O. di accedere ad una zona di memoria situata oltre al Mb.
Permette inoltre di caricare, sempre oltre al primo Mb., parte del S.O. in modo da liberare parte della memoria convenzionale.
Su macchine 386 o 486 viene impiegato, sempre per gestire la memoria, il programma EMM386.EXE che consente di emulare memoria espansa e permette di caricare alcuni programmi, DOS residenti, in una zona di memoria superiore mappata agli indirizzi posti tra i 640 Kb. ed il Mb.
Si rammenta che la Memoria Espansa e' sempre una parte di RAM aggiunta e che poteva essere implementata anche su macchine 8086 tramite l'inserimento di apposite schede.
Sui sistemi basati su 386 e 486 la memoria estesa puo' essere emulata come memoria espansa ed i programmi abilitati ad accedervi la considerano Memoria Espansa a tutti gli effetti.


Verranno ora esaminati i Comandi di configurazione e batch ed i Driver di sistema prendendo come esempio i file Config.sys ed Autoexec.bat scritti per gestire una macchina basata su CPU 386 o 486 con 4 Mb. RAM installati.
I commenti verrano fatti alla fine di ogni file facendo riferimento alle righe in sequenza.

  • REM o Remark Serve per aggiungere righe di commento che verranno ignorate in fase di esecuzione del programma.
  • Il comando Device carica il driver Himem.sys dalla Subdirectory DOS e lo installa in memoria convenzionale. Himem e' il gestore della memoria Estesa
  • Viene installato EMM386.EXE il cui compito e' quello di predisporre l'area di memoria superiore ( tra i 640 Kb ed il Mb. ) per installarvi altri drivers di sistema e di terzi. L'opzione Noems indica che non potra' essere emulata memoria Espansa.
  • Il DOS viene caricato in memoria alta ( oltre il limite del Mb.) e si predispongono gli UMB ( Upper memory block ) in modo che il DOS mantenga un collegamento con l'area di memoria superiore.
  • Devicehigh carica un driver in memoria superiore, logicamente predisposta con i comandi appena visti, ed in questo caso si tratta di Setver. Setver ha il compito di presentare ai programmi che richiedono una specifica versione di DOS, il DOS 5 "cammuffato" in modo da rispecchiare la versione richiesta.
  • Break attiva il controllo esteso di CTRL+C. Impostato su ON abilita CTRL+C ad interrompere una lettura o scrittura da disco mentre su OFF abilita solo il controllo durante le scritture su schermo o la lettura da tastiera.
  • Utilizza formato data, ora, valuta, punteggiatura ecc. per la lingua Italiana (39)
  • Files = numero max dei files che possono essere contemporaneamente aperti. Il DOS ne puo' gestire fino a 255
  • Buffer = numero delle memorie di transito associate ai file aperti. I dati in lettura o scrittura vengono depositati prima nel buffer e poi trasferiti da o sull'H.D.
  • FCBS e' un vecchio ricordo del DOS 1 che viene mantenuto per problemi di compatibilita' e si riferisce ad un modo di apertura dei files.
  • Lastdrive imposta l'ultima lettere di unita' valida che puo' essere Z
  • Shell specifica il nome e la posizione dell'interprete dei comandi che si vuole usare ed in questo caso e' COMMAND.COM che si trova nella SUBdir DOS.
    Nel caso nostro specifico si conferma COMMAND.COM e lo si fa caricare dalla Sub DOS. ( In ogni caso, con questo tipo di impostazione, COMMAND.COM verra' SEMPRE caricato dalla Sub DOS ) L'opzione /e:256 indica che la variabile di ambiente di COMMAND.COM sara' di 256 Byte e /p rende permanente l'inter- prete dei comandi.
  • Il driver ANSI e' caricato in memoria superiore.
  • Il driver del mouse e' caricato in memoria superiore
  • Ramdrive.sys Viene creato un disco virtuale di 1024 Kb. in memoria estesa. Il disco virtuale o disco RAM funziona come un normale disco e potra' contenere 512 file in Root ed i settori saranno di 512 Byte. Il disco RAM viene perso insieme al suo contenuto allo spegnimento della macchina.
  • Smartdrv.sys Crea una cache del disco di 1024 Kb. in memoria estesa. La memoria cache e' una parte di memoria, ricavata in RAM, in cui vengono memorizzati i dati caricati da disco e li mantenuti in modo che una richiesta di lettura sugli stessi viene fatta in RAM e non su disco migliorando notevolmante i tempi.
  • @Echo off = I comandi non verranno visualizzati sullo schermo e @ fa si che manco echo off venga visualizzato.
  • Path = Indica il percorso di ricerca
  • Ver evidenzia a schermo la versione del DOS in uso
  • Lh ( LoadHigh ) carica in memoria superiore i programmi residenti di MS-DOS e di terzi. In questo caso e' Keyb it il programma di configurazione della tastiera seguito dalla posizione e nome del file di definizione della tastiera stessa. id:141 specifica il tipo di tastiera usata ( 141=italiana).
  • Il comando Mode, in questo caso, definisce la velocita' di ripetizione dei tasti e l'intervallo minimo tra una battuta e l'altra.
  • I comando Subst definisce una Subdir come disco logico che assume la lettera identificativa di un drive.
    Nel caso specifico vengono definite 3 subst che assumono E-F-G per cui scrivendo DIR E: si leggera' il contenuto della Sub UTMEXE.
  • Il comando Doskey memorizza in un buffers gli ultimi comandi digitati da tastiera che vengono richiamati tramite i tasti freccia SU e GIU'.
  • Carica il programma di terzi VSHIELD in memoria superiore.
  • Propone la data
  • Propone l'ora
  • Type legge e visualizza il contenuto di UTM.TXT
  • Personalizza il prompt di sistema utilizzando la sequenza di Escape di ANSI ( Il file ANSI.SYS e' caricato in CONFIG.SYS)
  • Terminiamo ricordando il comando PAUSE che viene utilizzato nei file batch e blocca l'esecuzione del file stesso fino a che non venga premuto un tasto.