操作系统的基本特性--并发、共享、虚拟、异步

批处理系统具有高资源利用率和系统吞吐量;分时系统能够获得及时响应;实时系统具有实时特征。而这三种系统都具有并发、共享、虚拟和异步四个基本特征

一、并发

OS通过并发提高系统中的资源利用率,增加系统的吞吐量

1.并行和并发

并行:两个或多个事件在同一时刻 发生

并发:两个或多个事件在同一时间间隔 内发生

在多道程序环境下,并发性是一段时间内宏观上有多个程序在同时执行。但在单处理系统中,每个时刻只有一个程序执行,所以微观上这些程序只能是分时的交替执行

比如:1s的时间内,0-15ms是程序A允许,15-30ms是程序B执行,30-45ms是程序C执行,45-60ms是程序D执行。因此在宏观1s的时间间隔上看,有四个程序在同时执行,即并行的;在微观1s内的时间上看A、B、C、D是分时交替执行的,即并发的

如果有多个处理机,则可以将并发的程序分配,使其变成并行执行

2.进程

在未引入进程概念的系统中,属于同一个应用程序的计算程序和IO程序只能顺序执行。如果为计算程序和IO程序分别建立一个进程,则可以并发执行

进程:在系统中能独立运行并作为资源分配的基本单位,由一组机器指令、数据和堆栈等组成,是一个能独立运行的活动实体

多个进程可以并发执行和交换信息

二、共享

操作系统下的共享指资源共享或资源复用,即系统中的资源可供内存中多个并发执行的进程共同使用

一般系统中的资源远少于多道程序需求的总和,因此程序会争夺共享资源。由OS进行资源共享管理

1.互斥共享方式

系统中诸如打印机等设备,可以共多个进程使用,但只允许一个进程访问资源。因此需要保证多个进程对此类资源的互斥访问

一个进程A请求一个资源,如果资源空闲则可以使用,如果有其他进程访问该资源,则必须等待进程A使用完毕。这种资源共享方式称为互斥式共享,把这种一段时间内只运行一个进程访问的资源,称为临界资源(或独占资源)

2.同时访问方式

诸如磁盘设备,允许多个进程同时访问资源。这里的同时在单处理机环境下是宏观的,在微观上的访问仍然是交替进行的

并发和共享式多用户OS的两个最基本特征。是互为存在的条件。即一方面资源共享是以进程的并发执行为条件的,系统如果不允许并发则不存在资源共享;另一方面,系统如果不能对资源共享有效管理,将会影响各进程的并发执行

三、虚拟

最早的虚拟计数是在通信系统中,用于提高通信信道的利用率,将一条物理信道划分为多条逻辑信道

OS中的虚拟指通过某种计数将一个物理实体变成若干个逻辑上的对应物

1.时分复用技术

时分复用技术可以提高资源利用率,在设备为用户服务的空闲时间,为其他用户服务

(1)虚拟处理机技术:利用多道程序设计技术,为每个程序建立至少一个进程,多个程序并发执行,在一台处理机下为多个用户服务。即将一台物理上的处理机虚拟为多台逻辑上的处理机,在每个逻辑处理机上运行一道程序,用户仅能感知到虚拟处理器

(2)虚拟设备技术:将一台物理IO设备虚拟为多台逻辑上的IO设备,允许每个用户占用一台逻辑上的IO设备

2. 空分复用技术

空分复用技术可以提高内存利用率,利用存储器的空闲空间分区域存放和运行其他的多道程序

单纯的空分复用存储器只能提高利用率,不能在逻辑上扩大存储器容量,需要使用虚拟存储技术。比如一个100MB的程序可以运行在30MB的内存空间上,本质上就是每次只把程序的一部分调入内存运行,完成后将该部分换出,换入另一部分。将用户程序的各个部分分时地进入内存运行

一个物理磁盘分卷为两个逻辑磁盘

四、异步

多道程序环境下,允许多个程序并发执行;单处理机环境下,多个程序分时交替执行;

进程的异步性进程一般是以不可预知的速度向前推进的,可能由于资源等因素限制,并不一次性执行。但多次运行获得的结果相同

宏观上“一气呵成”,微观上“停停走走”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/184655.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

11.7统一功能处理

一.登录拦截器 1.实现一个普通的类,实现HeadlerInterceptor接口,重写preHeadler方法. 2.将拦截器添加到配置中,并设定拦截规则. 二.访问前缀添加 方法1: 方法2:properties 三.统一异常处理 以上返回的是空指针异常,如果是别的异常就不会识别,建议加上最终异常 . 四.统一数据格…

Dockerfile-CentOS7.9+Python3.11.2

本文为CentOS7.9下安装Python3.11.2环境的Dockerfile # CentOS with Python3.11.2 # Author xxmail.com# build a new image with basic centos FROM centos:centos7.9.2009 # who is the author MAINTAINER xxmail.comRUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/…

2022年MathorCup高校数学建模挑战赛—大数据竞赛A题58到家家政服务订单分配问题求解全过程文档及程序

2022年MathorCup高校数学建模挑战赛—大数据竞赛 A题 58到家家政服务订单分配问题 原题再现: “58 到家”是“58 同城”旗下高品质、高效率的上门家政服务平台,平台向用户提供家政保洁、保姆、月嫂、搬家、维修等众多生活领域的服务。在家政保洁场景中…

App Inventor 2 文本转数字

App Inventor 2 是弱语言类型,文本和数字之间不用刻意去转换,之间赋值就可以了。文本赋值给数字变量如下: 运行结果:124 注意:数字变量初始化的时候要给一个数字的初始值,表明它是数字。 如果文本中含有非…

