Pergunta

A questão é basicamente um seguimento para esta discussão: Usando um driver de 64 bits em um programa de 32 bits . Janelas

Como eu aprendi quando eu tiver um driver de 64 bit, que é usado ao longo de um conjunto de 64 DLLs bit eu não posso ter um processo de 32 bits chamando as DLLs. Agora usamos alguma comunicação engraçado interpocess para resolver este.

O que está claro é como um automático 64 <-> 32 tradução pouco acontece quando se usa um "dispositivo padrão" como uma placa gráfica. Qualquer aplicação de 32 bits em um Bit SO Windows 64 deve ser capaz de usar um driver de impressora ou desenhar algo com GDI usando algumas DLLs do Windows. Somehwere Microsoft tem que fazer uma tradução de 32 bits para o driver de hardware de 64 bits para a placa de vídeo ou impressora. Eu sei que WoW64 faz isso para registro e sistema de arquivos de acesso, mas isso também se traduzem em drivers padrão?

A questão específica é se tivéssemos um driver WDM 64 bit para o hardware, isso pode ser facilmente utilizado por uma aplicação de 32 bits, com o Windows fazendo a tradução 64 <->? 32

Foi útil?

Solução

"dispositivos padrão" são considerados "padrão" porque o Windows-se assume a responsabilidade por eles. No caso de 64-bits do Windows, isso significa que há dois 64 bits e 32 bits DLLs. Os 32 bits DLLs são especiais, e pode conversar com os 64 bits do kernel (incluindo drivers no que kernel). Em geral, os 32 bits DLLs não falar de 64 bits DLLs, como não há 64 bits processo no qual os últimos DLLs poderia ser carregado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top