DVSA and SHOB: Support to Shared Data Structures on Distributed Memory Architectures