【问题标题】:Bankers Algorithm with realtime process [closed]具有实时过程的银行家算法[关闭]
【发布时间】:2014-06-15 03:26:14
【问题描述】:

我们如何将 taskmanager 中的进程(如 notepad.exe)作为输入作为我的银行家算法(死锁检测)的进程???

【问题讨论】:

    标签: c++ algorithm process operating-system bankers-algorithm


    【解决方案1】:

    跟踪所有操作系统/外部条件以在实际应用程序上实现真正的死锁预防算法将是困难的,而且可能是不可行的。现代操作系统(当我们不是在谈论 RT 感知系统时)由于其极其复杂和昂贵而不愿实现此类算法。

    换句话说,您可以摆脱 Windows 死锁,在最坏的情况下,只需重新启动即可。考虑到这种情况发生了多少次,这在桌面操作系统市场上并不被认为是一个大问题。

    因此,我建议使用虚拟应用程序编写一个简单的测试用例

    • 服务于您的目的
    • 让您准确了解您的应用程序正在使用什么,并让您管理复杂性

    附带说明:notepad.exe 或类似的应用程序不是实时进程,即使您在 Windows 任务管理器中赋予它们“实时”优先级(甚至不是软实时) )。实时流程具有必须遵守的时间限制(即截止日期)。这在任何桌面操作系统中都不是这样,因为它们只是在构建时考虑了不同的概念(时间共享)。 Linux 有一些 RT 补丁(例如 Xenomai)可以将内核中的调度算法呈现为实时的,但我现在不知道该补丁的状态。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-07
      • 1970-01-01
      相关资源
      最近更新 更多