- 博客(22)
- 收藏
- 关注
原创 C++ 中的 static 和 const
烦人的是,如果你同时学习 Rust,会发现 Rust 的 static 和 const 不太一样,更加令人混淆,有机会专门一篇 Rust 的帮助记忆。C++ 中,在代码块外声明的变量是静态的,存储在 data 段中(不在堆栈上),它的持续性(生命周期)是整个程序运行时间。当文件 A 中声明了外部链接性的变量 a,文件 B 中想使用 a 时,需要在 B 中使用 extern 关键字重新声明。,即当与其他文件一同编译时,内部链接性的静态变量不能在其他文件中被访问(一定程度上避免了重名的困扰)
2025-08-05 07:48:36
172
原创 基于 protobuf 的 RPC 框架实现
介绍了基于 protobuf 的 RPC 框架结构,即 protobuf、框架和用户分别在系统中负责什么工作。最后提到了 RPC 的局限和对于 RPC 的常见误解。
2025-08-04 11:26:57
949
原创 Boost.asio 中的异步模式
异步”是一个高度抽象的、有丰富含义的计算机术语,而且被广泛应用在各个场景,这使得新手很难一次性完整的理解异步是什么。不妨在每次遇到异步时,尽可能的理解、搜集其含义,从而慢慢综合出一个比较全面的理解。这里就来说说 Boost.asio 中的可能算得上典型的异步模式。
2025-08-01 11:23:15
418
原创 Qemu 是什么,能做什么?
本文介绍了常用且复杂的软件 Qemu。Qemu 是一个用户态应用程序,能做跨平台应用运行、全系统模拟和与 kvm 配合完成虚拟化监控。
2025-07-31 11:00:57
972
原创 initrd 和 initramfs 原理浅析
通过阅读本文,希望读者能了解 initrd 和 initramfs 是什么,解决了什么问题和 initrd/initramfs 的工作原理。本文不想具体到代码的角度,不会具体地介绍任何数据格式,API 规范等。所以虽然本文不能对读者开发代码起到直接的参考作用,但希望能帮读者从更高的角度理解现有技术的设计思路,希望能绕过复杂的实现细节和晦涩的人为抽象直击本质。
2025-02-09 23:58:46
1015
原创 Arm-v8 中的 PSTATE
愉快的打开 Arm® Architecture Reference Manual for A-profile architecture 查看 D1.4 中对 PSTATE 的介绍翻译过来大概是:PSTATE 是处理器的状态信息。完全没有说 PSTATE 是个寄存器,所以很多文章轻巧的说 PSTATE 是个寄存器,要么是因为作者存在误解,要么就说作者接受了这个对新手存在误导的习惯。PSTATE 是处理器的状态信息,这些信息一定是可以体现在硬件上的。
2024-08-02 10:00:24
1089
原创 Rust 异步编程基础
本文意在作为对前两章的导读,希望能帮助读者理解 Rust 异步编程的底层逻辑。读者应该先坚持着把 Rust 异步编程圣经的前两章读上两三遍,不必做到理解,但至少先熟悉它说了什么,再带着问题回来看这个导读。
2024-07-11 15:41:49
1210
6
原创 Python向数据库中批量插入数据
只是浅浅接触过数据库,今天突然有批量插入数据的需求。可以使用 Java 编写代码驱动远程的 MySQL 数据库,但是 Java 好像又要搞一堆 .xml 文件,模型类等等,我对这些都不熟。发现 Python 可以一个脚本搞定,运行也极为简单,在 cmd 里 python ./insert.py 即可。
2024-05-16 22:01:11
419
原创 python中二维数组的切片
对于一维数组或者列表 a,切片的规则是 b = a[start : stop : step]对于二维数组类似,当我们对某个维度切片时,把更细分的维度看作整体即可
2022-05-15 21:25:50
4557
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人