CPU のアーキテクチャ タイプを見つける必要があります。マシンが syslinux を実行しているため、/proc/cpuinfo にアクセスできません。インライン ASM でそれを行う方法があることは知っていますが、変数 iedx が適切に設定されていないため、構文が間違っていると思います。
私は ASM と一緒に苦労していますが、決して専門家ではありません。誰かがヒントを持っているか、正しい方向に私を向けることができれば、私は大いに感謝しています.
static int is64Bit(void) {
int iedx = 0;
asm("mov %eax, 0x80000001");
asm("cpuid");
asm("mov %0, %%eax" : : "a" (iedx));
if ((iedx) && (1 << 29))
{
return 1;
}
return 0;
}