我有一个在保护模式下在裸 x86(没有操作系统)上运行的 C 程序。我需要将程序的执行延迟一段时间。目前,我正在这样做:
for(p=0; p<1000000; ++p) asm("pause");
但这看起来非常非常错误(我确实得到了延迟,但显然,我无法真正控制其持续时间:“暂停”的长度未定义)。
现在,我对这么低级别的东西并没有真正的经验,我一直在网上寻找解决方案,但到目前为止,我发现的唯一一个涉及 BIOS 中断,它在 pmode 下不起作用(或者我被告知)。
那么,在保护模式下如何延迟执行?