Knockout Narratives Sale

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to
for a chance to win.
Privacy Policy

Visit our stores

    Recently Viewed clear list

    Original Essays | January 30, 2015

    Charles Baxter: IMG Writers and the Bottle

    Why are people so interested in drunk writers? Recently I was sent a very interesting nonfiction book, The Trip to Echo Spring: On Writers and... Continue »


On Order

New Trade Paper
Currently out of stock.
Add to Wishlist
available for shipping or prepaid pickup only
Qty Store Section
- Local Warehouse Software Engineering- Programming and Languages

Power Programming with RPC (Nutshell Handbooks)


Power Programming with RPC (Nutshell Handbooks) Cover

ISBN13: 9780937175774
ISBN10: 0937175773
All Product Details


Synopses & Reviews

Publisher Comments:

RPC, or remote procedure calling, is the ability to distribute parts of a program to other computers on a network. An RPC facility manages the exchange of data between computers to make remote execution tranparent to the user. Distributed applications based on RPC can utilize distributed network resources and increase significantly the computing power brought to bear on complex problems. An RPC facility is the fundamental element of a distributed computing environment.The book builds a working understanding of RPC programming through examples. Sun RPC, the de facto standard on UNIX systems, is covered in detail. Interprocess communication and other related UNIX programming topics are also covered.The standard-issue RPC documentation is difficult to understand and lacks real-world examples. There are, in addition, many techniques to learn. This book, written from a programmer's perspective, shows you what you can do with RPC and presents a framework for learning it.Contents include:

  • Foundations of remote procedure calling; what it is, how it works, and which vendors support it.
  • What RPC offers to application and product developers.How RPC fits into a distributed computing environment.
  • ONC and DCE, a comparison of their similarities and differences.
  • How to develop, debug, and deploy networked applications.
  • Understanding the interprocess control (IPC) mechanisms on which RPC is based.
  • Using remote procedure calling in parallel/distributed processing and scheduling.
  • Using remote procedure calling with windowing systems.
  • Examples of distributed applications using both single and multiple concurrent servers.

Book News Annotation:

