程序员人生 网站导航

软考之进程,线程,管程比较

栏目:互联网时间:2014-11-26 08:12:23

在操作系统中,遇到了3兄弟,看起来好像,晕了好长时间,在今天把他大概能弄明白了,故此把这篇文章献给还在迷茫在他们3兄弟之间的你们!由于他们都有1个程字,所以我们在学习的在刚刚学习的时候难免会把他们弄混,由于应用本来对操作系统不能理解很透彻的我们来解释这3个兄弟确切难了点,所以我们就用之前的知识来举例说明。

概念比较

进程:是操作系统结构的基础,是1次程序的履行,是1个程序及其数据在处理机上顺序履行时所产生的活动。

线程:把进程程作为分配资源的,而把线程作为独立运行和独立调度的基本单位。线程可以创建和撤销线程,从而实现程序的并发履行。1般,线程具有就绪、阻塞和运行3种基本状态。

管程:管程定义了1个数据结构和能为并发进程所履行的1组操作,这组操作能同步进程和改变管程中的数据。

形象比较

进程和线程

大家都上过体育课,如果1个体育课就算是1个学校这个大系统的进程的画,那末线程就是体育课中的各个活动,有的人玩足球,有的人玩篮球,但是不论篮球课,还是体育课,他们都是体育课的1部份,他们也就是线程,是线程的组成部份。
1、这些线程(各种活动)同享者这个进程的资源(操场),而且线程(活动)必须依赖于进程,离开以后就没有存在的意义了(由于逃课是不对的)。
2、这些线程可以同步履行,1个进程(体育课),线程(体育活动)可以在1节课上,固然也能够你先上篮球课,我后玩足球,他们并没有具体的时间性限制。
3、他们依托代码来控制逻辑顺序,不能中途插入1个线程(活动),而是靠代码逻辑(学校的上下课铃声或老师)来控制的,1旦代码出现有误(学校设施有误),那末这个线程势必堕入1片混乱。
4、对体育课这个进程,线程(体育活动)是未知的,只有在学校在开学的时候分配好的时候才能肯定谁先进行甚么课程。

管程

管程定义了1个数据结构和能为并发进程所履行的1组操作,这组操作能同步进程和改变管程中的数据管程定义了1个数据结构和能为并发进程所履行的1组操作,这组操作能同步进程和改变管程中的数据

而管程就像是我们上体育课的器材保管室,如果那个进程需要访问资源(体育器材),都需要先通过管程(器材室)来索要资源(体育器材),毕竟东西是有限的,需要公道分配,根据情况的不同来进行分配。

小结

这知识我对这3个的理解,线程<进程,或线程包括于进程,而管程又控制了进程的之心顺序,谁有资源谁就可以运行,而线程则是让我们的进程履行的更有效力,我们总不能让1个学校的学生1起在操场各玩各的,这个貌似太乱了。
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