作者归档:Windows Hao

关于Windows Hao

力求做到最好的数据恢复效果,降低数据丢失带来的损失,为您的数据安全保驾护航。

穿越无线电波的奇妙旅程——短波收音与业余无线电体验

最近,我沉浸在短波收音机的世界里,感受着一种独特的宁静与惊喜。短波(Shortwave,SW)电台的魅力在于,它能够跨越大洋和国界,将遥远的声音带到耳边。白天,我能接收到邻近地区的新闻、音乐和文化节目;而到了夜晚,随着电离层的变化,远在万里之外的电台也能清晰出现,让人仿佛置身于全球的广播网络中。

通过调频旋钮,每一次旋转都是一次未知的探索。有时信号清晰得如同在房间播放,有时又模糊得像在听海浪般的杂音。这种不确定性让短波收听充满了趣味,也培养了耐心与专注。

除了商业广播电台,业余无线电(Ham Radio)也是短波世界中不可或缺的一部分。业余无线电爱好者通过自己的设备进行点对点通信,分享信息或进行交流。收听这些 Ham 电台,让我感受到无线电的另一种活力——人与人的直接联系,而非单向广播。这种交流有时包含摩尔斯电码(CW)、数字模式或者语音传输,每种形式都充满了探索的乐趣。

在短波收听中,天线的重要性尤为突出。天线就像收音机的“耳朵”,它的长度、方向和高度都会直接影响信号的强弱和清晰度。不同类型的天线(如长线天线、环形天线或简易室内天线)能够捕捉到不同频段的信号,有时一个小小的调整就能让原本模糊的声音变得清晰。通过尝试不同天线布置,我深刻体会到,短波收音不仅是设备和频率的游戏,更是一场空间与环境的互动,让你真正参与到信号传播的过程之中。

现在,随着互联网的发展,通过网络收音机或流媒体收听世界各地的广播变得异常方便,信号稳定、音质清晰,甚至可以随时回放。这种方式非常适合追求效率和便利的人,彻底解决了传统短波收听中“信号不稳定”“杂音干扰”等问题。

然而,短波收音的魅力却不仅仅在于听到声音本身,而在于“探索”和“意外收获”的体验。调频旋钮缓缓旋转,杂音中可能突然传来远方电台的声音,那种从嘈杂电波中捕捉到清晰信号的惊喜,是网络收音无法复制的。每一次信号的明暗变化、每一次陌生语言的出现,都像在与世界进行一次小小的偶遇。

尤其是业余无线电(Ham)信号,它们穿越了物理边界和国界,不是简单的网络数据流,而是由爱好者自己发射的真实无线电波,带着人的参与感与温度。接收到这些信号时,你能感受到一种微妙的联系感:这不仅仅是声音,而是人与人之间跨越千里的交流。

因此,尽管网络收音更加方便和清晰,但短波收音拥有独特的仪式感和冒险感,是一种慢节奏、富有探索精神的体验。它让你重新学会耐心,重新感受世界的广阔,也让每一次收听都充满了意外与惊喜。天线的选择和摆放,让这份体验更加立体和真实,使短波收音不仅是听到声音,更是感受信号在空间中传播的魅力。

IPv6:互联网的未来之路

IPv6:互联网的未来之路

互联网在过去几十年里飞速发展,而 IP 地址作为网络的“身份证”,也经历了从 IPv4 到 IPv6 的演进。随着设备数量的激增,IPv4 地址已经几近枯竭,IPv6 成为了解决网络扩展问题的关键技术。本文将从 IPv6 的基本概念、特点、优势以及实际应用角度,带你深入了解这一互联网基础协议。

什么是 IPv6?

IPv6(Internet Protocol version 6)是互联网协议的第六版,用于替代现有的 IPv4。IPv4 使用 32 位地址,理论上支持约 43 亿个地址,但随着智能手机、物联网设备和云服务的普及,这些地址已经不足以满足需求。IPv6 使用 128 位地址,理论上可以提供 3.4×1038 个独一无二的地址,几乎可以为每颗沙子分配一个 IP 地址,彻底解决地址不足的问题。

