Из прошлых данных кажется, что большинство 32-битных драйверов выиграли не работает на 64-битной версии.
На чисто концептуальном уровне я считаю, что 64-битная машина имеет дополнительное «пространство» при использовании 32-битных драйверов, поэтому я пытаюсь определить, почему чаще всего они не Работа. (я иду из пользовательского пространства)
Я прочитал эту вики-статью о x86-64, в которой говорится, что
Push и pop в стеке всегда делаются 8-байтовыми шагами, а указатели - 8
Я вижу, что это, возможно, причина того, что 32-битный драйвер может выйти из строя на 64-битном, поскольку он выдает pop (), который выводит вдвое больше данных, чем ожидал драйвер.
То, что я только что упомянул, может быть полностью отключено. отметка, поскольку я занимаюсь пользовательским пространством, и в этом случае или иначе, каковы некоторые практические примеры (объяснение кода или непрофессионала) того, почему 32-разрядные драйверы не работают при работе на 64-разрядных?