进程:
fork
exec函数族,注意调用后是替换而不是生成新的进程
信号:
signal
raise
kill
传统的signal是oneshot还是其它并不确定,posix signal可以用flag来设置,posix signal另一个地方是可以得到来源进程信息
poll:
poll和select类似,但不受文件描述符的限制
epoll在2.6内核作了很大优化,在文件描述符数量大的时候比poll性能更好,主要原因是避免了大量把fd结构从用户空间拷贝到内存空间的开销
posix sem:
sem_unlink即使在sem_close之前调用,sem还是可用的,直到最后一个sem_close
mmap:
mmap对比read和write有更高的性能,原因是避免了用户空间buffer拷贝到过程,在随机读写上有明显的优势。
mmap创建的大小如果和文件大小不一样,访问超出文件的位置时行为未定义。
mmap可以访问file hole
vi:
撤销全部修改,:e!
保存ZZ
鼠标左下上右移动,hjkl,用上下左右键也可以,但vi的目标是让手指尽量少移动,尽量在中心位置
移动一个单词, wWbB,w向前,b向后,大写的表示移动的时候忽略标点
行头和行尾0,$
删除d, dw删除一个单词,dd删除行,D删除光标到行结尾
y选中
p粘帖
c替换
/搜索
n下一个
N上一个
H最开头
L最末尾
ctrl+f向前翻页
ctrl+b向后翻页
G跳到某行