Distributed operating systems: concepts and design