Newsgroup: it.comp.lang.c++
Titolo: Tempo di sviluppo DeviceDriver per WinNT 4.0

Salve,
sto valutando di scrivere un device driver per la scheda di acquisizione
video Fast FPS/60 per WinNT4.0
In questo NG ci sono persone molto esperte, che lavorano da anni nel mondo
dell'informatica, vorrei saperre da voi quanto tempo stimate ci voglia per
portare a termine un tale lavoro.
Mi basta una versione funzionante per uso personale.
Non ho mai scritto un driver (anche perchè per avere il DDK si deve pagare
salato, per uno studente), ma sono dotato di buona volontà (spero di averne
in misura sifficiente...)
Grazie.
--
Livio Cavallo

...

Prima di tutto devi acquisire la documentazione,
poi devi leggerla,
poi devi "digerirla",
poi devi capire come impostare il tuo driver in modo che l' IO manager
gradisca.
Se ti va bene, ci impieghi 6 mesi.
Poi devi scrivere il driver ed infine debuggarlo ( 1 mese volendo essere
molto ottimisti )
In alternativa potresti modificare un driver esistente sulla documentazione
del DDK, secondo la filosofia "non capisco ma mi adeguo" e sperare che le
cose vadano ( ma di solito non capita ).
E poi ti serve o il debugger della Numega ICE o 2 PC.
Ciao
Matteo

in misura sifficiente...)
prima di tutto ti serve il DDK, attualmente mi pare che l'unico modo
per ottenerlo sia acquistare l'MSDN, poi ovviamente serve il Visual
C++. Per il debug e' necessario utilizzare 2 pc altrimenti serve il
SoftICE della NuMega. 
Come tempi di sviluppo ti posso indicare quanto ho impiegato io, mi ci
e' voluta una settimana per mettere in piedi il sistema di
sviluppo/debug e per capire in linea di massima come si scrive un
driver NT, poi nel giro di 3-4 settimane ho scritto il driver. Nel mio
caso comunque era un driver piuttosto semplice e non c'era la
necessita' di integrarlo nel sistema operativo. Al contrario nel tuo
caso il driver dovrebbe rendere disponibile la fps/60 ai programmi di
video capture e questo complica ulteriormente le cose.
Senza considerare poi l'interfacciamento con l'hardware, a monte di
tutto c'e' il problema delle specifiche della fps/60, non credo che
sia cosi' facile ottenerle, tempo fa avevo cercato di ottenere quelle
della Screen Machine ma non c'e' stato nulla da fare.
Ciao
Gianpaolo Bottin
- Live Long and Prosper -

Innanzitutto vi ringrazio per le risposte.
Da quello che leggo il difficile dovrebbe essere decifrare la documentazione
(ed a seconda dell'esperienza - capacità di ognuni ci vuole da settimane a
mesi).
Per quanto riguarda le specifiche il distributore italiano da me contattato
qualche mese fa si era dimostrato disponibile a valutare l'opportunità.
A questo punto davvero mi viene voglia di provare.
Purtroppo MSDN è per me un ostacolo. Lo acquisterei per il DDK e magari dopo
aver iniziato la lettura mi accorgo che è troppo complicato - complesso ed
abbandono il progetto.
Peccato che non ci sia qualcosa come le licenze studenti per Visual C++ !
Vedrò se la mia università possiede una iscrizione MSDN (credo di sì). Poi
vedrò se posso avervi accesso...
Se posso azzardare un paragone: è più complesso capire come funziona COM
(nel senso di diventare capaci di scrivere i due *lati* del COM) o come si
scrive un driver?
La mia impressione è che sia più complesso il driver (a parte la necessità
di conoscere i sottosistemi nei quali va ad interagire il driver).
Grazie
--
Livio Cavallo

...

Nel pacco dell' MSDN ci sono 2 CD rom ( tra i tanti ); a te ne servono 2.
DDK
SDK winNT
Il COM é un po' più semplice nel senso che una volta che hai capito cosa
deve fare ti puoi gestire ( sopratutto sei in grado di fare tutte le prove
che vuoi senza crashare WinNT ).
Nel caso del driver invece tutto é molto più delicato nel senso che da una
parte vuoi spremere l' Hw di cui vuoi fare il driver, dall' altra WinNT
cerca di non farsi spremere ovvero di lasciartelo fare come però vuole lui
 e di solito a te non basta ).
Inoltre fare esperimenti é molto costoso nel senso che se ogni tentativo non
ha buon fine ha la sgradevole tendenza a crashare il SO.
La documentazione su DDK é soporifera nel senso che dopo aver letto le prime
100 pagine ti sei scordato le prime 10. ( E' un po come voler imparare il
C++ partendo dallo Stroustup ).
Fino ad ora le cattive notizie.
Ora quelle buone:
Se puoi aspettare un po ti conviene farlo in attesa dell' uscita di Win 98
che ha un WDM in tutto e per tutto simile a quello di NT5.0 ( Non dovrebbe
essere molto diverso da quello di WinNT 4.0, in più dovrebbe avere il
P&Play) e che sarà sicuramente inflazionato di libri sull' argomento ( C' é
un certo Oney che ne sta preparando uno dopo averne scritto già un altro per
Win 95).
Ci sono dei libri sui kernel driver di NT 4.0 che sono più "simpatici"
rispetto al DDK.
Ciao
Mat

di conoscere i sottosistemi nei quali va ad interagire il driver).
Non ho mai scritto driver per NT, ma supponendo che non sia
piu` semplice di quanto lo fosse qualche anno fa scriverseli per
Linux (0.99 o giu` di li`), posso asserire recisamente che il COM
e` *molto*, ma *molto* piu` semplice da "afferrare", soprattutto
con l'aiuto di un qualche libro decente.
Alex

rispetto al DDK.
Ti ricordi come si chiamano, di che editore?
Così potrei cominciare a leggermi qualche libro e rimandare l'acquisto di
MSDN. Se la lettura mi lascia qualche speranza di successo nella
realizzazione comprerò il DDK.
--
Livio Cavallo

rispetto al DDK.
su Windows Developer's Journal sono anche usciti una serie di articoli
di Paula Tomlinson che costituiscono un tutorial per la scrittura dei
driver NT. Forse qualcosa e' anche disponibile sul loro sito
www.wdj.com
