ANALISI
Lo studio di questi S.O. verte su due fronti:
In pratica seguiremo i seguenti aspetti:
DUE SISTEMI OPERATIVI A CONFRONTO
Il Sistema MS-DOS nasce nel 1981 come esigenza dellIBM nella gestione di un Personal Computer per un unico Utente, capace di gestire poche unità come unità di elaborazione (CPU), memoria centrale (RAM FISICA), tastiera, monitor, Drive 5,5" per Dischetto. In pratica il Sistema Monotasking si è evoluto in Multitaskin virtuale ove per multitaskin si intendeva ritenere un programma a riposo o attesa durante lutilizzo di un altro. In seguito levoluzione del Software MS-DOS ha seguito necessariamente levoluzione dellarchitettura del PC.
La gestione dei processi:
Il S.O. operava con processore 80286 con 8 Mhz di velocità, ovvero con la capacità di svolgere una operazione ( ciclo ) in un 1/8 µs, con memoria centrale ram fissa e non espandibile di 640Kb, strutturata fisicamente come 10 settori di 64 Kb luno, e indirizzamento reale fisico della memoria su questi settori prelevando le istruzioni a 8 o 16 bit alla volta ( bus ). In seguito la Ram Fisica ? stata estesa a 1Mb, sino 2 e 4 Mb ed oltre fino ad un massimo di 16 Mb.
La gestione della Memoria:
Nellipotesi di una Ram di 16 Mb, la distribuzione della Memoria ? sintetizzata come schema:
Memoria libera |
Schede I/O + ROM |
Nucleo del Dos S.O. |
Buffer Cache + RAM |
640 Kb |
384 Kb |
Da 1 Mb + 64 KB |
Fino a 16 Mb |
Memoria convenzionale |
Memoria Superiore |
Memoria Alta |
Memoria Estesa |
Il Driver che permette lutilizzo della Ram è lHimem.sys, mentre quello che che gestisce la Memoria Espansa, come parte di memoria superiore o una parte mappata della memoria estesa e il File EMM386.EXE , nonché lo Smartdrive per la creazione di Cache virtuale su Hard Disk e di RamDrive per la creazione di Ram Virtuale. Questi due gestori della memoria possono essere utilizzati per particolari procedure attraverso un programma, il Memmaker, che attraverso una routine, ci da la possibilità di decidere indirizzi privilegiati di memoria e in ogni caso di distribuirla nel modo ottimale.
Il primo Mb di memoria viene quindi distribuito per il Nucleo del S.O. Dos o caricato mediante Memmaker sulla memoria alta in questo modo:
640 Kb |
Altra RAM |
|||||||||
Vettore I/O |
Io.sys |
msdos.sys |
Buffer Cache |
Driver di dispositivo |
Command.com |
Programmi configurazione |
Command.com |
|
BIOS |
|
|
BIOS |
KERNEL |
File System |
Memoria Estesa |
Parte residente |
Autoexec.bat Config.sys |
Parte Transitoria |
|
Driver ROM |
Il File System:
Per i primi sistemi Operativi che dovevano gestire solo una memoria di Massa contenuta su di un Dischetto di capacità esigue ( 180 Kb ), vi era il problema di non poter superare i 64 file o stringhe da poter caricare. Oggi, il S.O. , si compone di migliaia di Files che gestiscono una memoria che oltrepassa il Gb, caricato su una Ram di anche 32/64/128 Mb. Il File System del dos ha una struttura gerarchica ad albero, e la directory principale prende il nome di radice o root della struttura. In pratica ogni settore di memoria contenente dati è un a Stringa di blocchi di memoria così costituito:
BOOT |
FAT 16/32 |
ROOT |
Blocco1 |
Blocco2 |
|
BloccoN |
Settore avvio |
Informazioni sulla directory |
Nome directory \ |
512 Kb |
512 Kb |
512 Kb |
512 Kb |
In partizioni dell Hard Disk costruite con FDISK in DOS così esemplificate:
BOOT |
Partizione1 |
Partizione2 |
Per la razionalizzazione dello spazio fisico di memoria si utilizza il Comando Dos CHKDSK /F che opera una specie di Defrag fisica controllando i File in struttura dati, la loro integrità; inoltre con lopzione /F si opera il ricollocamento di questi in spazi contigui o indirizzati con collegamenti lasciando spazi liberi e contigui per nuove registrazioni di dati.
L'ambiente Windows riprende molti concetti utilizzati da Macintosh, come l'interfaccia grafica, desktop, icone, menù a tendina, finestre, etc. al fine di migliorare la comunicazione uomo-macchina. In questo modo, Windows 3.x si avvicina ad un S.O., pur essendo solo un ambiente di sviluppo che si poggia sul Dos.
La Gestione della Memoria , in modo protetto, sfrutta l'utilizzo della memoria estesa oltre il muro del 1° Mb di Ram sino ai 16 Mb; inoltre utilizza anche la stessa virtualmente come Cache per i File di scambio.
Il Multitasking, simulato, in quanto utilizza sempre e solo un microprocessore per un processo alla volta. Windows 3..x è un Sistema Non-Preemptive, che si appoggia sul Dos per la gestione delle risorse; non dispone neppure di un File System proprio; quando si passa da una applicazione ad un'altra, non fa altro che mettere in attesa una per utilizzarne un'altra ( congelamento ); il passaggio che simula il Multitasking viene operato mediante una Lista di applicazioni in attesa, che possono essere richiamate secondo procedure Dos ( Alt + Tab ).
Il File System, non esiste e in sua vece vi è il File Manager, efficace e semplice, rispetto al Dos, per operare tutte le procedurte comunemente eseguibili, in pratica un traduttore ad interfaccia grafica.
Il Nuovo Sistema Windows 95/98 nato per rendere più semplice ed utilizzabile il PC, anche per coloro che non avevano conoscenze specifiche. Utilizza il sistema ad Oggetti e i menù Pulldown, la giuda in linea e il Plug & Play per il riconoscimento rapidop e automatico delle periferiche collegate. E' un vero e proprio sistema operativo integrato che include l'MS-Dos. Supera i problemi di attesa coordinamento fra Dos e Windows 3..x in quanto elimina la conflittualità delle Fat diverse utilizzandole in modo indipendente. Windows utilizza un processo dinamico di caricamento: carica Autoexec.bat e Config.sys , ma anche IOS.INI ( a 32 bit ) che si dedica al caricamento e scaricamento dei Device al momento dell'utilizzo dell'applicazione richiamata , ill tutto senza utilizzare memoria convenzionale, lasciandola quindi libera per le applicazioni e scambio.
Il Multitasking, è effettivo con sistema Preemptive creando un sistema di code di processi verso la CPU, attivando di volta in volta parti di processi ( thread ) , anche distinti e per applicazioni diverse in esecuzione.
La Gestione della Memoria, cambia nel modo di indirizzare i settori di memoria sulla Ram, ovvero, mentre nel Dos si parlava di segmenti, adesso si parla di indirizzamento lineare, utilizzando così tutta la memoria disponibile ed eliminando completamente le differenze ripartite sul Dos, In pratica non siamo più condizionati da settori di 64Kb ( segmenti ), ma adesso si utilizzano linee di Ram + Hard Disk di estensione evidentemente maggiore. Ulteriore salto di qualità si ottiene con l'accresciuta efficienza dello Swap ( File di scambio ), che utilizza inoltre una cache virtuale che si crea di volta in volta sull'Hard Disk in relazione alle necessità di spazio e al numero di code liste Thread in attesa alla CPU. Il File di Scambio diventa quindi dinamico.Il File System, è effettivo e gestisce le nomenclature di File e settori di memoria, in pratica utilizzando tutta la memoria disponibile.
|
Swapping Page in un sistema dinamico |