使用共享通道调度对多个设备的定期请求

问题描述

我需要以可配置的间隔(每个设备)定期从可配置的设备中请求数据。所有设备都连接到共享数据总线,因此只有一个设备可以同时发送数据。

设备的内存很少,因此每个设备只能将数据保留一定的时间,然后再被下一个块覆盖。这意味着我需要确保在任何给定设备仍可用时向其请求数据,否则它将丢失。

我正在寻找一种算法,该算法在给定一系列设备及其各自的时序属性的情况下,找到可行的时间表以实现最小的数据丢失。

我想可以使用以下属性来正式描述每个设备:

data_interval:下一个数据块变为可用所需的时间

max_request_interval:两次请求之间不会造成数据丢失的最长时间

processing_time:发送请求并完全接收包含所请求数据的相应响应所花费的时间

基本上,我需要确保在每台设备的数据准备就绪且尚未过期时向其请求数据,同时要牢记所有其他设备的截止日期。

是否存在某种针对此类问题的算法?我非常怀疑我是否是遇到这种情况的第一个人。在线搜索现有解决方案并没有产生很多有用的结果,主要是因为调度算法主要用于操作系统等,可以随意暂停和恢复调度的进程。但是,对于我来说,我无法做到这一点,因为请求和接收大块数据的过程是原子的,即只能完全执行或完全不能执行。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)