Supporting Operating Systems for Reconfigurable Computing: A Distributed Service Oriented Approach