摘要: Android 系统启动流程 Summary 启动电源以及系统启动 当设备通电时,引导芯片代码从预定义的地方开始执行。引导程序 BootLoader 到 RAM,然后执行。 引导程序 BootLoader 引导程序 BootLoader 时安卓操作系统开始运行前的一个小程序,主要是将系统的 OS 拉 阅读全文
posted @ 2024-06-14 13:43 王清河 阅读(71) 评论(0) 推荐(0) 编辑
摘要: Android Binder Android 作为多进程操作系统,每个功能模块都是一个独立的进程,特别是 hal 层将底层硬件隔离开,进程通信会频繁的发生,为了更好的在进程间通信,Android 开发了 Binder 模块专门用于解决该问题。 前置知识介绍 进程执行过程 Linux 下进程通信方式 阅读全文
posted @ 2024-06-14 13:42 王清河 阅读(29) 评论(0) 推荐(0) 编辑
摘要: Ubuntu 22 在线编译 QT (aarch64 版本) 编译器: gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu QT版本: qt-everywhere-src-5.15.2 1. 下载源码 在 Download 目录下下载所需的压缩包 wg 阅读全文
posted @ 2024-11-19 11:09 王清河 阅读(37) 评论(0) 推荐(0) 编辑
摘要: Ubuntu 和 Windows 共享文件夹 背景 VMware 下 ubuntu 18 和 Windows 下共享文件夹 windows 下先建立一个共享文件夹,假设命名为 D://shared VMware 中找到设置,在里面 vmware-hgfsclient vmhgfs-fuse .hos 阅读全文
posted @ 2024-11-14 17:36 王清河 阅读(15) 评论(0) 推荐(0) 编辑
摘要: https://mirrors.huaweicloud.com/home 阅读全文
posted @ 2024-10-10 10:32 王清河 阅读(22) 评论(0) 推荐(0) 编辑
摘要: Android Binder 机制之 hal 层服务注册过程 以 Hal 层进程作为 Binder 机制中服务进程模块讲解服务端如何通过 Binder 驱动向 ServiceManager 注册服务的。 以 Broadcastradiohal2.0 为例,Android 版本 Android 9.0 阅读全文
posted @ 2024-06-14 13:36 王清河 阅读(191) 评论(0) 推荐(0) 编辑
摘要: ServiceManager 启动源码分析 以 Android 9.0 代码为例介绍 Init 拉起 ServiceManager 进程 init 进程通过 init.rc 脚本拉起 Native 层的 ServiceManager 进程 init.rc // system/core/rootdir 阅读全文
posted @ 2024-06-03 14:25 王清河 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 右值引用:移动语义和完美转发 深拷贝和浅拷贝 深拷贝和浅拷贝是两种不同的对象复制方式,主要是复制类中指针或者动态分配的内存时会发生这种不同形式的拷贝。 浅拷贝是在使用类的简单复制拷贝,会直接将类中的值复制到另一个类中; 深拷贝是在堆中重新申请内存空间对指针进行内部数据的完整拷贝; 浅拷贝存在的问题是 阅读全文
posted @ 2024-04-30 10:34 王清河 阅读(43) 评论(0) 推荐(0) 编辑
摘要: Android Hal 启动过程--以 broadcastradio hal2.0 为例 概述 broadcastradio hal2 的 Android 源码位于 hardware/interfaces/broadcastradio 目录下 hal 进程作为服务端,调用 open/mmap/ioc 阅读全文
posted @ 2024-04-03 15:47 王清河 阅读(515) 评论(0) 推荐(0) 编辑
摘要: Radio Frameworks 收音机服务进程在 Android 中在 frameworks/base/services/java/com/android/server/SystemServer.java/startOtherServices 中被调用启动 一、加载 Radio 权限配置文件 Sy 阅读全文
posted @ 2024-04-01 15:01 王清河 阅读(186) 评论(0) 推荐(0) 编辑