理解RPC和LPC的概念

一直以来对于RPC的概念就是远程调用,缺乏深入的理解,现有利用业余时间做一些了解。

RPC是“远程过程调用(Remote Procedure Call)”的缩写,最早开始是出现在Sun微系统公司和HP公司运行UNIX操作系统的计算机中。RPC的“远程”定义是一个广义的说法,可以发生在不同的主机之间,也可以发生在同一台主机的不同进程之间。

Windows系统做为后起之秀,它是一种宏微混杂内核的操作系统,系统中一些“系统级”的服务进程需要进行通信,但由于RPC的网络调用的复杂性,微软就整出了一套只用于本机跨进程调用的机制,这个就是LPC,是“本地过程调用(Local Procedure Call)”的缩写。

IPC是“进程间通信(Inter-Process Communication)”的缩写,不管是RPC还是LPC是如何定义的,在使用时都要进行数据的传递,这个工作就是由IPC完成的。因此可以认为,RPC或LPC是上层建筑,IPC是底层基础。IPC是一种标准的Unix通信机制,在这一点上微软貌似没整出什么新的玩意,只在于提供的系统调用上的不同。

基于以上可以得出结论
1、在Unix系统生态环境中是不存在LPC这一说的,不管是不同主机或一台主机不同进程,RPC都可以通过网络调用实现。但是对于一台主机不同进程,为什么不借鉴Windows的LPC方式,由于对Unix系统生态环境了解不深入,原因还真是不清楚。难道是为了保持概念的延续性?不过引用一提供了一种说法,是基于安全性考虑。

2、Windows系统出于对自身性能的需要,调整了RPC的概念(或者让其狭义化了),分化出了LPC的概念。

3、操作系统发展到现在,正所谓分久必合,在这些概念上就没有严格的区分了。


引用
http://www.longene.org/techdoc/0078130001224576866.html
http://www.cnblogs.com/gsk99/archive/2010/12/13/1904541.html
http://bbs.csdn.net/topics/300244377
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LWIP(轻量级IP协议栈)和UIP(嵌入式IP协议栈)都是广泛使用的嵌入式操作系统网络协议栈。在LPC1788处理器上进行LWIP和UIP的移植可以实现网络功能。LPC1788是一款由恩智浦半导体公司生产的ARM Cortex-M3内核的微控制器。 LWIP和UIP的移植过程相似,下面是一个简单的移植指南: 1. 首先,需要在LPC1788处理器上设置合适的硬件和软件环境。确保处理器的外围设备(例如以太网控制器)和网络接口正确配置并连接。 2. 接下来,从LWIP或UIP的官方网站上下载相应的源代码。确保下载的版本与LPC1788处理器兼容。 3. 将源代码解压缩到LPC1788处理器的开发环境中。确保源代码的文件结构正确。 4. 打开源代码文件中的配置文件,通常是一个.h文件,根据LPC1788处理器的硬件配置进行相应的设置。这些配置包括网络接口和IP地址的设置,以太网控制器和中断的配置等。 5. 根据LPC1788处理器的中断控制器的配置,修改源代码中的中断处理函数。这些函数负责接收和处理网络数据包。 6. 根据LPC1788处理器的时钟配置,调整源代码中的时钟设置,以确保网络功能与处理器的时钟频率同步。 7. 最后,对源代码进行编译和链接,生成可执行文件。将可执行文件下载到LPC1788处理器并运行,即可进行网络通信。 通过以上步骤,就可以在LPC1788处理器上成功移植LWIP和UIP的网络协议栈,实现网络功能。可以使用网络协议栈提供的API来进行数据的发送和接收,实现远程数据通信等功能。同时,还可以根据具体应用的需求进行定制和优化,以提高系统的性能和效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值