Distributed operating systems - Tanenbaum, Andrew S.