1. 进程的概念:一个具有独立功能的程序的一次运行。
程序的概念:存放在存储器中的一段代码
2. 进程的特点:动态性、并发性、独立性、异步性
3. 进程的状态:
4. 进程的ID(PID):标示进程的唯一数字
父进程ID(PPID) 启动进程的用户ID(UID)
5. 进程的互斥
当有若干进程都要使用某一资源时,因一个资源在同一时间只允许一个进程使用,这时,其他进程必须等待,知道该临界资源被释放。
临界资源:操作系统中,将同一时刻只允许一个进程访问的资源。
临界区:进程中访问临界资源的那段程序代码。(为实现对临界资源的互斥访问,应保证进程互斥地进入各自的临界区)
6. 进程的同步
一组进程,按照一定的顺序执行的过程。具有同步关系的这组进程成为合作进程(如生产者消费者)
7. 进程的调度
按照一定的算法,从一组待运行的进程中选一个出来占有CPU运行。
8. 调度的算法,分为抢占式和非抢占式,如:先来先服务、短进程优先调度、高优先级优先调度、时间片轮转发。
9. 死锁,多个进程因竞争资源而形成的僵局,导致这些进程无法继续执行。
10. 函数学习——获取进程ID
函数名:
getpid
函数原型:
pid_t getpid ( void );
函数功能:
返回调用该函数的进程ID
所属头文件:
<sys/types.h> <unistd.h>
返回值:
成功:返回调用该函数进程的PID 失败:没
参数说明:
void
范例代码:
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
int main(int argc, char ** argv)
{
int id = 0;
id = getpid();
printf("PID is %d\n", id);
return 0;
}