protobuf结构定义
tag = (field_number << 3) | wire_type
repeated int32 xxx = 4 [packed=true];
packed=true 为紧凑格式,存储格式为:TLVVV...
packed=true 为松散格式,存储格式为:TVTVTV...
参考资料
https://www.jianshu.com/p/e0d81a9963e9
https://blog.51cto.com/9291927/2332264?source=drt
overlayfs使用方式
以只读方式挂载 (lower层至少需要2层,不然没有意义)
mount -t overlay overlay -o lowerdir=/lower1:/lower2:/lower3... /mount_point
覆盖方式lower1>lower2>lower3
可读写方式挂载
mount -t overlay overlay -o lowerdir=/lower1:/lower2...,upperdir=/upperdir,workdir=/workdir /mount_point
upperdir和workdir必须有可读写的权限,loverdir没有要求。
workdir 听说是用来保证原子性,
对 mount_point 的修改都会在 upperdir 中体现,清空 upperdir 可以复原修改。
可以通过下面命令查看挂载失败的原因
dmesg | tail
参考链接:
https://blog.csdn.net/luckyapple1028/article/details/78075358
linux挂载内存盘
sudo mount -o size=100m -t tmpfs tmpfs /ramdisk
sudo umount /ramdisk
git忽略文件权限
chmod后导致文件显示有修改,可以通过关闭文件权限检查来忽略
git config core.filemode false
git config --global core.filemode false