并发性(Concurrence)
并行性和并发性是既相似又有区别的两个概念,
并行性是指两个或多个事件在同一时刻发生;
而并发性是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,
并发性是指在一段时间内,宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。倘若在计算机系统中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可同时执行。
共享(Sharing)
在操作系统环境下,所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。由于资源属性的不同,进程对资源共享的方式也不同,目前主要有以下两种资源共享方式:
引用
1. 互斥共享方式
系统中的某些资源,如打印机,磁带机,虽然它们可以提供给多个进程(线程)使用,但为使所打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程(线程)
访问该资。为此,当一个进程A要访问某资源时,必须先提出请求,如果此时该资源空闲,系统便可将之分配给请求进程A使用,此后若再有其它进程也要访问该资源时(只要A未完成)则必须等待,直到A进程释放,才允许另一个进程访问该资源。我们把这种资源共享方式称为互斥式共享,而把一段时间内只允许一个进程访问的资源称为临界资源或独占资源。计算机系统中的大多数物理设备,以及某些软件中所用的栈、变量和表格,都属于临界资源,它们要求被互斥地共享。
2. 同时访问方式
系统中还有另一类资源,允许在一段时间内由多个进程"同时"对它们进行访问。这里所谓的"同时"往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问。典型的可供多个进程"同时"访问的资源是磁盘设备,一些重入编码的文件,也可以被"同时共享",即若干个用户同时访问该文件。
并发和共享是操作系统的两个最基本的特征,它们又是互为存在的条件。一方面,资源共享是以程序(进程)的并发执行为条件的,若系统不允许程序并发执行,自然不存在资源共享问题;另一方面,若系统不能对资源共享实施有效管理, 协调好诸进程对共享资源的访问,也必然影响到程序并发执行的程度,甚至根本无法并发执行。
虚拟(Virtual)
操作系统中的所谓"虚拟",是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的,即实际存在的,而后者是虚的,是用户感觉上的东西。相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、虚拟外部设备和虚拟信道等。
在虚拟出来技术中,是通过多道程序设计技术,让多道程序并发执行的方法,来分时使用一台处理机的。此时,虽然只有一台处理机,但它能同时为多个用户服务,使每个终端用户都认为是有一个CPU在专门为他服务,利用多道程序设计技术,把一台物理上的CPU虚拟为多台逻辑上的CPU,也称为虚拟处理机,我们把用户所感觉的CPU称为虚拟处理器。
类似地,可以通过虚拟存储器技术,将一台机器的物理存储器变为虚拟存储器,以便从逻辑上来扩充存储器的容量。此时,虽然物理内存的容量可能不大,但它可以运行比它大得多的用户程序。这使用户所感觉到的内存容量比实际内存容量大得多。
我们还可以通过虚拟设备技术,将一台物理I/O设备虚拟为多台逻辑上的I/O设备,并允许每个用户占用一台逻辑上的I/O设备,这样便可使原来仅允许在一段时间内由一个用户访问的设备(即临界资源),变为在一段时间内允许多个用户同时访问的共享设备。例如,原来的打印机属于临界资源,而通过虚拟设备技术,可以把它变为多台逻辑上的打印机,供多个用户“同时”打印。此外,也可以把一条物理信道虚拟为多条逻辑信道(虚信道)。在操作系统中,虚拟的实现主要是通过分时使用的方法。显然,如果n是某物理设备所对应的虚拟的逻辑设备数,则虚拟设备的平均速度必然是物理设备速度的1/n
异步性(Asynchronism)
在多道程序环境下,允许多个进程并发执行, 但只有进程在获得所需的资源后方能执行。在单处理机环境下,由于系统中只有一个处理机,因而每次只允许一个进程执行,其余进程只能等待。当正在执行的进程提出某种资源要求时,如打印请求,而此时打印机正在为其它某进程打印,由于打印机属于临界资源,因此正在执行的进程必须等待,且放弃处理机,直到打印机空闲,并再次把处理机分配给该进程时,该进程方能继续执行。可见,由于资源等因素的限制,使进程的执行通常都不是“一气呵成”,而是以“停停走走”的方式运行。
内存中的每个进程在何时能获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需多少时间才能完成,等等,都是不可预知的。由于各用户程序性能的不同,比如,有的侧重于计算而较少需要I/O;而又有的程序其计算少而I/O多,这样,很可能是先进入内存的作业后完成; 而后进入内存的作业先完成。或者说,进程是以人们不可预知的速度向前推进,此即进程的异步性。尽管如此,但只要运行环境相同,作业经多次运行,都会获得完全相同的结果。因此,异步运行方式是允许的,是操作系统的一个重要特征
分享到:
相关推荐
计算机操作系统基本概念集合 以下是对计算机操作系统基本概念的总结和解释: 一、操作系统的基本概念 操作系统是计算机系统中的基础软件,提供了三种类型的使用接口:命令方式、系统调用和图形用户界面。操作系统...
本主题将深入探讨现代操作系统两大基本特征:并发性和虚拟化,同时聚焦于Windows Vista及之后的版本,以及最新的Linux和Unix操作系统。 **并发性** 并发性是现代操作系统的关键特性之一,它允许多个任务在同一时间...
本文将深入解析操作系统的基本概念,包括其定义、功能、特性以及存储器管理的关键技术,旨在帮助读者建立一个全面且深刻的理解。 ### 操作系统的定义 操作系统是控制和管理计算机硬件和软件资源,合理组织计算机...
7. 操作系统的四个基本特征之间的关系:并发性、共享性、虚拟性、不确定性四个特征之间存在着紧密的关系,共同构成了操作系统的基本特性。 8. 操作系统的发展方向:操作系统的发展方向是朝着更加智能、更加高效、...
操作系统层是操作系统的核心部分,负责管理硬件资源,提供基本的操作系统功能。应用程序层是操作系统提供给应用程序的接口,负责提供应用程序的功能给用户。用户层是操作系统提供给用户的接口,负责提供用户友好的...
### 计算机操作系统基本特性 操作系统具有不确定性、虚拟性、共享性和并发性的基本特性。这些特性使得操作系统能够有效地管理和分配计算机资源,支持多任务同时运行,提高系统的整体效率。 ### 操作系统的分类 ...
二、操作系统基本特征 操作系统的四个基本特征是并发、共享、虚拟和异步。并发指的是系统中的多个事件在同一时间间隔内发生;共享是指多个进程共享系统资源;虚拟是通过某种技术将一个物理实体映射为若干个逻辑实体...
例如,学生会被要求思考分时系统和实时系统的差异,理解操作系统基本特征之间的关系,以及运用信号量解决进程互斥和同步问题。 通过这一系列的教学活动,学生将能够全面理解操作系统的核心原理,为后续深入学习操作...
#### 四、操作系统基本特征 1. **并发性**: - 并发是操作系统最重要的特征之一,它允许多个进程在同一时间间隔内并发执行,从而提高系统整体性能。 2. **共享**: - 系统资源可以被多个并发执行的进程共享使用。...
操作系统的基本知识涵盖了多个方面,包括其目标、作用、发展历程、主要特征以及核心功能。 操作系统的主要目标是有效性(提高资源利用率和系统吞吐量)和方便性,同时兼顾可扩充性和开放性。操作系统作为用户与硬件...
"计算机操作系统基本概念总结" 本文涵盖了计算机操作系统的基本概念,包括操作系统概述、进程管理、内存管理、文件管理和输入/输出(I/O)管理等。 一、操作系统概述 操作系统是指控制和管理整个计算机系统的硬件...
综上所述,南京航空航天大学的操作系统复习笔记详尽地介绍了操作系统的基本概念和核心特性,对于学习者来说是一份宝贵的参考资料,有助于理解操作系统的工作原理及其在计算机系统中的重要角色。
现代操作系统的基本特性包括并发性、共享性、异步性。并发性是指对有效的物理资源进行强行复用,供多用户共享以提高效率。共享性是指使计算机系统中的资源可以被多个并发执行的程序共同使用。异步性是指允许多个程序...
操作系统的四个基本特征分别是并发性、共享性、随机性和持久性。并发性指的是在计算机系统中可以有多个程序同时存在并执行。共享性指的是系统资源可以被多个进程共同访问,比如文件、打印设备等。随机性是指操作系统...
一、操作系统基本概念 * 操作系统是一种系统软件,它管理计算机硬件资源,提供了一个.between用户程序和计算机硬件之间的接口。 * 计算机系统的组成包括计算机硬件和计算机软件。 * 计算机软件分为系统软件和应用...
计算机操作系统2010级期末复习题及答案(西邮计科专业)解析 本资源是西邮计科专业的计算机操作系统2010级...操作系统基本特征包括并发、共享、虚拟、异步性等。其中并发与共享是最基本的,相辅相成,互为依存条件。
操作系统的主要特征包括多路性、交互性、独立性和时效性。多路性是指操作系统可以同时供多个用户使用,每个用户可以在自己的终端上使用计算机资源。交互性是指操作系统可以实时地响应用户的请求,提供了一个交互式的...
操作系统是计算机系统的核心组成部分,它的主要目标是提供方便性、有效性、可...这些知识点涵盖了操作系统的基本概念、分类、功能和系统架构,以及处理器与内存的工作原理,对于理解操作系统的基础和核心概念至关重要。
#### 二、操作系统基本特征 **并发**:允许多个程序同时执行,提高系统效率。 **共享**:资源可以在多个程序或用户间共享,减少资源浪费。 **异步性**:程序执行的不确定性和非连续性,取决于系统调度和外部事件...