磁盘相关命令
一、查看硬盘信息相关命令
df 命令只能显示系统已经挂载的硬盘
lsblk 查看块设备。
不带参数时会列出所有硬盘,根节点代表硬盘,二级节点代表磁盘上的分区。使用 -d 选项只列出硬盘,不列出分区信息
ln 的手册为 ln [option]... TARGET LINK_NAME
可以这么理解,我们正在创建一个到 TARGET 的符号链接,我们将其称为 LINK_NAME
如下演示符号链接级别过多的错误
1 | 1. 如下,我们有这样的目录结构 |
理解OOM机制: https://www.zhihu.com/question/21972130
oom_killer(out of memory killer)是Linux内核的一种内存管理机制,在系统可用内存较少的情况下,内核为保证系统还能够继续运行下去,会选择杀掉一些进程释放掉一些内存。通常oom_killer的触发流程是:
进程A想要分配物理内存(通常是当进程真正去读写一块内核已经“分配”给它的内存)->触发缺页异常->内核去分配物理内存->物理内存不够了,触发OOM
功能:当一个进程拿内核已经分配给自己的内存时,系统发现没有物理内存了。于是各处去找,找不到那就找一个最合适的进程删掉,释放些内存,如果找不到这个进程,那么系统自杀。
1 | int pthread_once(pthread_once_t *once_control, void (*init_routine) (void)); |
Linux Threads使用互斥锁和条件变量保证由pthread_once()指定的函数执行且仅执行一次,而once_control表示是否执行过。
如果once_control的初值不是PTHREAD_ONCE_INIT(Linux Threads定义为0),pthread_once() 的行为就会不正常。
在LinuxThreads中,实际”一次性函数”的执行状态有三种:NEVER(0)、IN_PROGRESS(1)、DONE(2),如果once初值设为1,则由于所有pthread_once()都必须等待其中一个激发”已执行一次”信号,因此所有pthread_once ()都会陷入永久的等待中;如果设为2,则表示该函数已执行过一次,从而所有pthread_once()都会立即返回0。
linux 下面查看内存状态可以使用 free 命令,但是如果不了解 linux 内存管理机制的话,对输出也会摸不着头脑,这篇文章就说明一下各个数据的意思。
下面是我电脑上虚拟机,直接使用 free 命令的数据结果。
vagrant@precise64:~$ free total used free shared buffers cached Mem: 374256 330952 43304 0 14400 238128 -/+ buffers/cache: 78424 295832 Swap: 786428 2224 784204
所有的数据默认都是 KB,第一行有六个值: