1、并行性和并发性:
在OS的基本特征中提到了重要的一个特性:并发性。
并发行是指两个或者更多个事件在同一时间间隔内发生;而并行性是指两个或者更多个事件在同一时刻发生。
在单处理机系统中,每一时刻仅能有一道程序执行,因此宏观上同时运行的多个程序,微观上只是分时地交替运行--即并发执行;而在多处理机系统中,可以将这些程序分配到不同的处理机上,从而可以实现并行执行。
2、程序和进程
通常的程序是静态实体,它们是不能并发执行的。而使多个程序能够并发执行,系统必须分别为每个程序建立进程。
进程是指在系统中能够独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个活动实体。多个进程之间可以并发执行和交换信息。一个进程在运行时需要一定的资源,如CPU、存储空间和I/O等。
在操作系统中引入进程的目的,是使多个程序能并发执行。
进程和并发是现代OS中最重要的基本概念,也是OS运行的基础。
注意:程序是不能并发执行的,而只有进程是能够并发执行的。
3、进程和线程
长期以来,进程都是OS中可以拥有资源和作为独立运行的基本单位。直到80年代中期,人们才又提出了比进程更小的单位--线程。通常在一个进程中,包含了若干个线程。
在引入线程的OS中,通常都把进程作为分配资源的基本单位,而把线程作为独立运行的基本单位。
由于线程比进程小,基本上不拥有系统资源,因此它运行起来更轻松,能更好地提高系统中多个程序之间的并发执行的程度。
4、临界资源(独占资源)
在OS中,进程对资源的共享方式有两种:互斥式共享、同时访问。
在互斥式共享中,把在一段时间内只允许一个进程访问的资源称为临界资源或者独占资源。计算机系统中大多数物理设备,以及某些软件中多用的栈、变量和表格,都属于临界资源,它们要求被互斥地共享。
而在同时共享中,“同时”往往是宏观上的,而在微观上,多个进程可能是交替地对该资源进行访问。典型的可供多个进程同时访问的资源是磁盘设备,一些用重入码编写的文件,也可以被“同时”共享。
5、虚拟
OS中的所谓“虚拟:是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体是实的,是实际存在的,而后者是虚的,是用户感觉到的。
用于实现虚拟的技术,称为虚拟技术。在OS中使用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、虚拟外部设备和虚拟信道等。
在OS中,虚拟的实现主要是通过分时使用的方法。
6、进程的异步性
内存中的每个进程在何时能够获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需要多少时间才能完成等等,都是不可预知的。由于用户程序性能的不同,有的偏重于计算而较少需要I/O,而有的程序计算少而I/O多,这样很可能先进入内存的作业后完成,后进入的作业可能先完成。
进程是以人们不可预知的速度向前推进,此即进程的异步性。随然如此,但只要运行环境相同,作业重复运行的结果是完全相同的,因此,异步运行方式是允许的。
7、进程的阻塞和挂起状态的区别:
教科书上的定义:
正在执行的进程由于发生某事件而暂时无法继续执行时,并放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态。导致进程阻塞的事件有:I/O请求、申请缓冲空间等。
挂起状态的概念不明确。
阅读(1894) | 评论(0) | 转发(0) |