摘要:
什么是线程 注意: ps -Lf (进程名字)可以查看进程的线程 Linux内核实现线程的原理 首先先介绍一下三级页表: 线程创建 注意编译和链接的使用使用 -pthread表示引入线程库 /****************************************************** 阅读全文
摘要:
概念 多个进程组在一起就是一个会话 创建会话 创建会话不能是组长进程,父进程创建子进程之后就会变成组长进程了 getsid函数和setsid函数 守护进程 创建守护进程: 阅读全文
摘要:
信号的概念和机制 产生信号的方式 bg命令 :后台 fg命令:将后台执行恢复到前台 信号四要素和常规信号 常规信号一览表 kill函数和kill命令 alarm函数 一秒之后就会停下 setitimer函数 信号集操作函数 /************************************* 阅读全文
摘要:
存储映射IO mmap函数 ! 其中文件的大小是小于等于真实文件大小,一般是等于。 权限一般是shared,private的话不会反应到磁盘上。 offset,默认0表示文件全部, 必须是4k的整数倍。 mmap基本使用 /************************************** 阅读全文
摘要:
进程间通信方式 进程间之所以可以进行通信,是应为都在内核区,缓冲区的大小一般为4096字节 管道 管道使用函数 /************************************************************************* > File Name: pipe_t 阅读全文
摘要:
孤儿进程 ps -ajx可以查看进程的父进程 僵尸进程 也就是子进程死亡父进程不管,不回收子进程,它就会变成僵尸进程,此时不能用kill杀死僵尸进程,这种情况只能杀死父进程,然后自己进程被init进程领养被释放 wait回收子进程 成功的话返回子进程进程id 通过下面的宏函数可以获取状态: 测试,使 阅读全文
摘要:
execlp man execl: execl 执行ls 使用ps aux将数据写入一个文件中 使用dup2标准输出导入文件,标准输出会输出ps aux,再导入文件 阅读全文
摘要:
原理 返回的值:父进程返回子进程PID,子进程返回0(类似成功创建的意思) fork基本代码 /************************************************************************* > File Name: fork_test.c > A 阅读全文
摘要:
MCU MMU是Memory Management Unit的缩写,中文名是内存管理单元,有时称作分页内存管理单元。 通过mmu可以将物理上不连续的内存映射到连续的虚拟地址上 内核映射到同一个物理地址上,所以进程间才可以有通信 MMU可以进行内存分级,Windows系统下有四级,Linux有两级,0 阅读全文
摘要:
dup和dup2 返回值是int的文件描述符,参数是已有的文件描述符 此时打印的文件描述符为4,使用这个文件描述符可以访问打开的文件,可以通过这个往新的文件描述符写,主只需把打开方式改成可读可写即可。 dup2: 注意两个指针指向一个文件 如上所示,串口输出重定向也是这个原理 fcntl实现dup 阅读全文