刘望舒 刘望舒
3年前
Android系统启动流程(一)解析init进程启动过程
作为“Android框架层”这个大系列中的第一个系列,我们首先要了解的是Android系统启动流程,在这个流程中会涉及到很多重要的知识点,这个系列我们就来一一讲解它们,这一篇我们就来学习init进程。"tag:Android框架层Android系统启动categories:Android框架层本文首发于微信公众号「刘望舒」
刘望舒 刘望舒
3年前
Android深入理解JNI(二)类型转换、方法签名和JNIEnv
Android框架层Android深入理解JNIAndroid框架层本文首发于微信公众号「刘望舒」前言上一篇文章介绍了JNI的基本原理和注册,这一篇接着带领大家来学习JNI的数据类型转换、方法签名和JNIEnv。<!more1.数据类型的转换首先给出上一篇文章中androidmediaMediaRecorder.cpp中的androidmediaMe
刘望舒 刘望舒
3年前
Android深入理解JNI(一)JNI原理与静态、动态注册
Android框架层Android深入理解JNIAndroid框架层本文首发于微信公众号「刘望舒」前言JNI不仅仅在NDK开发中应用,它更是Android系统中Java与Native交互的桥梁,不理解JNI的话,你就只能停留在JavaFramework层。这一个系列我们来一起深入学习JNI。<!more1.JNI概述Android系统按语言来划分的
刘望舒 刘望舒
3年前
Android Binder原理(四)ServiceManager的启动过程
Binder原理Android框架层本文首发于微信公众号「刘望舒」<!more前言在上一篇文章中,我们以MediaPlayerService为例,讲解了系统服务是如何注册的(addService),既然有注册就势必要有获取,但是在了解获取服务前,我们最好先了解ServiceManager的启动过程,这样更有助于理解系统服务的注册和获取的过程。另外还有一点
刘望舒 刘望舒
3年前
Android包管理机制(二)PackageInstaller安装APK
Android框架层Android包管理机制Android框架层本文首发于微信公众号「刘望舒」前言在本系列上一篇文章中我们学习了PackageInstaller是如何初始化的,这一篇文章我们接着学习PackageInstaller是如何安装APK的。本系列文章的源码基于Android8.0。1.PackageInstaller中的处理紧接着上一篇的内
刘望舒 刘望舒
3年前
Android包管理机制(四)PMS的创建过程
Android框架层Android包管理机制Android框架层本文首发于微信公众号「刘望舒」<!more前言PMS的创建过程分为两个部分进行讲解,分别是SyetemServer处理部分和PMS构造方法。其中SyetemServer处理部分和AMS和WMS的创建过程是类似的,可以将它们进行对比,这样可以更好的理解和记忆这一知识点。1.SyetemS
KubeCon 2021|使用 eBPF 代替 iptables 优化服务网格数据面性能
作者刘旭,腾讯云高级工程师,专注容器云原生领域,有多年大规模Kubernetes集群管理及微服务治理经验,现负责腾讯云服务网格TCM数据面产品架构设计和研发工作。引言目前以Istioiptables实现流量劫持首先看一下当前社区使用的基于iptables的流量劫持方案,下图是一个Pod的创建过程,sidecarinjector会向
Python进阶者 Python进阶者
1年前
盘点一个Python排序问题(下篇)
大家好,我是皮皮。一、前言前几天在Python最强王者交流群【刘苏秦】问了一个Python数据排序处理的问题,一起来看看吧。pythondata'a1,a1,c12,a0,b13,c13,a11,b5,a0,c8,c7,c6,c4'待处理数据out'a0,
京东云开发者 京东云开发者
1个月前
鸿蒙跨端实践-揭秘视图渲染流程
作者:京东科技刘宁一、前言通过本文你将全面清晰的洞悉动态化跨端的实现原理,感受黑悟空(数据)一路打怪升级(在不同语言环境中流转改造),逆天改命(操控原生视图绘制),终成齐天大圣(完成视图渲染呈现)的艰辛历程。二、原理介绍1.动态化跨端原理介绍动态化罗码(R
京东云开发者 京东云开发者
1个月前
谈JVM xmx, xms等内存相关参数合理性设置
作者:京东零售刘乐说到JVM垃圾回收算法的两个优化标的:吞吐量和停顿时长,并提到这两个优化目标是有冲突的。那么有没有可能提高吞吐量而不影响停顿时长,甚至缩短停顿时长呢?答案是有可能的,提高内存占用(MemoryFootprint)就有可能同时优化这两个标的