中间件通常提供两种不同类型的支持:交互支持和提供公共服务。通信支持是中间件的一个最基本的功能,它为其所支持的应用软件提供平台化的运行环境,实现互操作。而中间件的主要目的就是为了服务上层应用,提供应用层不同服务之间的互操作机制,同时提取应用软件中的共性功能或约束,作为公共服务提供给应用程序使用。因此,正确答案是B。