我必须为项目实现一个简单的操作系统和虚拟机,它支持一些基本功能。该操作系统将在虚拟机和虚拟机上运行,就像Linux中的普通程序一样。
假设现在是虚拟机执行的量子。
非常感谢任何帮助或指导。 谢谢
答案 0 :(得分:1)
我建议你使用1个中断,并将你的计时器组织在队列中(几次,例如< 50)或堆中,这是一个非常快速的树,随时可以让你访问最小元素,即具有下一个要处理的Timer的元素。
因此,您有一个中断,一个处理程序和许多具有相关函数的计时器,这些计时器将由该单个处理程序调用。
答案 1 :(得分:0)
实际上,正常程序也使用中断(系统级),例如当他们想要使用系统调用时。 在用户级别,您可以使用swapcontext / makecontext来模拟系统级交换上下文,但是当您想要获得时间(计算时差)时,您必须使用系统调用。所以您最好直接使用系统计时器,它是不错。