硬件 什么是共享内存? -技术百科的定义

什么是共享内存? -技术百科的定义

目录:

Anonim

定义-共享内存是什么意思?

软件共享内存是一种可以由多个应用程序或进程共享以提供应用程序间通信或避免冗余数据副本的内存类型。 这是共享或传递数据的有效方法,因为它消除了使用其他过程(如输入/输出(I / O))的需要。 一个应用程序将数据保存在共享内存中,而另一个应用程序在找到时可以使用它。

在处理器的上下文中,共享内存是随机访问内存(RAM)的一部分,可由多处理器系统中的所有处理器访问。

Techopedia解释了共享内存

软件共享内存是不同程序进行通信和传递数据的一种方式,而不会增加通信过程的开销。 使用共享内存,一个程序将需要另一程序接收的任何数据写入共享内存。

例如,如果程序A想要给程序B提供一个列表,它会将数据保存在共享内存中,并用信号灯或其他标记系统对其进行标记,以表明已准备好被程序B读取。

程序B找到文件后,将检查信号量以查看是否允许其触摸该文件。 如果允许,则它将对文件执行所需的操作,将其放入共享内存中或对其进行更新。 它还会更新信号量,以便程序A知道应该获取该文件。

就硬件(特别是微处理器)而言,共享内存是供多个处理器使用的大块RAM。 编程很容易,因为所有处理器共享同一数据视图,从而促进了更快的通信。 但是,这会变得很复杂,因为处理器缓存内存以加快访问速度,这可能会导致诸如缓存一致性的问题。

什么是共享内存? -技术百科的定义