分类 技术与探索 下的文章 - kernel panic

技术与探索

openssl和libffi最高优化编译参数

https://github.com/libffi/libffi/releases/download/v3.4.2/libffi-3.4.2.tar.gz
CFLAGS="-Ofast -march=native" CXXFLAGS="-Ofast -march=native" LDFLAGS="-Ofast -march=native" ./configure -prefix=/usr/local/python3 -with-openssl=/usr/local/openssl --with-system-ffi --with-lto
export LD_LIBRARY_PATH=/usr/local/libffi:$LD_LIBRARY_PATH
echo "/usr/local/libffi/lib" >> /etc/ld.so.conf

export LIBFFI_CFLAGS=-I$HOME/menglingjun/software/libffi/lib/libffi-3.2.1/include
export LIBFFI_LIBS=$HOME/menglingjun/software/libffi/lib/libffi.la
export C_INCLUDE_PATH=$HOME/menglingjun/software/libffi/lib/libffi-3.2.1/include/
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$HOME/menglingjun/software/libffi/lib/pkgconfig

export PKG_CONFIG_PATH="/usr/local/libffi/lib/pkgconfig"
export LDFLAGS="-L/usr/local/libffi/lib"

使用memcpy来复制线性表

这个想法早在学《数据结构》时就做过了,不过时隔已久有些细节记不太清,今天看到在线性表插入元素,又想到了当年这个操作,不过比起当年有了更深入的认识,这是可能是所谓否定之否定吧。

传统方式

先弄个数组放线性表

using sqllist=struct{
    int *data;
    int length,maxsize;
};

然后初始化它:

sqllist *t=new sqllist;
t->data=new int[100];
memset(t->data,0,100);
t->maxsize=100;
t->length=90;
for(int i=0;i<t->length;i++)    t->data[i]=i+1;

无网条件下同步时间

这多少有点标题党了,指的是没有因特网或者UDP被阻断的情况下同步时间。
因为大多数HTTPS协议要用到TLS,时间差异太大会握手失败(timestamp is error),校园网在没登录时不能连接到NTP服务器同步时间,导致树莓派上很多服务'会谢'(entered failed state),经过摸索想到用Http中的字段来同步时间。


查看全文 »