| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 操作系统-二、操作系统特征 -> 正文阅读 |
|
[系统运维]操作系统-二、操作系统特征 |
操作系统是一种系统软件,但与其他的系统软件和应用软件有很大的不同,它有自己的特殊性即基本特征。操作系统的基本特征包括并发、共享、虚拟和异步。这些概念对理解和掌握操作系统的核心至关重要。 1、并发(Concurrence) 并发是指两个以上的事件在同一时间间隔内发生。操作系统的并发性,是指计算机中同时运行着多个程序,因此操作系统具有同时处理和调度多个程序同时运行的能力。所以,在这里引入进程这个概念,进程的目的就是为了让程序并发执行。 这里需要注意,并发是同一时间间隔,而并行是同一时刻,两者是不一样的。当计算机中有多道程序在运行时,宏观上一段时间内有多道程序在同时运行,某一时刻单处理机环境下只有一道程序在运行,故微观上,这些程序并没有同时进行,而是分时进行。操作系统的并发性,就是通过分时实现的。而并行性,是指系统具有同时运算的特性,在同一时刻完成多种工作,这需要有相关硬件的支持,如多流水线(多处理机)环境。 2.共享(Sharing) 即资源共享,是指系统中的资源可供内存中多个并发运行的进程共同使用。共享可以分为两种方式。 1)互斥共享方式 系统中的某些资源,如打印机,磁带机,虽然它们可以提供给多个进程使用,但为避免打印或记录的结果混淆,应规定在一段时间内,只允许一个进程访问该资源。 为此,当进程A访问某资源时,必须提出请求,如果此时该资源空闲,系统便可将之分配给进程A使用;此后若有其他资源要访问该资源,只要A未用完,则必须等待。只有当进程A访问完并释放该资源后,才允许另一资源对其进行访问。这种共享资源的方式叫做互斥共享,而这种一段时间内只允许一个进程访问的资源称为临界资源或独占资源。 计算机中的大多数硬件设备,和某些软件中使用的栈、变量、表格,都是临界资源;都要求被互斥的共享。 2)同时访问方式 系统中还有另一类资源,允许在一段时间内,让多个进程同时对它们进行访问,这里的同时,是宏观上的,而在微观上,这些进程可能是交替的对该资源进行访问,即“分时共享”。典型的可供多个进程“同时”访问的资源是磁盘设备;一些用重入码编写的文件也可以被“同时”共享;即若干个用户同时访问该文件。 并发和共享是操作系统两个最基本的特征;这两者之间又是互为存在条件的。资源共享是以程序的并发为条件的,若系统不允许程序并发,则就不存在资源共享问题;若系统不能对资源共享实施有效的管理,也会影响程序的并发执行,甚至根本无法并发执行。 3.虚拟(Virtual) 虚拟是指把一个物理上的实体,变成若干个逻辑上的对应物。物理实体是实在存在的,而逻辑上的对应物是虚拟的,是用户感觉上的产物。 用于实现虚拟的技术,称为虚拟技术。在操作系统中,就用了多种虚拟技术,用来实现虚拟处理机、虚拟内存、虚拟外部设备等等。 在虚拟处理机技术中,是通过多道程序设计技术,让多道程序并发执行,分时地使用一个处理器。此时,虽然只有一个处理器,但却同时为多个用户服务,所以每个用户感觉都有一个中央处理器在为它专门服务。利用多道程序设计技术,把一个物理上的CPU,虚拟为多个逻辑上的CPU,称这个虚拟的CPU为虚拟处理机。 类似的,可以通过虚拟存储器技术,将计算机的物理存储器变为虚拟存储器,以便从逻辑上来扩展存储器的容量。此时,用户感觉到的内存容量是虚拟的,我们把用户感觉到的存储器(实际是不存在的)称为虚拟存储器。 还可以通过虚拟设备技术,将一台物理上的IO设备虚拟为多台逻辑上的IO设备,并允许每个用户占用一台逻辑上的IO设备。这样便可以使原来仅允许一段时间内由一个用户访问的设备(临界资源),变成一段时间内由多个用户访问的虚拟设备(共享资源)。 因此,操作系统的虚拟技术,可归纳为:时分复用技术(如处理器的分时共享);空分复用技术(如虚拟存储器) 4.异步(Asynchronism) 在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程一旦执行了并不是一直执行到结束,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。 异步性使得操作系统运行在一种随机的环境下,可能导致进程产生与时间有关的错误,类似对全局变量的访问顺序不当,会导致程序出错一样,但是只要运行环境相同,操作系统必须保证多次运行进程,都获得相同的结果。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/27 11:13:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |