CG - 2026新年快乐

新年贺词汇聚世界之声:过去一年,爱与恨、善与恶、文明与野蛮、光明与黑暗的种种力量博弈带来诸多挑战;新的一年,希冀生命与美好的原力觉醒,来引领这个世界跨越挑战,攀登梦想,携手前行。 世界百年变局加速演进,需要以宽广胸襟超越隔阂冲突,以博大情怀关照人类命运。幸同各位一道,做中国富强的践行者、时代的推动者

阅读全文 →

BPF - 使用Rust为安卓arm64构建BPF

{"output":{"choices":[{"finish_reason":"stop","message":{"role":"assistant","content":"```\n本文介绍了如何使用 Rust 的 aya 框架为 Android ARM64 平台开发 eBPF 程序,涵盖环境准备、工具链安装、目标平台配置及构建流程。\n- **核心步骤**:安装 Rust 工具链、nightly 编译器、bpf-linker 和 LLVM,使用 `cargo-generate` 创建项目模板;\n- **平台适配**:通过 `.cargo/config.toml` 设置链接器为 `ld.lld`,并设置环境变量 `CARGO_CFG_BPF_TARGET_ARCH=aarch64` 实现 ARM64 架构支持;\n- **开发限制**:eBPF 程序运行在受限环境中,不支持堆内存、标准库和 panic,需使用 `unsafe` 和 helper 函数;\n- **实用技巧**:通过宏定义与字符串匹配方式绑定 kprobe 函数,结合 `bpf_probe_read_user_str_bytes` 实现用户空间字符串读取。\n\n这篇文章为开发者提供了在 Android ARM64 上使用 Rust 构建 eBPF 程序的完整实践指南,特别适用于系统级调试和安全监控场景。\n```"}}]},"usage":{"total_tokens":2473,"output_tokens":248,"input_tokens":2225},"request_id":"62c9a09e-3301-935c-91f0-e8c5bdf343a9"}

阅读全文 →

LLVM - 开发属于自己的llvm plugin(1)

开始 这里使用的语言是Rust! LLVM 插件仅仅是一个 dylib,LLVM 工具(例如opt、lld )加载它时会为其提供PassBuilder。因此,你必须在你的Cargo.toml 添加下面这行: [lib] crate-type = ["cdylib"] PassBuilder允许注册

阅读全文 →

安卓Linux - 一个基于页表的幽灵内存实现

项目链接:https://github.com/fuqiuluo/android-wuwa 为某个进程的虚拟地址"绑定"一块物理内存,让进程能够通过指定的虚拟地址访问到实际的物理页面。 但是不修改vma有关的任何东西,虽然是泄漏了些东西,至少实现了,不对吗?不需要去hook show_map 非常的

阅读全文 →

解决React Native Web开关按钮圆头颜色不统一的问题

React Native Web开关按钮颜色显示异常?一个属性搞定 你有没有遇到过这样的问题:React Native项目在手机上运行完美,但部署到网页后,Switch开关组件的小圆点颜色就是不对?明明代码里设置了颜色,但网页上就是不生效? 别担心,这个问题困扰了无数开发者,今天我们就来彻底解决它。

阅读全文 →

React Native Web中去除TextInput焦点边框

在开发React Native应用时,我们经常需要同时支持移动端和Web端。然而,当应用运行在Web平台时,TextInput组件会出现浏览器默认的黑色焦点边框(outline),这往往与我们精心设计的UI风格格格不入。本文将详细介绍如何优雅地解决这个问题,同时保持跨平台的一致性体验。 问题的根源

阅读全文 →