IPv6 地址通常表示为 8 组 16 位的十六进制数,每组之间用冒号分隔,例如:

为了简化书写,连续的零可以用双冒号 :: 表示:

IPv6 的核心特点

  • 海量地址空间:IPv6 的 128 位地址设计,为未来几十年甚至上百年的互联网发展提供充足的地址储备。
  • 自动配置(Stateless Address Autoconfiguration):IPv6 支持设备自我配置 IP 地址,无需手动设置或依赖 DHCP,适合大规模网络部署。
  • 内置安全性:IPv6 协议内置了 IPsec 支持,用于数据加密和身份验证,为网络通信提供更高安全保障。
  • 简化的报文结构:IPv6 头部比 IPv4 更简洁,有助于提升路由效率和处理速度。
  • 支持多播和任播:IPv6 提供更灵活的组播和任播能力,减少网络带宽浪费,提高数据传输效率。

IPv6 与 IPv4 的区别

特性 IPv4 IPv6
地址长度 32 位 128 位
地址数量 约 43 亿 3.4×1038
配置方式 手动或 DHCP 自动配置或 DHCPv6
安全性 依赖额外协议 内置 IPsec
数据包头部 复杂,20 字节 简化,40 字节

IPv6 在实际应用中的优势

  • 物联网设备的大规模接入:随着智能家居、工业传感器等设备普及,每台设备都需要唯一的 IP,IPv6 解决了这一瓶颈。
  • 移动互联网优化:IPv6 支持无状态自动配置和移动 IP,移动设备在不同网络间切换时更加高效。
  • 提升网络性能:简化的报文头部和更高效的路由机制,有助于减少延迟,提升网络传输速度。
  • 增强网络安全:内置 IPsec 支持,为数据传输提供端到端的加密保障,降低中间人攻击风险。

IPv6 部署现状与未来趋势

目前,全球 IPv6 部署正在稳步推进,尤其是在美国、欧洲和亚洲部分地区。大型互联网公司如 Google、Facebook、Cloudflare 等已经全面支持 IPv6。随着 5G 和物联网的发展,IPv6 将成为互联网通信的主流标准。

对于个人用户,开启 IPv6 可以获得更快的网络连接、更稳定的访问体验,同时减少 NAT 带来的限制。很多宽带运营商也在逐步推送 IPv6 网络,支持双栈(IPv4 + IPv6)模式,实现平滑过渡。

总结

IPv6 不仅是解决 IP 地址枯竭的方案,更是未来网络发展的基石。它为大规模设备接入、移动互联网、物联网以及安全通信提供了技术保障。无论是企业网络架构师,还是普通互联网用户,了解和部署 IPv6 都将带来长远的好处。

生成符合 EUI-64 标准的 IPv6 地址

概述

本软件旨在帮助用户生成符合 EUI-64 标准的 IPv6 地址,特别适用于家用动态 IPv6 环境。用户可以通过提供最新的公网 IPv6 前缀(通过输入域名或 IPv6 地址),与指定的 MAC 地址组合生成完整的 IPv6 地址。软件提供了便捷的设置功能,支持管理常用的 IPv6 前缀、域名/IPv6 地址列表以及 MAC 地址,同时允许为 MAC 地址指定别名。

功能

  • 自动解析域名以获取最新的公网 IPv6 前缀。
  • 提供用户设置和管理常用的 IPv6 前缀和域名/IPv6 地址列表。
  • 支持输入和管理多个 MAC 地址,并允许为每个 MAC 地址指定别名。
  • 将 IPv6 前缀与 EUI-64 后缀组合生成完整的 IPv6 地址。

