Android 平台中，如果想对个别的cpu、io数据进行监控，需要一些强大的工具。比如Atop。目前atop官方并不支持Android 系统，此篇文章记录在atop在Android平台编译的心路历程。1.获取到atop源码 以及 ：ncurses 源码这里选用了 atop 2.7.0 版本编译。https://github.com/Atoptool/atop/releases/tag/v2.7.0ncurses 源码：https://invisible-island.net/archives/ncurses/ncurses-6.3.tar.gz下载完成之后，需要先编译好 ncurses 支持宽字符版本的库。./configure --host=aarch64-linux-android --prefix=/path/to/ncurses/install --enable-widec环境变量配置交叉编译环境：export CC=/path/to/ndk/bin/aarch64-linux-android28-clang export CXX=/path/to/ndk/bin/aarch64-linux-android28-clang++ export AR=/path/to/ndk/bin/llvm-ar export LD=/path/to/ndk/bin/ld export STRIP=/path/to/ndk/bin/llvm-strip export CFLAGS="--sysroot=/path/to/ndk/sysroot" export LDFLAGS="--sysroot=/path/to/ndk/sysroot" 执行make install 编译 ，输出头文件与静态连接库. 目标地址是我们配置好的。/path/to/ncurses/install回到atop源码中，修改适配Android的编译环境// 修改 atop.h ，支持 ushort 类型 typedef unsigned short ushort; // 修改 ncurses的include路径 // 搜索 #include <curses.h> 替换成 #include <ncursesw/curses.h> // Makefile 中增加ncurses链接 // 替换 CFLAGS += -O2 -I. -Wall -Wno-stringop-truncation # -DNOPERFEVENT # -DHTTPSTATS //成为 CFLAGS += -O2 -I. -Wall -Wno-stringop-truncation -DNOCURSES -I/path/to/ncurses/install/include LDFLAGS += -L/path/to/ncurses/install/lib -lncurses //移除rt库引入,Android平台已经自带 atop: atop.o $(ALLMODS) Makefile $(CC) atop.o $(ALLMODS) -o atop -lncursesw -lz -lm -lrt $(LDFLAGS) //替换成 atop: atop.o $(ALLMODS) Makefile $(CC) atop.o $(ALLMODS) -o atop -lncursesw -lz -lm $(LDFLAGS) //执行编译 make clear & make 编译 之后，atop文件就位于 根目录下了编译好的文件：atop.zipadb shell 开启 shell 之后，执行 ./atop 即可进入应用
一行代码：echo "options use-vc" >> /etc/resolv.conf
下载 Rust 编译器和工具链：访问 Rust 官方网站（https://www.rust-lang.org/zh-CN/）并点击 "安装" 按钮。根据你的操作系统，选择相应的安装程序进行下载。Rust 支持多个平台，包括 Windows、macOS、Linux 等。运行安装程序：执行下载的安装程序并按照提示进行安装。在安装过程中，你可以选择自定义安装选项，例如安装路径和组件。建议使用默认选项进行安装，以便获得最佳的开发体验。配置开发环境：在安装完成后，需要配置 Rust 的开发环境。Rust 提供了一个命令行工具 rustup 来帮助你管理 Rust 版本和工具链。打开终端或命令提示符，并运行以下命令来配置 Rust：$ rustup update这将更新 Rust 工具链到最新版本。配置编辑器：Rust 可以在各种文本编辑器和集成开发环境（IDE）中进行开发。选择一个你喜欢的编辑器，并安装相应的 Rust 插件或扩展。一些流行的选择包括 Visual Studio Code（使用 Rust 扩展）、IntelliJ IDEA（使用 Rust 插件）和 Emacs（使用 rust-mode）等。测试安装：完成上述步骤后，可以验证 Rust 是否成功安装。在终端或命令提示符中运行以下命令：$ rustc --version 如果成功输出 Rust 版本信息，则表示安装成功。现在，你已经成功搭建了 Rust 的开发环境，可以开始学习和编写 Rust 程序了！你可以尝试编写一些简单的 Rust 代码，并使用 cargo 工具构建和运行项目。Hello World！：运行 cargo init demo 命令来生成你的第一个Rust程序吧。demo/src/main.rsfn main() { println!("Hello, world!"); }执行 cargo runHello, world!
Rust 简介了解 Rust 的起源和设计目标介绍 Rust 的特性和优势环境搭建安装 Rust 编译器和工具链配置开发环境（编辑器、调试器等）基本语法变量和数据类型控制流语句（条件语句、循环语句等）函数和模块所有权和借用理解 Rust 的所有权系统学习如何通过借用和引用管理内存理解生命周期和借用检查器结构体和枚举定义和使用结构体创建枚举类型实现方法和关联函数错误处理理解 Rust 的错误处理机制使用 Result 和 Option 类型处理错误和可选值抛出和捕获异常并发编程理解 Rust 的并发编程模型使用线程和消息传递进行并发编程使用锁和原子操作实现同步高级特性Trait 和泛型宏和元编程unsafe 代码块和原始指针标准库和生态系统学习使用标准库提供的常用功能探索 Rust 的生态系统，了解常用的第三方库和框架实际项目实践???
!/bin/bashAPI_KEY="====="ZONE_ID="====="RECORD_ID="====="DOMAIN="====="IP=$(curl -s https://api.ipify.org)echo "IP: $IP"curl --request PUT \ --url https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$RECORD_ID \ -H "Authorization: Bearer $API_KEY" -H "Content-Type: application/json" \ --data ' {"content": "'$IP'","name": "'$DOMAIN'","proxied": false,"type": "A","ttl": 60}'
线路测试1curl https://raw.githubusercontent.com/zhucaidan/mtr_trace/main/mtr_trace.sh|bash线路测试2curl https://raw.githubusercontent.com/zhanghanyun/backtrace/main/install.sh -sSf | sh测速bash <(curl -Lso- https://git.io/superspeed_uxh)dockercurl -fsSL https://get.docker.com |bash docker run -d --restart always --name tm traffmonetizer/cli_v2:arm64v8 start accept --token xxx docker run -d --restart always --name tm traffmonetizer/cli_v2 start accept --token xxx流媒体bash <(curl -L -s check.unlock.media)跑分 wget -qO- bench.sh | bash bash <(curl -Lso- https://bench.im/hyperspeed) 融合怪bash <(wget -qO- bash.spiritlhl.net/ecs)ddwget --no-check-certificate -qO InstallNET.sh 'https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh bash InstallNET.sh -debian 7-12 pwd: LeitboGi0ro bash InstallNET.sh -windows 10/11/2012/2016/2019/2022: pwd:Teddysun.com
12.7 ：跟一个同事一起吃午饭，后来得知这货是?12.9 ：得知一起吃午饭的同事转阳，下午收到短信提示10混1混阳，在单位做抗原结果阴性。回家之后（晚上8-9点浑身酸疼，嗓子不舒服）12.10 发烧一整天，浑身疼，估计是因为有鼻炎，所以鼻子异常的疼。吃了布洛芬，莲花清瘟。估计这次是真中招了。中午去做了单管核酸。12.11 今天早上稍微舒服点了，同时嗓子开始咳痰，浑身疼的状态减轻。早饭吃了俩包子俩鸡蛋。收到混阳短信提示？问题是昨天做的单管。。一混一没跑了。12.12 双十二，晚上竟然用来抢抗原，可惜没抢到；今天舒服多了，除了嗓子疼、鼻塞、呼吸困难之外。嗓子疼的吃不下饭，所以今天没怎么吃饭，完全靠一些蜂蜜水撑着。12.13 仍然嗓子疼，鼻塞、胸闷。估计明天可以好点。。。12.14 嗓子疼的情况比之前好多了，不过仍然鼻塞胸闷，而且好像加重了，甚至有点呼吸困难。