|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Registered User
Iscritto dal: Apr 2004
Messaggi: 75
|
Istruzioni in Kernel Mode in Windows
Per poter usare istruzioni privilegiate sotto windows,cioè che possano essere eseguite solo in kernel mode,devo per forza inserirle in una dll? ad esempio se dovessi scrivere un driver che usa istruzioni di I/O (quindi le istruzioni IN e OUT in assembly 80x86 che sono privilegiate) l'unico modo è creare una dll e non un eseguibile ?
|
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non un dll, ma un driver...
Quindi un .VXD per Win9x o un .SYS per WinNT/2k/xp Ultima modifica di cionci : 16-04-2004 alle 19:01. |
![]() |
![]() |
![]() |
#3 |
Registered User
Iscritto dal: Apr 2004
Messaggi: 75
|
però i driver contenuti in c:\windows\system32 di windows 98 sono tutti .sys , mentre i .vxd sono quelli vecchi,ci sono solo su win95 e precedenti,credo,perchè in win98 non ce n'è nemmeno uno di vxd
comunque tornando al discorso di prima,io non posso dire al compilatore di creare un .sys.........quindi forse devo creare una dll e poi cambiare l'estensione a mano e poi windows lo riconosce automaticamente come driver quando viene linkata dinamicamente? |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Mi sembra che anche 98 e Me supportino i driver vxd...comuqnue non è questo il punto...
Devi scaricare il Driver Developer Kit dal sito M$... |
![]() |
![]() |
![]() |
#5 |
Registered User
Iscritto dal: Apr 2004
Messaggi: 75
|
ok,il DDK mi serve per creare i driver .sys
ma se io voglio non creare un driver,ma solo usare un'istruzione privilegiata tipo questa IN ax,3DAh ;legge lo stato del monitor VGA devo per forza metterla in un driver .vxd o .sys? se la metto in un dll windows mi da operazione non valida? |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non sei in kernel mode e quindi non puoi fare alcuna istruzione di IN e di OUT...
|
![]() |
![]() |
![]() |
#7 |
Registered User
Iscritto dal: Apr 2004
Messaggi: 75
|
grazie e scusa il disturbo,ti ricambierò in qlc modo
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Jul 2002
Città: Napoli
Messaggi: 1964
|
scusate se mi intrometto ... Come si fa a passare in kernel mode ?
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Si scrive un driver
![]() |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Jul 2002
Città: Napoli
Messaggi: 1964
|
Per scrivere un driver occorre programmare in assembler ?
|
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non è detto...dipende dal tipo di driver... Se è und river che deve accedere all'hardware spesso è necessario...
|
![]() |
![]() |
![]() |
#12 |
Registered User
Iscritto dal: Apr 2004
Messaggi: 75
|
Ma un driver deve sicuramente accedere all'hardware,per definizione,mi faresti un esempio di driver che non accede alle porte di I/O?
|
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non è vero che un driver accede per definizione all'hardware...
Ad esempio...il driver del protocollo TCP/IP non accede direttamente all'hardware... Altro esempio "driver connessione automatica di Accesso Remoto"...anche questo non accede all'hardware... |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:08.