vCard 是什么
vCard 是广为使用的电子名片的文件格式标准,常用于手机通讯录文件中,其后缀名常为 .vcf
。
一个典型的 vCard 文件内容如下所示:
1 | BEGIN:VCARD |
每个 vCard 条目通过 BEGIN:VCARD
与 END:VCARD
包裹,其中 VERSION
字段表示 vCard 版本号,N
和 FN
字段分别表示 姓名 和 名,TEL
字段表示电话号码。
GitHub 上的 vCards 项目提供了类似中国黄页的功能。
vCard 是广为使用的电子名片的文件格式标准,常用于手机通讯录文件中,其后缀名常为 .vcf
。
一个典型的 vCard 文件内容如下所示:
1 | BEGIN:VCARD |
每个 vCard 条目通过 BEGIN:VCARD
与 END:VCARD
包裹,其中 VERSION
字段表示 vCard 版本号,N
和 FN
字段分别表示 姓名 和 名,TEL
字段表示电话号码。
GitHub 上的 vCards 项目提供了类似中国黄页的功能。
CDN 全称 Content Distribution Network,即内容分发网络。CDN 管理分布在多个地理位置上的服务器,在它的服务器中存储各种类型的 Web 内容(包括文档、图片、音频和视频等)的副本,并且所有试图将每个用户请求定向到一个将提供最好的用户体验的 CDN 位置。
CDN 可以是专用 CDN(private CDN),即它由内容提供商自己所拥有;例如,谷歌的 CDN 分发 YouTube 视频和其他类型的内容。也可以是第三方 CDN(third-party CDN),它代表多个内容提供商分发内容;Akamai、Limelight 和 Cloudflare CDN 都运行第三方 CDN。
UDP 全称 User Datagram Protocol,即用户数据报协议,它为调用它的应用程序提供了一种不可靠、无连接的服务。
UDP 无非就是对网络层协议增加了一点(多路)复用/(多路)分解服务而已。
使用 UDP 的上层协议有:
选择使用 UDP 的原因:
DNS(Domain Name System,域名系统)的主要任务是进行主机名(hostname,也称域名)到 IP 地址转换的目录服务,它由两部分组成:
DNS 服务器通常是运行 BIND(Berkeley Internet Name Domain)软件的 UNIX 机器。DNS 协议运行在 UDP 之上,使用 53 号端口。
因特网电子邮件系统由 3 个主要部分组成:
一个典型的邮件发送过程是:从发送方的用户代理开始,传输到发送方的邮件服务器(通过 SMTP 或 HTTP),再传输到接收方的邮件服务器(通过 SMTP),然后在这里被分发到接收方的邮箱中。如果发送方的邮件服务器不能将邮件交付给接收方的邮件服务器,发送方的邮件服务器在一个报文队列(message queue)中保持该报文并在以后尝试再次发送。
P2P 是一种体系结构,就好像 C/S 体系结构一样,但不同的是,P2P 对总是打开的基础设施服务器有最小的(或者没有)依赖,成对间歇连接的主机(称为对等方)彼此直接通信。
基于 P2P 这种体系结构产生了许多应用,譬如文件分发应用和分布式散列表(DHT),而文件分发应用中一个典型的例子就是 BitTorrent 协议。
如果要类比 P2P 与 BitTorrent 之间的关系,就好像 C/S 体系结构与 FTP 协议之间的关系。
HackRF 是由 Great Scott Gadgets 设计和制造的开源 SDR 硬件,其可以发送或接收 1 MHz 到 6 GHz 的无线电信号。目前 HackRF 的具体版本为 HackRF One。你可以通过其官网上列出的购买网址购买它,也可以在万能的淘宝上购买。
Sphinx 是一个用 Python 编写的文档生成工具,其使用 reStructuredText 作为标记语言,目前广泛应用于 Python 相关项目的文档生成。比如 Python 官方文档就是基于 Sphinx 生成的,此外 Linux 内核文档的生成也于 2016 年从 Doxygen 转向 Sphinx,要了解更多使用 Sphinx 的项目可参考其官方列表。
Proxmark 是 RFID 界的瑞士军刀,请注意,其官网为 proxmark.org,其他诸如 proxmark.com 的均为第三方商业网站,目前的最新硬件版本是 Proxmark 3。
节选自《The Little Schemer》
基本元件 car 仅定义为针对非空列表。
基本元件 cdr 仅定义为针对非空列表。任意非空列表的 cdr 总是另一个列表。
基本元件 cons 需要两个参数。第二个参数必须是一个列表。结果是一个列表。
基本元件 null? 仅定义为针对列表。
基本元件 eq? 需要两个参数。每个参数都必须是一个非数字的原子。