nvim使用技巧
本文总结记录一些neovim的使用技巧。包括根据上下文判断是否扩展tab(expandtab)、在已修改的文件位置之间跳转、将选中的字符作为文件名在新标签页打开。
专注于工业物联网行业数据采集,嵌入式Linux系统裁剪,5G智慧网关软件开发等
本文总结记录一些neovim的使用技巧。包括根据上下文判断是否扩展tab(expandtab)、在已修改的文件位置之间跳转、将选中的字符作为文件名在新标签页打开。
下文主要记录Ubuntu18.04中修改默认的网络接口名称,例如Ubuntu中的默认网络接口以ens32命名,这里将其修改为internet等。
/etc/default/grub禁用Linux自动生成的可预测命名规则。/etc/udev/rules.d/70-persistent-net.rules手动绑定MAC和名称。每个LaTeX文档都是以命令开始并且以命令结尾。
LaTeX会忽略\end{document}之后的内容。
源码文件中处于\begin{document}之前的属于前导。
前导中的第一个命令必须是\documentclass[<选项>]{<文档类>}。该命令接受一个强制参数,该参数是LaTeX内置的预定义文档类之一(也可以是第三方包提供的扩展文档类)。
在本教程中,我们将解释和探讨这些文档类的差异和相似之处,以及每个类应该用于什么目的。我们还将讨论documentclass命令所接受的多个可选参数,这些参数可用于自定义我们文档的外观。
如果需要在三个标准文档类或beamer的基础上添加中文及版式的支持,建议使用CTeX宏集提供的四个中文文档类。
在使用非标准文档类及beamer时,如果需要添加中文及版式的支持,则可以使用ctex宏包。
LaTex支持三种中文编辑显示方法。
要想在pdflatex中编辑、显示中文,使用ctex宏包的同时也需要设置文件编码为UTF-8,区别是ctex宏包版本>=2.5.10时不用在代码中手动指定UTF-8编码。
| 特性 | UTF-8+ctex(pdfLaTeX) | CJKutf8(pdfLaTeX) | ctex+XeLaTeX |
|---|---|---|---|
| 编译器 | pdflatex | pdflatex | xelatex |
| 文件编码 | UTF-8(自动检测) | UTF-8(强制) | UTF-8(原生支持) |
| 字体管理 | 自动映射基础字体 | 需手工指定字体 | 直接调用系统字体 |
| 配置复杂度 | 中等(需版本适配) | 高 | 最低 |
dibbler-server是一个实现DHCPv6的应用层软件,用于给客户端提供IPv6地址分配。
dibbler-server支持IPv6地址分配、前缀委派等,本文总结了在前缀委派时需要的配置和可能出现的错误。
本实例中通过在两台VMWare虚拟机之间创建ipip6隧道,实现IPv4 over IPv6通信。
两台VMWare虚拟机通过NAT DHCP服务器连通,并手动配置静态IPv6地址。
调整TCP参数MSS字段,来设置在TCP层分片而非IP层。
当TCP负载大小不超过TCP的MSS字段值但其加上TCP头、IP头之后超过链路层MTU时,就会触发IP层分片。
正常TCP的MSS字段值为MTU-IPv4头-TCP头=1500-20-20=1460字节或MTU-IPv6头-TCP头=1500-40-20=1440字节。
当遇到IPIP协议(例如IPv4 over IPv6),此时TCP的MSS字段如果仍旧为1460或1440字节时,就会触发IP层分片(TCP层为查过MSS字段值不会触发分片,IP层超过1500字节触发分片),此时应设置为MTU-IPv6头-IPv4头-TCP头=1500-40-20-20=1420字节。
container_of宏用于根据结构体某个成员的地址来获取结构体自身的地址,获得结构体自身地址之后可以访问该结构其他字段,定义在<linux/kernel.h>中。
offsetof宏用于计算结构体成员到结构体自身地址之间的偏移,定义在<linux/stddef.h>中。
pragma pack预定义指令用于限制结构体成员的最大对齐数,结构体的对齐数取决于结构体成员的最大对齐数,结构体成员的对齐数取决于其自身大小和编译器设置的参数。
__attribute__((packed))和__attribute__((aligned(n)))分别用于GCC不设置对齐和设置以n字节对齐。
EVE-NG (Emulated Virtual Environment - Next Generation)是一款基于B/S架构的多厂商网络仿真平台,主要用于构建虚拟化网络实验环境。
本文主要参考NS-3的官方参考教程搭建NS-3网络仿真工具。
主要包括两个方面: