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