注意事项

  • 动态前缀的限制:如果 config.json 中设置的是固定的 IPv6 前缀而不是域名,则软件在生成 IPv6 地址时会使用该固定前缀。这样无法实现每次生成的 IPv6 地址都是最新的公网 IPv6 地址。只有使用域名解析时,软件才能自动获取最新的公网 IPv6 前缀并进行地址组合。
  • 确保输入的 MAC 地址符合标准格式。

使用方法

  1. 设置常用的 IPv6 前缀和域名/IPv6 地址

    • 在 config.json 中添加或编辑常用的 IPv6 前缀及域名/IPv6 地址列表,方便快速选择。
  2. 设置和管理 MAC 地址

    • 输入 MAC 地址并可为其指定便于识别的别名,例如:
      • 00:1A:2B:3C:4D:5E 别名:家庭PC
    • 支持添加和删除 MAC 地址。
  3. 生成 IPv6 地址

    • 选择预设的 IPv6 前缀或输入域名/IPv6 地址,以及指定的 MAC 地址,软件将生成符合 EUI-64 标准的完整 IPv6 地址。

示例

示例 1:使用域名/IPv6 地址和已保存的 MAC 地址生成 IPv6 地址

  • 域名/IPv6 地址:example.com 或 2001:db8::
  • MAC 地址(别名:家庭PC):00:1A:2B:3C:4D:5E
  • 生成结果:2001:db8::21a:2bff:fe3c:4d5e(视解析结果而定)

系统需求

  • Python 3.6 或更高版本
  • 适用于 Linux、Windows、macOS 系统

安装

克隆项目并安装依赖项:

使用

运行软件并根据提示管理 域名/IPv6 地址和 MAC 地址:

许可证

本项目采用 MIT License 许可证开源。

联系

如有问题或建议,请联系 [haobinnan@gmail.com] 或访问 GitHub 项目页面

曾经被取消,现在又卷土重来!AVX-512到底有何魅力?

7月25日,英特尔发布了新的 APX(高级性能扩展),同时还披露了新的 AVX10,它将首次为 P 核和 E 核提供统一的 AVX-512 功能支持。也标志着被英特尔在12、13代酷睿中枪毙的AVX 指令集运算功能回归。AVX-512为何能卷土重来?

不得不提的ALU
在了解 AVX-512 指令集之前,有必要先了解一下 ALU 的工作原理。

顾名思义,算术处理单元用于执行数学计算任务。这些任务包括加法、乘法和浮点计算等运算。为了完成这些任务,ALU 使用由 CPU 时钟信号驱动的特定应用数字电路。

因此,CPU 的主频就决定了 ALU 处理指令的速度。因此,如果 CPU 的时钟频率为 5GHz,那么 ALU 在一秒钟内可以处理 50 亿条指令。因此,CPU 的性能会随着时钟频率的提高而提高,但CPU 产生的热量也会增加。

那么,新一代处理器如何提供比旧版处理器更好的性能呢?人们开始利用并行概念来提高性能。这种并行性可以通过使用多核架构来实现,即使用多个不同的处理内核来提高 CPU 的计算能力。

另一种提高性能的方法是使用 SIMD 指令集。简单地说,“单指令、多数据”的指令方式,可以让 ALU 在不同的数据点上执行相同的指令。这种并行方式可以提高 CPU 的性能,AVX-512 就是一种 SIMD 指令,用于提高 CPU 在执行特定任务时的性能。

什么是 AVX-512,它如何工作?
AVX 512 指令集是 AVX 的第二次迭代,于 2013 年进入英特尔处理器。作为高级矢量扩展(Advanced Vector Extensions)的缩写,AVX指令集最早出现在英特尔至强Phi(Knights Landing)架构中,后来在英特尔服务器处理器Skylake-X CPU中使用。

此外,AVX-512 指令集通过 Cannon Lake 架构进入基于消费类的CPU,后来又得到 Ice Lake 和 Tiger Lake 架构的支持。

该指令集的主要目标是加速涉及数据压缩、图像处理和加密计算的任务。AVX-512 指令集的计算能力是旧版指令集的两倍,性能大幅提升。

