【问题标题】:Number of processes a real time operating system can handle实时操作系统可以处理的进程数
【发布时间】:2014-10-20 02:14:16
【问题描述】:

很久以前,在设计您自己的 RTOS 问题时,我在一次采访中被问到这个问题。实时操作系统可以处理的进程数量是否有限制?什么会导致这种限制?据我所知,每个进程都应该有自己的 PC、调用堆栈、堆、文件描述符、页表等。我假设内核必须使用一些数据结构来跟踪进程。限制是源于这种数据结构吗?

【问题讨论】:

    标签: operating-system real-time


    【解决方案1】:

    在大多数情况下,可用的 RAM 量是唯一的限制因素(如 FreeRTOS 中的情况),但在少数情况下,所选调度算法会施加限制。例如,由于使用了位图调度程序,uCOS/II 有(我认为)255 的限制 - 但即使如此,255 也比它所设计的实时系统所需要的要多。

    【讨论】:

    • 我不确定 RAM 如何限制 RTOS 的进程数。不就是把程序加载到内存然后换出吗?即使程序太大而无法放入内存,它也可以利用磁盘上的交换空间,因此 RAM 不应该限制进程数?有了调度器位图我就可以理解了。
    猜你喜欢
    • 2012-03-11
    • 1970-01-01
    • 2014-10-17
    • 2011-08-11
    • 2019-02-17
    • 2016-05-16
    • 2015-07-10
    • 2018-06-23
    • 2011-09-30
    相关资源
    最近更新 更多