1、进程状态:就绪、执行、阻塞
进程互斥:同时只允许一个进程访问
临界资源:一次只允许一个进程访问的资源
临界区域:访问临界资源的那段程序代码
进程调度:从呆运行的进程中选出一个占用CPU
调度方式:1、抢占式;2:非抢占式
1.1获取本进程ID:pid_t getpid(void)(文件编程)
1.2获取父进程(创建本进程的进程)ID:id_t getppid(void)
1.3创建子进程:pid_t fork(void) 子进程拷贝父进程的数据段,父、子进程的执行顺序不确定,返回0代表子进程
1.4创建子进程:pid_t vfork(void) 子进程与父进程共享数据段,子进程优先运行
1.5替换原有进程:exec(进程pid不变)
int execl(cont char *path,const char *arg1,....) 参数2:执行程序所需的命令行参数,以空指针(NULL)或0结束
2、线程特点:进程有独立的地址空间,线程没有;线程不能单独存在,由进程创建;相对进程,线程消耗的CPU小。
3、静态查看进程:ps
ps -aux 查看进程的详细信息
4、终止进程:kill
eg:kill 1777(代表进程号或端口号),有些进程有关联进程,kill杀不掉,需要用kill -9 1777
kill all 杀掉进程和此进程的子进程
5、动态查看进程:top
eg:top d 10 配置10s更新一次
6、u 监视特定用户
1号进程是所有进程的父进程
load average 当前系统的负载情况,idle越大,说明cpu剩余的资源越多
zombie 僵尸进程(进程没有被回收)数
设置系统时间:date MMDDHHMMCCYY.SS:月日小时分年.秒
查看月历:cal
eg:cal 3 2002 查看2002年3月份的月历 cal 2002 查看2002的所有月的月历