当前位置: 首页 > news >正文

如何在自己电脑上做网站自己怎么做网站

如何在自己电脑上做网站,自己怎么做网站,如何申请一个网站,山西新闻头条最新消息Binder架构 Binder进程与线程 对于底层Binder驱动,通过 binder_procs 链表记录所有创建的 binder_proc 结构体,binder 驱动层的每一个 binder_proc 结构体都与用户空间的一个用于 binder 通信的进程一一对应,且每个进程有且只有一个 ProcessS…

Binder架构

在这里插入图片描述

Binder进程与线程

在这里插入图片描述
对于底层Binder驱动,通过 binder_procs 链表记录所有创建的 binder_proc 结构体,binder 驱动层的每一个 binder_proc 结构体都与用户空间的一个用于 binder 通信的进程一一对应,且每个进程有且只有一个 ProcessState 对象,这是通过单例模式来保证的。在每个进程中可以有很多个线程,每个线程对应一个 IPCThreadState 对象,IPCThreadState 对象也是单例模式,即一个线程对应一个 IPCThreadState 对象,在 Binder 驱动层也有与之相对应的结构,那就是 Binder_thread 结构体。在 binder_proc 结构体中通过成员变量 rb_root threads,来记录当前进程内所有的 binder_thread。
作用是给每一个进程的每一个线程固定一个biner,别通信的时候搞错了

Binder 线程池:每个 Server 进程在启动时创建一个 binder 线程池,并向其中注册一个 Binder 线程;之后 Server 进程也可以向 binder 线程池注册新的线程,或者 Binder 驱动在探测到没有空闲 binder 线程时主动向 Server 进程注册新的的 binder 线程。对于一个 Server 进程有一个最大 Binder 线程数限制,默认为16个 binder 线程,例如 Android 的 system_server 进程就存在16个线程。对于所有 Client 端进程的 binder 请求都是交由 Server 端进程的 binder 线程来处理的。

一次完整的通讯

在这里插入图片描述
为什么说binder通信只有一次拷贝,就是因为服务端将自己的能力注册到service_manager中时,是将代理通过mmap,将用户空间的地址映射到了内核空间。用户在请求这个能力的时候,实际上是将数据通过service_manager拷贝到内核空间,然后直接在这个地址跑出结果,再把结果回传到用户空间。

http://www.dtcms.com/a/423547.html

相关文章:

  • Vala编程语言高级特性-多线程
  • 上海网站建设培训学校廊坊做网站优化的公司
  • 在JavaScript / HTML中,动态计算调整文字大小
  • Video over HTTPS,视频流(HLSDASH)在 HTTPS 下的调试与抓包实战
  • 黄页88网站关键词怎么做农村自建房100张图片
  • 网站开发经验总结与教训徐州开发的网站
  • 重庆福彩建站北京提供24小时医疗服务
  • 浅谈文件上传
  • react 初体验2
  • 内网穿透的原理和配置
  • 科技护航童心:物联网助力科学护眼与智能哄娃新方式
  • 挂网站需要什么服务器wordpress 短信验证码
  • 【代码随想录day 29】 力扣 135.分发糖果
  • 上海企业建站咨询c 微信小程序开发教程
  • 新奇特:数字永生,当神经网络成为你的数字化身
  • 开题报告之基于SpringAI的AI笔记智能体的设计与实现
  • 【SpringBoot】@Scheduled是静态配置,是我想改时间,但又不想引入其他组件,还有什么方案么?
  • ip做网站地址电商平面设计师
  • C语言内存布局:虚拟地址空间详解
  • 南昌比较好的网站设计白银市建设网站
  • Redis:高性能内存数据库的六大核心优势
  • Qt 程序包括Qt Creator 无法使用fcitx 输入法的解决办法
  • 【题解】洛谷 P4051 [JSOI2007] 字符加密 [后缀数组]
  • 免费 网站建设火车头 wordpress接口
  • 【MYSQL 】SQL 行列转换实战:如何用 CASE WHEN 与 SUM/MAX 重塑部门表
  • 网站申请支付宝支付网站关键词选取的方法
  • 最新版谷歌浏览器Axure插件(免翻墙)
  • 网站加载特效代码开源镜像网站开发
  • 虚拟串口工具vspd
  • 从入门到精通【Redis】理解Redis事务