Skip to main content

Transparent treatment of remote pointers using IPC primitive in RPC systems

  • Conference paper
  • First Online:
Communication and Architectural Support for Network-Based Parallel Computing (CANPC 1997)

Abstract

The practicality of Remote Procedure Call(RPC) systems is well recognized and used as the basis for many experimental and commercial distributed systems. However, compared with an ordinary procedure call, conventional RPC systems have a crucial restriction: pointers cannot be used as the arguments of remote procedure without explicit and nontrivial programming efforts. This paper describes the design and implementation of method that eliminates this restriction in current computing environments without extra hardware support. The method enables transparent treatment of pointers in RPC based on caching techniques using shared memory manipulation, pointer swizzling, and coherency protocol. To validate the usefulness of the proposed method, an experimental RPC system was implemented on Linux-based workstations connected to a 10 Mbps Ethernet network. Compared to conventional methods, experiments show that the method provides performance that is proportional to the access ratio of the remotely referenced data.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Batlivala, N., Gleeson,B., and etc.: Experience with SVR4 Over Chorus. Proc. USENIX Workshop on Microkernels and Other Kernel Architectures. USENIX. (1992) 223–241

    Google Scholar 

  2. Boykin, J. Kirschen, D., and etc.: Programming Under Mach, Reading, MA. Addison-Wesley. (1993)

    Google Scholar 

  3. Bershad, B.N., Anderson, T.E., and etc.: Lightweight Remote Procedure Call. ACM Trans. on Computer Systems. 8 Feb. (1990) 37–55

    Google Scholar 

  4. Bever, M., Geihs, K., and etc.: ”Distributed Systems, OSF DCE, and Beyond” in DCE-The OSF Distributed Computing Environment. A. Schill(ed.). Berlin: Springer-Verlag. (1993) 1–20

    Google Scholar 

  5. Shirley J.: Guide to Writing DCE Applications. O'Reilley & Associates (1993)

    Google Scholar 

  6. Tannenbaum A. S.: Distributed Operating Systems. Prentice Hall (1995) 68–86

    Google Scholar 

  7. Orfali, R., Harkey, D., Edwards, J.: The Essential Distributed Objects Survival Guide. Wiley (1996)

    Google Scholar 

  8. O'Reilley & Associates: Guide to OSF/1 A Technical Synopsis (1991)

    Google Scholar 

  9. Stevens W. R.: Advanced Programming in the UNIX Environment. Addison-Wesley Publishing Company (1992) 463–470

    Google Scholar 

  10. Cattell R G G.: Object Data Management-Object-Oriented and Extended Relational Database Systems. Addison-Wesley (1991)

    Google Scholar 

  11. Moss J E B: Working with persistent objects: to swizzle or not to swizzle. IEEE Trans. Software Engineering. 18(8) Aug (1991) 657–673

    Google Scholar 

  12. Hagimont, D., chevalier, P. and etc.: Persistent Shared Object Support in the Guide System. OOPSLA '94 Conf. Proc. Oct. (1994) 129–144

    Google Scholar 

  13. Sun Microsystems: SUN OS Reference Manual. (1988)

    Google Scholar 

  14. Wilson P.: Pointer swizzling at page fault time: efficiently supporting huge address spaces on standard hardware. ACM Computer Architecture News. Jun (1991) 6–13

    Google Scholar 

  15. Hermannson, G., and Wittie, L.: Optimistic Synchronization in Distributed Shared Memory. In Proc. 14th Int. Conf. on Distributed Computing System. (1994) 345–354

    Google Scholar 

  16. Zhou S., Stumm M., Li K., and Wortman D..: Heterogeneous distributed shared memory. IEEE Trans. Software Engineering. 3(5) Sep. (1992) 540–554

    Google Scholar 

  17. Boutell T., Wirzenius L.: Linux Software Map http://www.boutell.com/lsm/lsmbyid.ogi/000963. Feb. (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dhabaleswar K. Panda Craig B. Stunkel

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kim, S., Hyun, M., Lee, S. (1997). Transparent treatment of remote pointers using IPC primitive in RPC systems. In: Panda, D.K., Stunkel, C.B. (eds) Communication and Architectural Support for Network-Based Parallel Computing. CANPC 1997. Lecture Notes in Computer Science, vol 1199. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62573-9_9

Download citation

  • DOI: https://doi.org/10.1007/3-540-62573-9_9

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-62573-5

  • Online ISBN: 978-3-540-68085-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics