在概念级别上是否可以在汇编/编译代码级别上实现分布式计算?

问题描述 投票:-1回答:2

此问题的目的是询问是否可能存在一些已编译的代码(以普通程序的方式考虑,不一定以任何特殊方式(例如,多线程)或任何特定的范式/语言编写)通过网络发送以某种方式在另一台计算机上的cpu中进行处理。

好,所以这涉及很多概念,而且我对分布式计算和内核/ OS概念都不是特别熟悉,所以请宽恕我这个问题是否过于广泛或过于集中;我将尽我所能继续前进。

假设我们的代码中有函数的汇编代码(指令)。这是一个简单的函数,它通过将x加1来取x并输出y。我知道在执行级别,CPU需要获取x的值,将其移入CPU寄存器,执行加法,然后最后执行RET指令。

从概念上讲,是否有可能将指令与执行所需的任何上下文信息一起传递给网络?如果是这样,什么是必要的信息? CPU寄存器和指令的初始状态,甚至更多信息?

我猜想内核将深入参与这种过程的协调,但是我最努力地意识到的是,我将需要组装成消息的最小信息“包装”是什么,因此需要另一台计算机网络的另一端将能够执行简单的计算,或者如果考虑到PC架构的限制,这样做根本没有意义。

那里有很多有关分布式计算的信息,但是大多数情况下,代码都是以特定方式设计的,这是理所当然的。我对任何已经存在的代码的类似解决方案都很感兴趣。

assembly distributed thread-synchronization message-passing compiled
2个回答
0
投票

您提供的描述非常模糊,因此我推测是,但是如果目标是“获取随机存在的本机代码并透明地在网络上移动它”,则唯一的可能性是在整个过程中进行复制,这非常相似在Unix衍生的操作系统上连接到fork-除了新进程将在另一台计算机上运行。


0
投票

这实际上是https://en.wikipedia.org/wiki/OpenMosix所做的:将进程透明地迁移到其他群集节点,使群集的行为类似于具有多个核心的单个系统。 (开发于2008年停止)。

© www.soinside.com 2019 - 2024. All rights reserved.