【发布时间】:2013-11-04 00:10:46
【问题描述】:
我正在尝试找到一种方法让我的代码在继续之前等待两秒钟。我在保护模式下使用 nasm for Linux,所以我只能使用 int 80h。我找到了一个名为“alarm”(27)的syscall,另一个名为“pause”(29)。但是,当我尝试使用它们时,程序会等待并完成而不是继续执行。我还发现了另一个syscall,sigaction,它改变了信号的行为(所以我认为它可以用来让程序忽略警报生成的信号而不是退出)但我不太明白 sigaction 是如何作品。谢谢你的帮助。
有用链接:http://man7.org/linux/man-pages/man2/alarm.2.html
http://man7.org/linux/man-pages/man2/sigaction.2.html
【问题讨论】:
-
阅读time(7) 并点击链接到那里的其他手册页。
-
更正一下,你是在 nasm 中进行用户空间编程,所以你没有处于保护模式。
标签: linux assembly timer sleep nasm