Android用命令行启动应用

Android是基于Linux内核的操作系统,用Java写的应用程序被Android运行时虚拟机运行。

因为Android是基于Linux的,而Linux执行ELF格式的可执行文件,所以用C++编写的ELF格式的可执行文件也可以在Android运行,但有些限制。首先,Android /sdcard目录不能给文件设置+x可执行位,而把文件复制到其他文件夹需要root权限。其次,把一般Linux里的ELF可执行文件复制到Android,是不能运行的,因为系统架构等不匹配。但是,从Android Open Source Project(AOSP)源代码里可以验证,Android操作系统里的许许[……]

继续阅读

Directory Opus应用:重新打包群星存档

Paradox游戏群星的.sav存档文件其实是zip过的文本文件,编辑存档文件就可以修改国家金钱、军队血量等各种信息。编辑好后,要重新打包回.sav文件。相比于解压缩时只需要在右键菜单点击,压缩时比较麻烦,必须添加tc=off参数。[1]. Save-game editing. Paradox Wikis. [2019-04-25].[……]

继续阅读

   [ + ]

1. . Save-game editing. Paradox Wikis. [2019-04-25].

群星攻略

本文对应群星1.9版本

假设平均星球人口11.4

如果基础科学实验室的价格为在51和54矿之间,

  • 当占领3颗星时,就要开始在产出为3的宇宙研究点数上造科研站。
  • 当占领7颗星时,就要开始在产出为2的宇宙研究点数上造科研站。
  • 当占领18颗星时,就要开始在产出为1的宇宙研究点数上造科研站。

如果走机器人路线,要在有典藏扎格教授在时点机械飞升,这时一般是第三个飞升。

建设星球时,殖民地必须盖在产电地块。升级行星首府的钱跟重新造行星首府是一样的,所以可以换地方。

星球有5人口才能造行星首府,在这之前,不造基础矿场、基础水培农场、基础发电站[……]

继续阅读

C++真他妈复杂

基本类型

先讲C++基本类型吧。第一个问题就是,字符串不是基本类型!!字符串通常用两种类型表示,std::stringchar*,后者才是最原始的字符串类型,它是C时代的产物,有人说在C++里用std::string就好。那main函数的第二个参数还是必须为char*[],而且字符串字面值”hello”的类型是char*,经常不能直接传给string。初学者没有经验,如果没有系统学习,盲目搜索“C++ 字符串”,可能搜到字符串的各种表示,如wchar_t*、wstring、TCHAR、LPSTR、OLECHAR、_bstr_t ……

C++的bool可以取值true或false,[……]

继续阅读

Bash脚本解决一种问题的多种方法

字符串

字符串里有引号怎么办
> echo ‘Today'”‘”‘s “program”‘
Today’s “program”
> echo Today”‘”s ‘”program”‘
Today’s “program”
> echo Today\’s ‘”program”‘
Today’s “program”
> echo Today\’s \”program\”
Today’s “program”

单引号里没有特殊字符。

字符串里带有特殊字符,如换行符

$ x=$'\x0d\x0a'
$ echo ${#x}
2
$ echo "$x"

这里把变量x[……]

继续阅读

修改Android操作系统源代码

获取源代码

最好的办法是《repo工具笔记》里介绍的

repo init --depth 1 -u https://android.googlesource.com/platform/manifest -b android-8.1.0_r52
repo sync -c --no-tags -j4

注,-j4表示用4条线程运行,可以按照计算机的实际配置增加。

确定代码版本

就算知道要编译Android 8.1.0,8.1.0还有很多个细分版本,体现在repo或git里面就是很多个标签。8.1.0的最新版本是android-8.1.0_r52。

如果获取源代码时用了我[……]

继续阅读

随机变量的期望

离散型随机变量的数学期望

若离散型随机变量X的概率质量函数为f(x),则其期望为 \[ E(X)=\sum_i^n x_if(x_i) \]

例:伯努力分布的数学期望

设Z服从伯努力分布,求Z的数学期望。 解: 伯努力分布是两点分布,可知其概率质量函数为 \[ f(x)=\begin{cases} p & \text{ 若 } x=1 \\ 1-p & \text{ 若 } x=0 \end{cases} \] 按照定义代入: \[\begin{align*} E(X) =& \sum_i^n x_if(x_i)\[……]

继续阅读

矩阵梯度

首先定义函数\(f:R^{m \times n} \rightarrow R\),也就是函数f的输入是一个m行n列的矩阵,输出是一个数值。

那么函数 f(A) 的梯度就是对A中的每一个元素求偏导数得到的矩阵(也就是说梯度是一个矩阵):
\[
\nabla_X f(X) = \begin{bmatrix}
\frac{\partial f(X)}{\partial x_{11}} & \cdots & \frac{\partial f(X)}{\partial x_{1m}}\\
\vdots & & \\
\frac{\partial f(X)[……]

继续阅读

随机变量的定义

随机变量,一般用大写英文字母表示,是把随机现象的结果映射成实数的函数。随机变量(的值)必须是数值。

有时候,随机变量被加上冗余的限定词,变成实值随机变量。这是非必要的,因为根据定义,随机变量必须是实值。

随机变量按照其值是否连续,可分为离散型随机变量连续型随机变量

如果随机变量的值不为数值,则此变量为随机元素。随机元素是映射随机现象的结果的函数。注意,随机元素(的值)不要求为数值。[ref]”维基百科”. ”Random. . [].

继续阅读