1 进程是什么?
对于用户来说,进程就是正在打开的应用,也就是正在运行的程序
对于操作系统来说,经常就是对一个程序运行状态的描述信息
2进程存在的价值(作用)
一个程序要想在操作系统上运行,必须先加载到内存中,然后等CPU来光顾(分配资源). 因为操作系统上运行的程序有多个,都等着操作系统分配资源,要想得到CPU的资源必须先接受操作系统的的管理. 要实现管理就必须先对这些程序进行描述,先描述再管理.这种对程序运行状态的信息就是进程.描述信息称为PCB(进程控制块)
我们要运行的程序存在磁盘中,存储在磁盘中的程序是没有灵魂的,就是一堆死代码堆在那,只有当它被加载到内存中,各种运行环境就绪时,它才有了灵魂, 每当我们运行一个程序时,操作系统就会为它创建一个进程(PCB),描述它的运行信息,然后就乖乖地等着CPU的宠幸 .
3 PCB 中都描述了什么
内存指针(程序地址空间) 上下文数据 程序计数器(保存代码上次运行位置) 进程优先级(游戏)
记账信息(流水账) IO信息 标识符 进程状态
4 如何创建一个进程
每当运行一个程序时,操作系统会调用fork接口,通过复制父进程来创建一个子进程,
如果创建成功,父进程会受到子进程的ID,子进程会受到0;失败就返回-1;
5 如何查看一个进程
1 ps -ef ps -aux pid_t getpid(void) /proc/
6创建进程的意义是什么
为了分担任务处理压力,让子进程为父进程背锅(处理任务存在风险)
一旦创建子进程成功,它就有资格得到CPU的宠幸,得到了CPU的 宠幸 CPU就会给他分配时间片 帮他干活,处理任务.因此我们可以通过创建子进程来向CPU多要一点点时间片来给我们干活.
7关于CPU大佬的秘密
CPU 分时处理机制: 对程序运行进行轮询调度处理,目的就是让所有的程序都能同时推进
由于CPU与其他PC资源之间速度的不协调,人们想提高资源利用率,所以人们提出了多任务系统。得益于CPU的计算速度,我们可以“同时”运行多个任务,实质上是多个任务之间轮流使用CPU资源,由于速度超快,给用户的感觉就是连续的。
时间片: CPU在每个程序上所运行的时间段