Newsgroup: it.comp.lang.c
Titolo: DOSG4

Cos'è DOS4/GW Protected Mode runtime module?
Viene caricato ogni volta che si usa un programma in modalità protetta 32
bit?
Un prog per dos in modalità protetta è sempre a 32 bit? E il contrario?
Grazie!
--
Marco Iannaccone
ICQ: 18748121
IRC nickname: Tolkien
e-mail: 
captai...@ussvoyager.com
 
marcoia...@iname.com

Un prog per dos in modalità protetta è sempre a 32 bit? E il contrario?
No e' il programma ad essere a 32 bit, ma il processore su cui gira.
E comunque un programma in modalita' protetta dovrebbe sfruttare in
pieno i 32 bit del processore.

 Un prog per dos in modalità protetta è sempre a 32 bit? E il contrario?
In realta' si possono usare contemporaneamente le modalita' a 16 e a 32
bit, sia a livello di dati che di indirizzi, ma e' fattibile solo in
assembler (almeno io non conosco nessun compilatore C in grado di farlo).
Non ho mai provato e non so se i DOS-Extender introducano limitazioni (ma
dai mannuali sembra fattibile - permette di creare segmenti a 16 bits)
Saluti, Alberto "Baggins"

""runtime module" nel contensto DOS4\GW ma credo che sia il TSR che si
E' infatti un modulo che viene linkato al programma e che consente
l'interfacciamento con la modalita' protetta a tempo di run-time.

Ma come si fa a linkarlo al programma?
Comunque, alla seconda domanda intendevo, in pratica, quando un programma è
in modalità protetta, è a 32 bit, o potrebbe anche non esserlo e, viceversa,
se è a 32 bit, ad esempio anche una console..., la memoria viene gestita in
modalità protetta?


 Un prog per dos in modalità protetta è sempre a 32 bit? E il contrario?
Mi sembra, se non sbaglio, che un programma a 32 bit possa essere in
modalità protetta o meno mentre un programma in modalità protetta debba
essere necessariamente a 32 bit.
EMG

 credo che sia il TSR che...
Non è un TSR.
EMG

Grazie per la risposta!
Comunque, se compilo un programma in modalità protetta 32 bit, parte da solo
il dos extender all'avvio del programma, o devo dichiarare qualcosa nel
sorgente?


modalità protetta?
Si, ma io vorrei capire che cosa si intende per "programma a 32 bit".
Penso che voglia dire un programma che sfrutti la tecnologia alla base
del processore a 32 bit sul quale gira (indirizzamento, istruzioni
estese...ecc...ecc..)
In tal caso dal punto di vista dei dati puoi utilizzare sia i 16 bit
che i 32 bit, ma cio' a cui devi badare e' l'indirizzamento.
Un programma puo' essere a 32 bit, ma essere forzato a gestire
l'indirizzamento a 16 bit.
Tuttavia, compilando il programma per la modalita' protetta, sia i
dati che l'indirizzamento si avvantaggiano dei 32 bit.

essere necessariamente a 32 bit.
Esatto, sempre che per "programma a 32 bit" si intenda cio' che io
penso.

sorgente?
No, non devi dichiarare nulla.
Almeno questo e' il comportamento del DJGPP che pero' portrebbe
discostarsi da altri compilatori.
La modalita' protetta dovrebbe essere avviata automaticamente dal
programma, una volta eseguito.

 sorgente?
Dato che è il DOS extender specifico del Watcom (a quanto qualcuno ha
detto) immagino che tu debba cercare tra le opzioni di quel compilatore.
EMG

 programma, una volta eseguito.
Si, però il DJGPP non utilizza il DOS4GW.EXE ma il DPMI fornito da
Windows oppure da CWSDPMI.EXE (non so se anche con altri moduli di
questo tipo ma con quello funziona).
EMG

questo tipo ma con quello funziona).
A dire il vero non ho trovato nessun CWSDPMI.EXE con il mio DJGPP,
come mai ?

 come mai ?
Infatti non lo forniscono. A me è capitato per caso di trovarlo e
metterlo nella directory dove avevo il mio programma compilato con il
DJGPP. Poi sono andato in DOS 5.0, ho lanciato il programma e questo ha
funzionato. E con quel modulo si può anche compilare con il DJGPP senza
avere Windows. Non so quanto la cosa ormai possa essere utile. Comunque
se lo vuoi basta che me lo dici.
EMG

se lo vuoi basta che me lo dici.
Be', grazie, per ora non ne sento la necessita'.
In pratica con quel programma hanno fornito un DOS Extender.