Linux是一个多用户多任务的操作系统,多用户是指多个用户可以在同一时间使用计算机;多任务是指Linux可以同时执行几个任务,可以在还未执行完一个任务时又执行另一个任务。进程简单的讲就是运行中的程序(进程是动态的,程序是静态的)。根据操作系统的定义:进程是操作系统资源管理的最小单位。
1. 进程概念:
进程是一个动态的实体,是程序的一次执行过程。进程是操作系统资源分配的基本单位。要掌握进程的概念就要与程序和线程两个概念区别开。进程和程序的区别在于进程是动态的,程序是静态的;进程是运行中的程序,程序是一些保存在硬盘上可执行的代码。为了让计算机在同一时间内执行更多的任务,在进程内部又划分了许多线程。线程在进程内部,它是比进程更小的能独立运行的基本单位。线程基本上不拥有系统资源,它与同属一个进程的其他线程共享进程拥有的全部资源。进程在执行过程中拥有独立的内存单元,其内部的线程共享这些内存。一个线程可以创建和撤销另一个线程,同一个进程中的多个线程可以并行执行。
在Linux下可以通过命令ps 或pstree查看当前系统中的进程。
2进程标识:
Linux操作系统中,每个进程都是通过唯一的进程ID 标识的。进程ID 是一个非负数。每个进程除了进程ID 外还有一些其他的标识信息,可以通过对应的函数获得。这些函数声明在 unistd.h头文件中。