Scusate ma è da quando ho dovutoo scrivere delle librerie in C tramite le jni per farle funzionare con java che mi sto chiedendo una cosa.
Ma un programmatore C/C++ può scrivere driver per una qualsiasi periferica per windows? So che la risposta è scontata, ma la mia domanda è in che modo, da quello che ho capito con il DOS bastava richiamare una serie di registri detti Interrupts i quali davano il controllo su le varie porte del PC permettendo di scrivere driver che iteragissero direttamente con la periferica, così il problema e poi semplice bastava che l'applicazione iteragisse con driver ed il gioco era fatto.
Ma adesso mi chiedo visto che Win Xp e di fatto un pò tutta la tecnologia NT, fanno si che un'applicazione non possa accedere direttamente al driver della periferica, ma è necessario usare delle api che fanno delle chiamate di sistema, è possibile ancora ad esempio usare windows per programmare un qualsiasi dispositivo IO.
Da quello che ho capito i passi dovrebbero essere in caso di risposta affermativa:
1)conoscenza perfetta dell'hardware;
2)Scriver un device driver tramite DDK di microsoft;
3)scrivere una DLL che conterra le chiamate di funzione definite anche dall'utente;
4)scrivere l'applicazione compilarla inserendo tali chiamate di funzione;
Premetto che questo è quello che ho estrapolato leggendo altri post, ma la mia domanda di fatto è... E' possibile gestire periferiche sotto windows NT come si faceva con il DOS?