并发简介
并发的定义
在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都
是在同一个处理机上运行,但是任一个时刻点上只有一个程序在处理机上运行。
并发环境下,由于程序的封闭性被打破,出现了新的特点:
1. 程序与计算不再一一对应,一个程序副本可以有多个计算;
2. 并发程序之间有相互制约关系:直接制约体现为一个程序需要另一个程序的计算结果,间接制约
体现为多个程序竞争某一资源,如处理机、缓冲区等;
3. 并发程序在执行中是走走停停,断续推进的。
和并行的区别与联系
并发性(Concurrence):指两个或两个以上的事件或活动在同一时间间隔内发生。
并行性(Parallelism):指两个或两个以上事件或活动在同一时刻发生。
• 两者的区别
并发和并行的区别就是
一个处理器同时处理多个任务
和
多个处理器(或者是多核的处理器)同时处
理多个不同的任务
。前者是
逻辑上
的同时发生,而后者是
物理上
的同时发生。
• 两者的联系
并行的事件或活动一定是并发的,但反之并发的事件或活动未必是并行的。
并行性是并发性的特例,而并发性是并行性的扩展。
表现形式
• 多进程并发
当客户有请求时 ,服务器用一个子进程来处理客户请求,父进程继续等待其它客户的请求。这种方
法的优点是当客户有请求时 ,服务器能及时处理客户 ,特别是在客户服务器交互系统中。对于一个 TCP
服务器 ,客户与服务器的连接可能并不马上关闭 ,可能会等到客户提交某些数据后再关闭 ,这段时间服
务器端的进程会阻塞 ,所以这时操作系统可能调度其它客户服务进程。
E-Mail : Mike_Zhang@live.com 1
评论0