赠药山高僧惟俨二首
赠药山高僧惟俨二首
[唐] 李翱
(其一)
练得身形似鹤形,千株松下两函经。
我来问道无馀说,云在青天水在瓶。
(其二)
选得幽居惬野情,终年无送亦无迎。
有时直上孤峰顶,月下披云啸一声。
桃花庵歌
桃花庵歌
[明] 唐寅
桃花坞里桃花庵,桃花庵里桃花仙。
桃花仙人种桃树,又折花枝当酒钱。
酒醒只在花前坐,酒醉还须花下眠。
花前花后日复日,酒醉酒醒年复年。
不愿鞠躬车马前,但愿老死花酒间。
车尘马足贵者趣,酒盏花枝贫者缘。
若将富贵比贫贱,一在平地一在天。
若将贫贱比车马,他得驱驰我得闲。
世人笑我忒疯颠,我咲世人看不穿。
记得五陵豪杰墓,无酒无花锄作田。
自遣
自遣
[唐] 李群玉
翻覆升沉百岁中,前途一半已成空。
浮生暂寄梦中梦,世事如闻风里风。
修竹万竿资阒寂,古书千卷要穷通。
一壶浊酒暄和景,谁会陶然失马翁。
赠卫八处士
赠卫八处士
[唐] 杜甫
人生不相见,动如参与商。
今夕复何夕,共此灯烛光。
少壮能几时,鬓发各已苍。
访旧半为鬼,惊呼热中肠。
焉知二十载,重上君子堂。
昔别君未婚,儿女忽成行。
怡然敬父执,问我来何方。
问答乃未已,驱儿罗酒浆。
夜雨剪春韭,新炊间黄粱。
主称会面难,一举累十觞。
十觞亦不醉,感子故意长。
明日隔山岳,世事两茫茫。
Linux ps常用命令
1. 查看所有进程1$ ps aux
2. 查看进程启动时间1$ ps -eo pid,lstart,cmd
题临安山水
题临安山水
[金] 完颜亮
万里车书一混同,江南岂有别疆封?
提兵百万西湖上,立马吴山第一峰!
Linux GDB 常用命令
1. 编译注意:
不要使用优化(即使用-O0选项)
带上调试信息(即使用-g选项)
-g的调试信息级别是2,使用-g3会带上额外调试信息(如关于宏的)
总而言之,最好使用-g3 -O0
2. help system2.1 help命令help缩写为h
help <command> 输出某个命令的全部文档
2.2 apropos命令apropos [-v] <regexp>遍历所有命令、别名和文档查找<regexp>的匹配
2.3 其他complete <args>输出<args>所有可能的命令补全结果
info命令用于获取正在调试的程序的状态信息
show命令用于获取GDB本身的状态信息
3. 启动GDB3.1 正常启动直接指定二进制文件,例如gdb myprogram
或者先不带参数启动GDB再用file命令加载,例如
1234$ gdb(gdb) file myprogramReading symbols from myprogram...(gdb)
inferior在GDB里基本等同于进程,它可以包含多个线 ...
Linux tmux命令常见用法
1. 简介终端复用器,terminal multiplexer的简称。
将终端和终端里运行的命令解绑。
2. 常用命令2.1 新建会话
tmux new : 创建会话,会话名默认为编号:0,1,2…
tmux new -s <session-name>: 创建会话并指定会话名
2.2 分离会话Ctrl+b d或者tmux detach
2.3 接入会话tmux attach -t <session-name>
2.4 切换会话tmux switch -t <session-name>
2.5 重命名会话tmux rename-session -t <old-session-name> <new-session-name>
2.6 查看会话tmux ls
memory sanitizer
1. 简介MemorySanitizer简称msan,用于发现C/C++程序中对未初始化内存的读取。
msan是比特精度的。
msan的功能是Valgrind功能的子集,但运行速度更快。
msan使用stderr打印错误报告
msan发现错误即报告,而不是等到程序即将结束时统一报告
msan发现如下bug并报告warning:
在条件分支中使用未初始化的值。
使用未初始化的指针进行内存访问。
函数返回未初始化的值(这是未定义行为,可以使用-fno-sanitize-memory-param-retval来disable这项检查)。
传递未初始化数据到一些libc函数中。
2. 使用方法2.1 常用使用方法
使用clang编译器
使用编译选项-fsanitize=memory -fPIE -pie -fno-omit-frame-pointer -g
默认错误报告是fatal的,即发现并报告第一个错误后就退出,如需发现多个错误需使用编译选项-fsanitize-recover=memory
例如如下程序a.cc:
12345678910111213#incl ...
sanitizer工具
1. Sanitizer系列简介中文直译:sanity n. 神志正常,精神健全sanitize v. 消毒sanitizer n. 消毒剂
2. 包含的工具2.1 AddressSanitizer用于发现C/C++程序中的内存错误,比如use-after-free和{heap,stack,global}-buffer overflow。
2.2 LeakSanitizer用于发现内存泄漏,已被集成到AddressSanitizer中。
2.3 ThreadSanitizer用于发现C/C++和Go程序中的数据竞争(data race)。
2.4 MemorySanitizer用于发现未初始化内存的使用。
3. 注意
并不是一定能检测出所有的bug ! ! !
asan/tsan/msan在同一个程序中最多使用一个
4. 参考文献
https://github.com/google/sanitizers/wiki
https://clang.llvm.org/docs/UsersManual.html#cmdoption-f-no-san ...
