并发:是指一个时间段(宏观)中几个程序都在同一个处理机上运行,但是在具体的某一时刻(微观)该处理机只运行一个程序。
并行:并行是指多个程序同时在系统中运行。(其实就是运行在多个处理机上)。
同步:对于同处于一个系统的多个进程,由于它们共享系统中的资源,或者为完成某个人物而相互合作,所以用两种形式的制约关系:
1.互斥:间接相互制约关系。多个程序在并发执行时,由于共享资源,因此冰尜执行的之间形成相互制约的关系。
2同步:直接相互制约的关系。一些应用程序为了完成某个任务而建立两个或多个进程,这些进程相互合作。
例如:输入进程A,和计算进程B,他们共享一个缓冲区。进程A通过缓冲向进程B提供数据。进程B从缓冲区中取出数据进行处理。
3异步:例如读者-写者问题,读者去读,写者去写。他们之间不互相协同,就是异步。而同步则是,读者读好后告诉写者,你可以写操作了,直接对于缓存区的数据有一个协同的关系。