Android之性能监控框架
[TOC]
文章参考:https://zhuanlan.zhihu.com/p/102955723
文章参考:https://blog.csdn.net/rangfei/article/details/109304175
概述如何将项目生成的库文件、头文件、可执行文件或相关文件等安装到指定位置(系统目录,或发行包目录)。在cmake中,这主要是通过install方法在CMakeLists.txt中配置,make install命令安装相关文件来实现的。
接下来我们为生成的target配置安装目录。install方法的基础用法如下
1234567install(TARGETS MyLib EXPORT MyLibTargets LIBRARY DESTINATION lib # 动态库安装路径 ARCHIVE DESTINATION lib # 静态库安装路径 RUNTIME DESTINATION bin # 可执行文件安装路径 PUBLIC_HEADER DESTINATION include # 头文件 ...
Android之性能监控框架
[TOC]
概述构建规范以及构建属性
用于指定构建规则以及程序使用要求的指令:target_include_directories(), target_compile_definitions(), target_compile_options()
指令格式
1target_include_directories(<target> [SYSTEM] [BEFORE]<INTERFACE|PUBLIC|PRIVATE> [items1...] [<INTERFACE|PUBLIC|PRIVATE> [items2...] ...])
Include的头文件的查找目录,也就是Gcc的[-Idir…]选项
1target_compile_options(<target> [BEFORE] <INTERFACE|PUBLIC|PRIVATE> [items1...] [<INTERFACE|PUBLIC|PRIVATE> [items2...] ...]
gcc其他的一些编译选项指定,比如-fPIC
具体的参数如下:
...
Android之性能监控框架
[TOC]
概述进行开发调试的逻辑
FlatBuffers的编译与构建
[TOC]
文章参考:https://google.github.io/flatbuffers/usergroup0.html
概述文章参考:https://google.github.io/flatbuffers/index.html#flatbuffers_overview
FlatBuffers 是一个序列化开源库,实现了与 Protocol Buffers,Thrift,Apache Avro,SBE 和 Cap’n Proto 类似的序列化格式,主要由 Wouter van Oortmerssen 编写,并由 Google 开源。Oortmerssen 最初为 Android 游戏和注重性能的应用而开发了FlatBuffers。现在它具有C ++,C#,C,Go,Java,PHP,Python 和 JavaScript 的端口。
FlatBuffer 是一个二进制 buffer,它使用 offset 组织嵌套对象(struct,table,vectors,等),可以使数据像任何基于指针的数据结构一样,就地访问数据。然而 FlatBuffer 与大多数内存中的数据结构不同,它使 ...
QNX开发环境搭建
[TOC]
概述设置QNX开发环境设置QDT开发环境变量
可以通过项目组拿到QNX develop tookit的开发工具包,比如笔者使用的QNX7.1.0,放在如下目录:
1/home/frewen/DevTools/qnx710
设置环境变量
12345# >>> 设置QNX的环境变量。默认使用的QNX710_ENV >>>export QNX710_ENV="/home/frewen/DevTools/qnx710/qnxsdp-env.sh"alias qnx710='source $QNX710_ENV'# source $QNX710_ENV #默认不启用。若需要启动执行指令qnx710# <<< 设置QNX的环境变量。默认使用的QNX710_ENV <<<
Linux系统性能测试之top命令
[TOC]
概述文章参考:http://c.biancheng.net/view/1065.html
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定.
1top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
选项:
-d 秒数:指定 top 命令每隔几秒更新。默认是 3 秒;
-b:使用批处理模式输出。一般和”-n”选项合用,用于把 top 命令重定向到文件中;
-n 次数:指定 top 命令执行的次数。一般和”-“选项合用;
-p 进程PID:仅查看指定 ID 的进程;
-s:使 top 命令在 ...
数学概念之角度和弧度换算
[TOC]
概述文章参考:https://blog.csdn.net/wbf1013/article/details/122811230
弧度在数学中,弧度是角的度量单位。它是由国际单位制导出的单位,单位缩写是rad。
定义:弧长等于半径的弧,其所对的圆心角为1弧度。(即两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧长正好等于圆的半径时,两条射线的夹角的弧度为1)。
很简单的思考:如果弧长等于半径,拉直的话,就是会形成一个等边三角形,度数是60度。 但是因为是弧形的,对应的角度肯定不到60度。
角度角度是用以量度角的单位,符号为“ ∘ \circ ∘”。一周角分为360等份,每份定义为1度( $$1^\circ$$)。 弧度的几何意义是以逆时针为正,以顺时针为负,以 1 1 1 为半径的扇形的弧长是圆心角弧度的绝对值。从而平角的弧度是 π \pi π, 可以给出常用的弧度与角度的关系如下:
角度转换360度=2π弧度(公式一)
1.角度换弧度根据公式一,可得:1度=(2π弧度)/360=π/180( ...
协方差和相关系数的理解
[TOC]
概述
数学概念之协方差基础概念
[TOC]
概述协方差(Covariance)在概率论和统计学中用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况,即当两个变量是相同的情况。
协方差表示的是两个变量的总体的误差,这与只表示一个变量误差的方差不同。如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值,另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值。如果两个变量的变化趋势相反,即其中一个大于自身的期望值,另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。
定义可以通俗的理解为:两个变量在变化过程中是同方向变化?还是反方向变化?同向或反向程度如何?
你变大,同时我也变大,说明两个变量是同向变化的,这时协方差就是正的。
你变大,同时我变小,说明两个变量是反向变化的,这时协方差就是负的。
从数值来看,协方差的数值越大,两个变量同向程度也就越大。反之亦然。
咱们从公式出发来理解一下:$$Cov(X,Y)=E[(X-\mu _{x})(Y-\mu _{y})]$$
下面举个例子来说明吧:
比如有两个变量X,Y,观察t1-t7(7个时刻)他们的变化情况。
简单做了个图:分别用红点 ...
曲线曲率的定义与计算以及曲率半径
[TOC]
概述文章参考:https://www.bilibili.com/read/cv2048242/
曲线的曲率对于曲线的定义,我们可以这样说:曲线的弯曲程度叫做曲线的斜率。
这还没有涉及到定义式,所以似乎有一点模糊。那么我们先来直观地感受一下什么是弯曲程度,以及它与那些因素有关。我们来举一个举一个简单的例子吧!
我们把曲线(光滑的——之后我会给出光滑的条件)看做是一条赛车道(弯的♂),然后你坐在一辆全自动的赛车里面,经过一天的工作(或者学习),你十分劳累,身子除了下肢固定,其他都可以自由摇动(super面筋人~),那么这时,我们可以用你在车上身子摇动的剧烈程度(或者说晃动的角度)来反映赛道的曲率。由于赛车转弯时角度连续,所以可以假定赛车道光滑。