程序
程序是一个可执行文件,它被存储在硬盘上,运行时被调入内存。
进程与进程ID
程序的执行实例叫做进程。有些操作系统称为任务。Unix保证每个进程都有一个唯一的数字标识符,称为进程ID,这个数字是非负的。
进程控制
三个基本的进程控制函数:fork,exec,waitpid
线程和线程ID
默认情况下,一个进程只有一个线程,然而一些问题需要多线程才能解决,每个线程处理问题的一部分,另外,多线程控制能再多处理器系统中更好的解决并行问题。
一个进程中所有的线程共享同样的地址空间、文件描述符、栈和进程相关的属性。由于它们能够访问相同的内存,线程要同步访问资源的同时还要避免冲突。
进程和线程都要用ID标识,线程的ID相对于所属进程,进程A中的一个线程ID在进程B中毫无意义,我们用线程ID标志一个进程中的线程,在这个线程刚刚生成时就被分配一个ID。