diff --git "a/doc/Android\347\263\273\347\273\237\345\272\225\345\261\202\346\241\206\346\236\266\347\257\207/Android\350\277\233\347\250\213\346\241\206\346\236\266/04Android\350\277\233\347\250\213\346\241\206\346\236\266\357\274\232\350\277\233\347\250\213\351\200\232\344\277\241\347\232\204\346\241\245\346\242\201Binder.md" "b/doc/Android\347\263\273\347\273\237\345\272\225\345\261\202\346\241\206\346\236\266\347\257\207/Android\350\277\233\347\250\213\346\241\206\346\236\266/04Android\350\277\233\347\250\213\346\241\206\346\236\266\357\274\232\350\277\233\347\250\213\351\200\232\344\277\241\347\232\204\346\241\245\346\242\201Binder.md" index b7316a7..1d4ca00 100644 --- "a/doc/Android\347\263\273\347\273\237\345\272\225\345\261\202\346\241\206\346\236\266\347\257\207/Android\350\277\233\347\250\213\346\241\206\346\236\266/04Android\350\277\233\347\250\213\346\241\206\346\236\266\357\274\232\350\277\233\347\250\213\351\200\232\344\277\241\347\232\204\346\241\245\346\242\201Binder.md" +++ "b/doc/Android\347\263\273\347\273\237\345\272\225\345\261\202\346\241\206\346\236\266\347\257\207/Android\350\277\233\347\250\213\346\241\206\346\236\266/04Android\350\277\233\347\250\213\346\241\206\346\236\266\357\274\232\350\277\233\347\250\213\351\200\232\344\277\241\347\232\204\346\241\245\346\242\201Binder.md" @@ -25,7 +25,7 @@ - 高性能:从数据拷贝次数来看Binder只需要进行一次内存拷贝,而管道、消息队列、Socket都需要两次,共享内存不需要拷贝,Binder的性能仅次于共享内存。 - 稳定性:上面说到共享内存的性能优于Binder,那为什么不适用共享内存呢,因为共享内存需要处理并发同步问题,控制负责,容易出现死锁和资源竞争,稳定性较差。而Binder基于C/S架构,客户端与服务端彼此独立,稳定性较好。 -- 安全性:我们知道Android为每个应用分配了UID,用来作为鉴别进程的重要标志,Android内部也依赖这个UID进行权限管理,包括6.0以前的固定权限和6.0以后的动态权限,传荣IPC只能由用户在数据包里填入UID/PID,这个标记完全 +- 安全性:我们知道Android为每个应用分配了UID,用来作为鉴别进程的重要标志,Android内部也依赖这个UID进行权限管理,包括6.0以前的固定权限和6.0以后的动态权限,传入IPC只能由用户在数据包里填入UID/PID,这个标记完全 是在用户空间控制的,没有放在内核空间,因此有被恶意篡改的可能,因此Binder的安全性更高。 Binder是一套相对比较复杂的设计,如何去理解它呢?🤔 @@ -279,4 +279,4 @@ private static class Proxy implements com.guoxiaoxing.android.framework.demo.nat ## 三 注册服务 -## 四 获取服务 \ No newline at end of file +## 四 获取服务