项目需求,我们加入了这个样式 float: left; 那么就会看到全部div处于同一行。但是实际应用中我们又有特殊div 需要单独 放置在一行

项目场景: 背景: 项目需求,我们加入了这个样式 float: left; 那么就会看到全部div处于同一行。但是实际应用中我们又有特殊div 需要单独 放置在一行 问题描述 提问题: 项目需求,我们加入了这个样式。 …

欲更新浏览器的Mac用户请注意,AMOS又出一招新“骗术”

近日,Malwarebytes发现有一种专门针对Mac操作系统(OS)的数据窃取程序正通过伪造的网页浏览器更新程序进行分发。Malwarebytes称这与其通常的技术、战术和程序大不相同,该恶意软件可以模仿 Safari 和谷歌 Chrome 浏览器。 网络安全…

【Hello Go】Go语言并发编程

并发编程 概述基本概念go语言的并发优势 goroutinegoroutine是什么创建goroutine如果主goroutine退出runtime包GoschedGoexitGOMAXPROCS channel无缓冲的channel有缓冲的channelrange和close单向channel 定时器TimerTicker Select超时 概述 基本概念 并行和并发概念 并行 &…

NX二次开发UF_CSYS_create_matrix 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CSYS_create_matrix Defined in: uf_csys.h int UF_CSYS_create_matrix(const double matrix_values [ 9 ] , tag_t * matrix_id ) overview 概述 Creates a 3 x 3 matrix. 创建…

please upgrade numpy version to >=1.20

升级 upgrade numpy_升级numpy-CSDN博客 pip install numpy --upgrade 没有pip conda install numpy --upgrade 会报错 conda list numpy来查看numpy版本 似乎这个numpy要看numpy-base这个 似乎没有pip

2023年ESG投资研究报告

第一章 ESG投资概况 1.1 定义 ESG投资,亦称负责任投资,是一种融合环境(Environment)、社会(Social)和治理(Governance)考量的投资方法,旨在通过综合这些因素来优化投资…

<蓝桥杯软件赛>零基础备赛20周--第7周--栈和二叉树

报名明年4月蓝桥杯软件赛的同学们,如果你是大一零基础,目前懵懂中,不知该怎么办,可以看看本博客系列:备赛20周合集 20周的完整安排请点击:20周计划 每周发1个博客,共20周(读者可以按…

全志D1芯片 MIPI屏幕TFT08006支持

屏幕简介 TFT08006官方支持的一款MIPI屏幕,8寸,分辨率800*1280。官方套装支持触控。 下载 MIPI屏幕 TFT08006 patch: https://www.aw-ol.com/downloads/resources/27 MIPI屏幕 TFT08006 相关资料见:https://www.aw-ol.com/down…

【Python】生死簿管理系统,估值5毛

生死簿管理系统 代码 """ 生死簿管理系统 """ import os import timefile_name data.txtdef main():while True:main_menu()choice (int)(input("请选择: "))if choice in [0, 1, 2, 3, 4, 5, 6, 7]:if choice 0:answer input(&…

连接docker swarm和凌鲨

docker swarm相比k8s而言,部署和使用都要简单很多,比较适合中小研发团队。 通过连接docker swarm和凌鲨,可以让研发过程中的常用操作更加方便。 更新容器镜像调整部署规模查看日志运行命令 使用步骤 部署swarm proxy 你可以通过linksaas…

无人机电力巡检系统运行流程全解读

随着电力行业体系不断完善,保障电网运营的安全成为至关重要的任务。传统的人工巡检方式在面对电力设备广泛分布和复杂工况时显得效率低下,为了解决这一难题,无人机电力巡检系统应运而生,以智能化的运行流程,为电网安全…

ubuntu22.04 arrch64版在线安装maven

脚本 if type -p mvn; thenecho "maven has been installed."elsecd /home/zenglgwget https://dlcdn.apache.org/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz --no-check-certificatetar vxf apache-maven-3.9.5-bin.tar.gz rm -rf /usr/local/mav…

【Mybatis】Mybatis操作数据库详解

Mybatis操作数据库 什么是MybatisMybatis入门准备工作创建Springboot工程 建表 创建实体类 配置数据库连接字符串编写持久层代码单元测试 Mybatis的基础操作打印日志参数传递增(insert)返回主键 删(delete)改(update)查(select) Mybatis XML配置文件配置连接字符串和Mybatis写持…

【开源】基于JAVA的计算机机房作业管理系统

项目编号: S 017 ,文末获取源码。 \color{red}{项目编号:S017,文末获取源码。} 项目编号:S017,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 登录注册模块2.2 课程管理模块2.3 课…

IIS 基线安全加固操作

目录 账号管理、认证授权 ELK-IIS-01-01-01 ELK-IIS-01-01-02 ELK-IIS-01-01-03 ELK-IIS-01-01-04 日志配置 ELK-IIS-02-01-01 ELK-IIS-02-01-02 ​​​​​​​ ELK-IIS-02-01-03 通信协议 ELK-IIS-03-01-01 设备其他安全要求 ELK-IIS-04-01-01 ​​​​​​​ ELK-I…

YM5411 WIFI 5模块 完美替代AP6256

YM5411是沃特沃德推出的一款低成本,低功耗的模块,该模块具有Wi-Fi(2.4GHz和5GHz IEEE 802.11 a/b/g/n/ac)蓝牙(BT5.0)功能,并通过了SRRC认证,带mesh,完美替换AP6256。高度…