IPC(进程间通信),Remote Call(远程调用),IDL(接口描述语言)架构及其在BMP(BREW移动平台),Android中的应用浅析

由于本人才初识BMP和Android,所以仅仅是自己的一些肤浅认识,难免有错误,欢迎指正。

 

首先我们看IPC,现代操作系统都是多进程,多线程的。进程间存在地址边界,无法直接跨越。所以,两个进程间无法进行直接的请求,传递和调用。IPC是操作系统内核提供的一种跨进程的机制,允许两个进程间使用IPC来传递数据。 虽然某些情况下我们可以将Service直接加载到自己的进程中调用服务,此时可以进行简单的本地调用(Local Call),但是,从安全,性能和共享的角度出发,更多的情况下,Service都是运行在自己独立的进程中,此时Client使用其服务时,就必须跨越进程,那么就涉及到了IPC。 所以,在现代操作系统或者移动平台上,IPC是无处不在的。

 

 

IPC是操作系统层面提供的一种很底层的机制。你可以把它看做基础设施,传输媒介甚至底层协议。它只负责进程间传递数据,究竟数据是什么含义,发送,接收方如何处理这些数据等等都不是它的处理范围。 而这些,恰恰是上层需要为特定场景制定特殊的解决方案,框架,制定一致的规约,协议, 就像TCP/IP一致化了底层传输机制,但是面对不同应用场景的数据传输,必须由不同的应用层协议来协调C/S,以便能理解对应的语义,从而正常收发。 在非本地(同一进程内称之为本地)的复杂数据传递,调用中,尤其需要制定这样一套规则,来一致的解决问题。比如,远程对象调用。 Remote Call就是为此而生, 虽然初期其只应用在真正的两台主机间的远程调用,但目前&#x

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值