查看全文

WSL 使用宿主机上的代理

宿主机通过一个虚拟网卡与 WSL 进行连接,将代理设置为该网卡的 IP 地址即可。

在宿主机上可以通过 ipconfig 命令查看该网卡的地址:

1以太网适配器 vEthernet (WSL):
2
3   连接特定的 DNS 后缀 . . . . . . . :
查看全文
查看全文

Clash Mixin 规则配置

很多代理商的原生配置对墙内墙外的识别都不太好,可以通过 Mixin 配置进行增强。

以 Clash For Windows 为例:

  1. 首先在 General 界面打开 Mixin 功能
  2. 然后点击 Mixin 后面的设置图标按钮,打开 Mixin 的配置文件
  3. 参考 clash-rules 仓库。写入如下配置:
查看全文
查看全文

Linux 的 exec 函数之间的区别

Linux 的 exec 函数族中函数的原型如下:

1int execl(const char *pathname, const char *arg, ...);
2int execlp(const char *file, const char *arg, ...);
3int execle(const char *pathname, const char *arg, ...);
4
5int execv(const char *pathname, char *const argv[]);
查看全文
查看全文
查看全文
查看全文

Caller Saved Register & Callee Saved Register

在使用汇编编程时,调用间需要保存与恢复寄存器,这些寄存器可以由调用者保存恢复(Caller Saved Register)也可以由被调用者保存恢复(Callee Saved Register)。

由于调用者不知道哪些寄存器会被修改,因此只能将所有 Caller Saved Register 进行保存恢复,但这样做效率低下。

因此使用 Callee Saved Register 由被调用者根据需要保存和恢复会被改变的寄存器更常用。需要保存的寄存器如下:

架构被调用者保存的寄存器
查看全文