那么,英特尔是如何将使用 AVX-512 架构的 CPU 性能提高一倍的呢?

如前所述,ALU 只能访问 CPU 寄存器中的数据。高级矢量扩展指令集增加了这些寄存器的大小。

由于寄存器容量的增加,ALU 可以在一条指令中处理多个数据点,从而提高了系统性能。

就寄存器大小而言,AVX-512 指令集提供 32 个 512 位寄存器,与旧版 AVX 指令集相比增加了一倍。

因此,只需执行一条指令,就可以同时进行多项操作,而不必以标量方式(即逐个数据)进行操作。例如,可以同时对 8 个 64 位数据或 16 个 32 位数据进行操作,等等。

英特尔为什么要终止 AVX-512?
如前所述,AVX-512 指令集具有多项计算优势。事实上,像 TensorFlow 这样的流行AI开发库都使用了该指令集,以便在支持该指令集的 CPU 上提供更快的计算速度。

而对于浮点运算极度依赖的加密解密计算、文件压缩和解压缩、音频视频编码解码以及复杂的3D渲染来说,AVX-512的性能提升是比较大的。也就是说,对生产力用户来说,只要软件支持,那么AVX-512对性能提升是很明显的。

即使是对于3A大作,由于复杂的3D和AI计算,这种并行指令集对帧率的提升也是有帮助的。而诸如游戏主机模拟器等虚拟化计算场合,其意义也非常大。

那么,英特尔为什么要在最近的12、13代酷睿处理器上禁用 AVX-512呢?

因为这两代处理器与英特尔生产的旧处理器不同。旧系统使用的是运行在同一架构上的内核,而这两代酷睿处理器使用的是两个不同的内核,也就是异构运算技术。Alder Lake 处理器中的这些内核被称为 P 核和 E 核,采用不同的架构。

P 核心使用 Golden Cove 微架构,而 E 核心使用 Gracemont 微架构。当特定指令能在一种架构上运行而不能在另一种架构上运行时,这种架构上的差异就会妨碍调度程序的正常运行。

在 Alder Lake 处理器中,AVX-512 指令集就是这样一个例子,因为 P 核心拥有处理该指令的硬件,而 E 核心却没有。

因此,Alder Lake 处理器不支持 AVX-512 指令集。

尽管如此,AVX-512 指令仍可在某些英特尔未将其物理融合的 Alder Lake CPU 上运行。要做到这一点,用户必须在 BIOS 中禁用 E 核。

相反,由于采用非异构运算结构,AMD在Ryzen7000 CPU上,反而支持起了AVX-512,似乎也是一种小小的讽刺。

AVX10如何恢复AVX-512支持?
新的 AVX10 ISA 并不支持英特尔当前一代的 CPU,但它使英特尔同时拥有 E 核和 P 核的芯片仍然支持 AVX-512,尽管 512 位指令只能在 P 核上运行。同时,融合的 256 位 AVX10 指令可以在 P 核或 E 核上运行,从而使整个芯片仍然支持 AVX-512 功能。

不过,e-cores 将仅限于融合 AVX10 的最大 256 位向量长度,而 P-cores 可以使用 512 位向量。这感觉类似于 Arm 的 SVE 对可变向量宽度的支持。

AVX10 推出后,英特尔将冻结 AVX-512 ISA,今后 AVX-512 指令的所有使用都将通过 AVX10 ISA 进行。

使用Python生成BaiduPCS工具的百度网盘秒传信息

有一次想使用百度网盘自带的Windows客户端上传一些大量音乐文件,这些音乐文件其他百度网盘用户肯定早都上传过,所以基本这些文件不会占用太多网络上传带宽,但是百度网盘自带的Windows客户端计算文件的md5过程非常慢,估计是为了避免计算md5过程影响电脑整体性能,所以故意没有开全速计算,后来利用BaiduPCS命令行工具进行上传,所以写了一个Python代码进行md5计算,计算过程可以达到磁盘的峰值速度。