RPC, or remote procedure calling, is the ability to distribute parts of a program to other computers on a network. Two major distributed computing environments are proposed as emerging standards: the Open Networking Consortium (ONC) and the Open Software Foundation's DCE. This book examines both from a programmer's perspective, showing what can be done with RPC and providing examples.
Annotation c. Book News, Inc., Portland, OR (


Written from a programmer's perspective, this book shows what you can do withSun RPC, the de facto standard on UNIX systems. It covers related programmingtopis for Sun and other UNIX systems and teaches through examples.


Includes bibliographical references (p. 423-425) and index.

About the Author

John Bloomer currently develops network multimedia and imaging applications for GE's Signal and Image Coding R&D group. He has experience designing VLSI chips and design automation tools and has developed hardware and software for graphics and signal processing systems. John often lectures on programming for distributed computing with a second O'Reilly book on DCE RPC underway.

Table of Contents

 Table of Contents Preface  Scope of This Handbook Some Assumptions About the Reader Software Mentioned in This Book Examples Additional Sources of Information Conventions Acknowledgments Chapter 1: Introduction to Remote Procedure Calling  Client /Server Computing Remote versus Local Procedure Calling RPC Application Development Defining the Protocol Developing Server and Client Application Code Compiling and Running the Application RPC Makes Interprocess Communications Less Painful How RPC Systems Work RPC Systems and the OSI Reference Model What is "State" and Why is it Important? Top Twenty Distributed Computing Terms and Acronyms Chapter 2: Network Computing Today  Distributed Computing Standards Features of a Distributed Computing Environment NCS ONC Examining ONC and NCS Machine-independent Data Representation RPC Mechanism Protocol Compilers: The Most Important Feature Authentication Services Network Resource Naming Services Network Time Service Distributed File System There May be a Common Application Environment in Your Future Netwise: A Second ONC Alternative Machine-independent Data Representation RPC Mechanism Protocol Compiler Authentication Services Network Resource Naming Services Network Time Service Distributed File System Summary of Distributed Computing Environments Rapid Evolution Which One Should You Choose? Put the ONC Suite on Your Machine for Free Chapter 3: Developing High-level RPC Applications  Development Overview From Local to Remote Directory Reading Define the Protocol Data Types Program, Procedure, and Version Numbers High-level ONC RPC Library Calls At the Server At the Client Shared XDR Routines Using the XDR Library Writing the Client and Server Programs At the Server At the Client Compile, Link, and Run Why High-level Calls and Not Protocol Compiling? Some Limitations of the High-level Calls TCP Transport Requires Lower-level Calls Chapter 4: Protocol Compiling and Lower-level RPC Programming  Development Overview Filename Conventions and Make Using RPCGEN The Protocol Definition Language Definitions Symbolic Constants Enumerations Structures Unions Typedefs Programs Declarations Special Cases Booleans Strings Opaque Data Voids Preprocessor Symbols and Control Lower-level ONC RPC Library Calls At the Client At the Server An Example: One Client Talks to One Server Debugging Step 1: Debug Without the Network Step 2: Use the Raw Transport Step 3: Debug Over the Network Deploying Servers During Development Real RPC Power Means Using IPC Chapter 5: UNIX Networking and Interprocess Communication  A Network Protocol Primer Internet Addressing Connectionless at the Lowest Level Internet Protocols Applications Protocols Connections and Well-known Ports Types of Servers Network Transport Selection: UDP or TCP? Adding a Server to the System inetd and Other Lurking Network Daemons Installing a Server Yourself A Digression on Remote Execution Daemons Configuring inetd An Overview of UNIX Interprocess Communication Pipes and FIFOs Message Queues, Semaphores, and Shared Memory Berkeley Sockets and System V TLI Data Representation or Byte Ordering Retrieving Host, Network, and Address Information Getting ONC RPC Information Berkeley Sockets Yeah, But How Do I Use Sockets? Socket Examples Advanced Socket Programming Issues Remote Execution, Security, and Authentication Chapter 6: Application Development: Networked Parallel Image Processing  Developing Parallel Algorithms for a Multi-server Network A Simple Model For Parallel Processing on a Network System Requirements and Network Constraints Server Access Server and Network Performance Brute-force Scheduling Using Process Control Programming Asynchronous and Concurrent Processing at the Client Making Use of Timers to Watch Child Processes Development Steps Remote Image Processing (RIP) Specifying Filter Coefficients rip Development: It's as Easy as 1 2 3 Step 1: Define the Protocol Step 2: Building the Client Procedure Step 3: Developing the Server Procedure Testing and Running the Program Extending RIP Fast SunView Frame Buffer Access Needed Chapter 7: Distributing Existing Applications  A Local Image Manager The Header File Modularity Functions Compile, Link, and Run Moving a Local Application to the Network Answer Fourteen Questions First The Strategy Chapter 8: Managing RPC Servers  How to Start the Remote Server Shell Scripts For Starting Servers Starting a Remote Server From within Your Client Application Terminating Your Services System Error: "STF-E-OPENIN, Server Too Fat" Hit Reset Report Server Information with rpcinfo Changes Under TIRPC Data Sharing: NFS versus Sending it Yourself Host-qualified Filenames Chapter 9: Multiple Clients and Servers  Remote Asynchronous Calls, Multi-server Processing ONC RPC Support The Follow-up RPC Multi-tasking at the Server Multi-tasking with Child Processes Alternatives to Avoid Run-time Process Creation Combining Asynchronous and Multi-tasking at the Server Lightweight Processing Remote Asynchronous Calls with LWP A Minimal Set of LWP Routines Client Multi-server Example Server Multi-tasking Example Caveats Chapter 10: RPC Under Windowing Systems  The X Window System X Toolkit Client Application Flow of Control Low-level RPC and X Protocol Similarities Strategies for Using RPC Under X Placing and Servicing RPCs in an Event-driven Environment RPC and XView Synchronous RPCs with a Timer Remote Asynchronous Calls, FRPC Polled with a Timer The Event Notifier and Associated Complications Remote Asynchronous Call Servers Using notify_enable_rpc_svc() RPC and Xol/Xt Watching IPC with XtAppAddInput(3Xt) Remote Asynchronous Calls, Servers Using XtAppAddInput() Comparing Network Windowing Systems and RPC A Digression: Performance of Typical versus Network Windowing Systems Windowing System Evolution Can Hide a Frame Buffer X11 Pixmaps versus SunView Pixrects Augment Typical Windowing Systems with RPCs Chapter 11: ONC Transport-independent RPC  Maintains the ONC RPC Protocol Run-time Transport Independence Network Selection Uniform Addressing TIRPC API Backward Compatibility Levels of the Library An Example Availability Chapter 12: Advanced Programming Issues  Authentication and How to Use It ONC RPC Credentials and Verification at the Client Adding Authentication to the dim Client Authentication at the Server Adding Access Control to the dim Server Error Reporting Summarized Fault Tolerance, Connection Errors, and Crash Recovery Connection Errors and Recovery Caching Replies at the Server Broken Connections and Testing Crash Recovery The ONC RPC Programming Reference Section One: ONC XDR Library Routines Section Two: ONC Portmap Library Routines Section Three: ONC RPC Library Routines Section 1: ONC XDR Library Routines  Overview XDR Streams and Their Management Conversion Filters Synopsis xdr_array() xdr_bool() xdr_bytes() xdr_char() xdr_destroy() xdr_double() xdr_enum() xdr_float() xdr_free() xdr_getpos() xdr_inline() xdr_int() xdr_long() xdrmem_create() xdr_opaque() xdr_pointer() xdrrec_create() xdrrec_endofrecord() xdrrec_eof() xdrrec_readbytes() xdrrec_skiprecord() xdr_reference() xdr_setpos() xdr_short() xdrstdio_create() xdr_string() xdr_u_char() xdr_u_int() xdr_u_long() xdr_union() xdr_u_short() xdr_vector() xdr_void() xdr_wrapstring() Section 2: ONC Portmap Library Routines  Overview Synopsis pmap_getmaps() pmap_getport() pmap_rmtcall() pmap_set() pmap_unset() xdr_pmap() xdr_pmaplist() Section 3: ONC RPC Library Routines  Overview Functional Summary Building Client Authentication Making the Call from the Client CLIENT Handle Management Server Registration With The Portmap SVCXPRT Service Transport Handle Management Server Side Error Handling And Reporting Server I/O and Utility Direct XDR Access Making Secure RPCs Synopsis authdes_create() authdes_ getucred() auth_destroy() authnone_create() authunix_create() authunix_create_default() callrpc() clnt_broadcast() clnt_call() clnt_control() clnt_create() clnt_create_vers() clnt_destroy() clnt_freeres() clnt_geterr() clnt_pcreateerror() clnt_perrno() clnt_perror() clntraw_create() clnt_spcreateerror() clnt_sperrno() clnt_sperror() clnttcp_create() clntudp_bufcreate() clntudp_create() get_myaddress() getnetname() getrpcport() host2netname() key_decryptsession() key_encryptsession() key_gendes() key_setsecret() netname2host() netname2user() registerrpc() rpc_createerr svc_destroy() svcfd_create() svc_fds svc_fdset svc_freeargs() svc_getargs() svc_getcaller() svc_getreq() svc_getreqset() svcerr_auth() svcerr_decode() svcerr_noproc() svcerr_noprog() svcerr_ progvers() svcerr_systemerr() svcerr_weakauth() svcraw_create() svc_register() svc_run() svc_sendreply() svctcp_create() svcudp_create() svcudp_bufcreate() svc_unregister() user2netname() xdr_accepted_reply() xdr_authunix_ parms() xdr_callhdr() xdr_callmsg() xdr_opaque_auth() xdr_rejected_reply() xdr_replymsg() xprt_register() xprt_unregister() Error Codes Appendix A: Obtaining RFCs (Internet Standards, Request for Comment) ... 407 Appendix B: An RPC Case Study: Networked Ray Tracing  Introduction to Ray Tracing Accelerating Ray Tracing Multiple Processor Ray Tracing and Data Distribution Networked Ray Tracing Using RPC Dynamic Scheduling and Load Balancing But Why Scan-line Parallelism and Not Frame Parallelism? Performance Results Conclusions References Documentation and Source Code Comments on Augmenting the Client to Run Under X11 with the XView Toolkit Appendix C: Generalized Server Initialization, Inquiry, and Removal  Appendix D: Parallel Processing In A Nutshell  Parallelism Interprocess Control Interprocess Communication Buzzwords: A Glossary 

What Our Readers Are Saying

Add a comment for a chance to win!
Average customer rating based on 1 comment:

li.rfeng, August 11, 2010 (view all comments by li.rfeng)
Very good,I want to read.
Was this comment helpful? | Yes | No

Product Details

Bloomer, John
O'Reilly Media
Sebastopol, CA :
Programming Languages - General
Programming - General
Data processing
Operating Systems - UNIX
Computer networks
Electronic data processing
Client-server computing
Programming (electronic computers)
Distributed processing
UNIX (Computer file)
Distributed Computer Systems
Data Processing - General
Software Engineering - Programming and Languages
RPC;remote procedure calling
Edition Number:
Edition Description:
Print PDF
A nutshell handbook
Series Volume:
no. 444
Publication Date:
9 x 6 x 1.48 in 1.54 lb

Other books you might like

  1. Unix Shell Programming 3RD Edition Used Trade Paper $22.00
  2. Arabic for Beginners (Hippocrene... Used Trade Paper $5.50
  3. Sockets, Shellcode, Porting, and Coding New Mass Market $50.50
  4. The Arabic Alphabet: How to Read and... Used Trade Paper $5.50
  5. Microsoft Windows 2000 API... New Other $58.50
  6. Practical TCP / Ip : Designing,... Used Trade Paper $42.00

Related Subjects

Computers and Internet » Computer Languages » RPG
Computers and Internet » Computers Reference » General
Computers and Internet » Operating Systems » Unix » Unix and Linux Programming
Computers and Internet » Software Engineering » Programming and Languages

Power Programming with RPC (Nutshell Handbooks) New Trade Paper
0 stars - 0 reviews
$30.95 Backorder
Product details 522 pages O'Reilly & Associates - English 9780937175774 Reviews:
"Synopsis" by ,
Written from a programmer's perspective, this book shows what you can do withSun RPC, the de facto standard on UNIX systems. It covers related programmingtopis for Sun and other UNIX systems and teaches through examples.
  • back to top


Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at