c - 在 Linux 上 SCHED_FIFO 和 SCHED_RR

标签 c linux xen scheduled-tasks

我正在编写一个非常小的守护进程,即使在系统承受巨大压力时它也必须保持响应。我正在研究 SCHED_FIFO 和 SCHED_RR 在调度方面的差异,并试图确定一个合理的优先级。

哪种调度程序适合小型但关键的监视守护程序,什么优先级比较安全?在试图理解两者之间的区别时,我仍然有点模糊。

我的程序正在分配 3k 以下(并使用 mlockall()),它向 xenbus 写入大约 600 个字节然后休眠,但我无法说出实际写入数据需要多少时间(以毫秒为单位)。 . 因为写入的内容取决于配置文件。

提前感谢您的任何建议/解释。

最佳答案

声名狼藉的 pchdtvr 程序捕获数字电视信号,它使用 SCHED_FIFO 来确保无论如何都将电视数据包写入磁盘。在旧计算机上播放 Doom 时,它可以一次捕获 4 个节目。

该程序臭名昭著,因为它是在 GPL 下发布的,作者 tried to revoke the GPL retroactively .这一举动激起了一场小 Storm 。无论如何,你可以在http://frequal.com/pmn/pchdtvr.html找到最新的版本来学习。 .

关于c - 在 Linux 上 SCHED_FIFO 和 SCHED_RR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/405246/

相关文章:

c - C 中没有指针和递归的回文

c - 函数原型(prototype)与否?

c - 符号扩展至 16 位

C 程序 : newbie trying to pass 2D string array into a function

linux - 在启动时启动自定义屏幕保护程序的行为与手动启动屏幕保护程序不同

perl - 使用 perl 的自签名证书通过 https 访问 xenapi

c - Gtk2 在 64 位机器上崩溃,但在 32 位机器上工作正常

c++ - Qt::如何在Linux中识别/检测系统是否被其他系统远程访问

bash - 在 bash 中检测虚拟化

linux - 尝试为 XenServer 7.0 制作主机 sFlow