操作系统的概念、并发和并行的区别、操作系统的发展和分类

news2024/9/23 17:22:42

操作系统

  • 一、操作系统的概念
    • 1.1操作系统作为系统资源的管理者
    • 1.2向上层提供方便易用的服务
      • 1.2.1 联机命令接口(交互式命令接口)
      • 1.2.2 脱机命令接口(批处理命令接口)
      • 1.2.3程序接口
    • 1.3最接近硬件的一层软件
  • 二、操作系统的特征
    • 2.1并发
    • 2.2共享
    • 2.3虚拟
    • 2.4异步
  • 三、操作系统的发展和分类
    • 3.1手工操作阶段
    • 3.2批处理阶段(单道批处理系统)
    • 3.2批处理阶段(多道批处理系统)
      • 3.3分时操作系统
      • 3.3实时操作系统
  • 总结

一、操作系统的概念

  • 操作系统(Operation System ,OS)是指控制和管理真个计算机系统的硬件和软件资源,并合理的调度计算机的工作和资源的分配;
  • 提供给用户和其他软件方便的接口和环境
  • 它是计算机系统中最基本的系统软件

在这里插入图片描述
在这里插入图片描述

  • 1.操作系统是系统的管理者
  • 2.向上层提供方便易用的服务
  • 3.是最接近硬件的一层软件。

1.1操作系统作为系统资源的管理者

执行一个程序前需要将该程序放到内存中,才能被CPU处理。

  • 用QQ和朋友视频聊天的过程:
    • 1.在文件夹中找到QQ安装的位置
    • 2.双击打开QQ.exe
    • 3.QQ程序正常运行
    • 4.开始和朋友视频聊天

分别对应着
1.处理机管理:逐层打开文件夹,找到程序(可执行文件)的存放位置
2.存储器管理:需要把该程序相关数据放入内存
3.文件管理:对应的进程被处理机(CPU)处理
4.设备管理:将摄像头设备分配给进程

1.2向上层提供方便易用的服务

  • 封装思想:
  • 操作系统把一些丑陋的硬件功能封装成简单易用的服务,使用户能更方便的使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可。

GUI:图形化用户接口(Graphical User Interfase)
用户可以使用形象的图形界面进行操作,而不需要记忆复杂的命令、参数,
例:在Windows操作系统中,删除一个文件只需要把文件“拖拽”到回收站即可。

1.2.1 联机命令接口(交互式命令接口)

  • 特点:用户说一句,系统跟着做一句

在这里插入图片描述


1.2.2 脱机命令接口(批处理命令接口)

  • 使用Windows系统,找到一个*.bat的文件,用记事本打开
    在这里插入图片描述

  • 当运行这个文件时,操作系统会根据文件中的内容一条一条执行
  • 特点:用户说一堆,系统做一堆。

1.2.3程序接口

  • 可以在程序中进行系统调用来使用程序接口。
  • 普通用户不能直接使用程序接口,只能通过程序代码简洁使用。

在这里插入图片描述


  • 系统调用类似于函数调用,是应用程序请求操作系统服务的唯一方式。

1.3最接近硬件的一层软件

  • 需要实现对硬件机器的拓展
  • 没有任何软件支持的计算机称为裸机,在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器
  • 通常把覆盖了软件的机器称为扩充机器,又称之为虚拟机
  • 操作系统对硬件机器的拓展:将CPU、内存、磁盘、显示器、键盘等硬件合理的组织起来,让各种硬件能够相互协调配合,实现更多更复杂的功能

二、操作系统的特征

2.1并发

  • 指两个或多个事件在同一时间间隔内发生。
  • 这些事件在宏观上是同时发生的,但微观上是交替发生的
  • 并行:
  • 指两个或多个事件在同一时刻同时发生。
  • 操作系统的并发性指计算机系统中“同时”运行着多个程序,这些程序宏观上看是同时运行的,而微观上看是交替运行的。
  • 注意:
    • 单核CPU同一时刻只能执行一个程序,各个程序只能并发的执行
    • 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行的执行
  • 即使是对于4核CPU来说,只要有4个以上的程序需要“同时”运行,那么并发性依然是必不可少的,因此并发性是操作系统一个最基本的特性。

2.2共享

  • 共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
  • 互斥共享方式:
    • 系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源
  • 同时共享方式:
    • 系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问
  • 并发性指计算机系统中同时及存在着多个运行着的程序
  • 共享性指系统中的资源可供内存中的多个并发执行的进程共同使用
    • 如果失去并发性,则系统中只有一个程序正在运行,则共享性失去存在的意义
    • 如果失去共享性,则两个进程不能同时访问硬盘资源,就无法实现同时发送文件,也就无法并发
  • 并发性与共享性互为存在条件

2.3虚拟

  • 虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。
  • 物理实体(前者)是实际存在的,而逻辑上的对应物(后者)是用户感受到的。
    • “空分复用技术”:如虚拟存储器技术
    • 虚拟技术中的“时分复用技术”,微观上处理机在各个微小的时间段内交替着为各个进程服务。
  • 如果失去了并发性,则一个时间段内系统只需运行一道程序,那么就失去了实现虚拟性的意义了,因此,没有并发性,就谈不上虚拟性

2.4异步

  • 指在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进。
  • 如果失去了并发性,即系统只能串行的运行各个程序,那么每个程序的执行会一贯到底。
  • 只有系统拥有并发性,才有可能导致异步性

没有并发和共享,就谈不上虚拟和异步,因此并发和共享是操作系统的两个最基本的特征。

三、操作系统的发展和分类

3.1手工操作阶段

  • 纸带机输入
  • 缺点:用户独占全机、人机速度矛盾导致资源利用率极低。

3.2批处理阶段(单道批处理系统)

  • 引入脱机输入/输出技术(用外围机+磁带完成),并由监督程序负责控制作业的输入、输出。
  • 通过外围机把程序提前存到磁带里。
  • 监督程序:操作系统的雏形。
  • 主要优点:
    • 缓解了一定程度的人机速度矛盾,资源利用率有所提升。
  • 主要缺点:
    • 内存中仅有一道程序运行,只有该程序运行结束之后才能调入下一道的程序
    • CPU有大量的时间是在空闲等待I/O完成。
    • 资源利用率依然很低。

3.2批处理阶段(多道批处理系统)

  • 操作系统正式诞生,用于支持多道程序并发运行
  • 每次往内存中读入多道程序。
  • 主要优点:
    • 多道程序并发执行,共享计算机资源
    • 资源利用率大幅提升
    • CPU和其他资源更能保持“忙碌”状态,系统吞吐量增大。
  • 主要缺点:
    • 用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行)
    • 无法调试程序/无法在程序运行过程中输入一些参数

3.3分时操作系统

  • 计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。
  • 主要优点:
    • 用户请求可以被即时响应,解决了人机交互问题。
    • 允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。
  • 主要缺点:
    • 不能优先处理一些紧急任务
    • 操作系统对各个用户/作业都是完全公平的,循环的为每个用户/作业服务一个时间片,不区分任务的紧急性。

3.3实时操作系统

  • 主要优点:
    • 能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
  • 在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。
  • 实时操作系统的主要特点是及时性和可靠性。
  • 硬实施系统:
    • 必须在绝对严格的规定时间内完成处理
  • 软实施系统:
    • 能接受偶尔违反时间规定

总结

本文主要介绍了操作系统的概念、特征及分类,注意并发和并行的区别,欢迎各位小伙伴点赞+关注!!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

renderjs 与 app-vue之间数据交互

renderjs 与 app-vue之间数据传值 文章目录 renderjs 与 app-vue之间数据传值renderjs效果图templatejs renderjs renderjs renderjs 的主要作用: 大幅降低逻辑层和视图层的通讯损耗,提供高性能视图交互能力在视图层操作dom,运行 for web 的…

1400*C. Phoenix and Towers(贪心)

题意: 将 n 个数字分成 m 组,使得每两组的差值都不超过 x ,打印每个数的分组的组数 解析: 因为每一个数都不超过 x ,所以两个数的差值必定不超过 x,每次选最矮的一座塔放入当前的砖块,并且记录塔…

iOS开发-下拉刷新动画小球左右交换位置Indicator指示器效果

iOS开发-下拉刷新动画小球左右交换位置Indicator指示器效果 之前开发中实现下拉刷新动画小球左右交换位置Indicator指示器效果。 一、效果图 二、基础动画 CABasicAnimation类的使用方式就是基本的关键帧动画。 所谓关键帧动画,就是将Layer的属性作为KeyPath来注…

Linux:shell命令运行原理和权限的概念

文章目录 shell和kernelshell的概念和原理Linux的权限文件的权限文件的类型文件的权限管理权限的实战应用 shell和kernel 从狭义上来讲,Linux是一个操作系统,我们叫它叫kernel,意思是核心,核心的意思顾名思义,就是最关…

【LeetCode】72.(最短)编辑距离(闫氏dp,分析加可视化)

考虑两个数组:a、b 定义dp[ i ][ j ]为,让数组a从1到 i 的字符,与数组b从1到 j 的字符,正好匹配上的最小操作数。 假设现在面前有一个正好匹配的数组a和b,其中a的长度为 i ,b的长度为 j (两个…

python离散仿真器

文章目录 类图示例 类图 示例

浅谈3D隐式表示(SDF,Occupancy field,NeRF)

本篇文章介绍了符号距离函数Signed Distance Funciton(SDF),占用场Occupancy Field,神经辐射场Neural Radiance Field(NeRF)的概念、联系与区别。 显式表示与隐式表示 三维空间的表示形式可以分为显式和隐式。 比较常用的显式表…

基于SpringBoot+Vue的财务管理系统设计与实现(源码+LW+部署文档等)

博主介绍: 大家好,我是一名在Java圈混迹十余年的程序员,精通Java编程语言,同时也熟练掌握微信小程序、Python和Android等技术,能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

【动态规划part10】| 121.买卖股票的最佳时机、122.买卖股票的最佳时机II

目录 🎈LeetCode121. 买卖股票的最佳时机 🎈LeetCode122.买卖股票的最佳时机II 🎈LeetCode121. 买卖股票的最佳时机 链接:121.买卖股票的最佳时机 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定…

图神经网络(GNN)入门学习笔记(直观且简单)

文章目录 图的定义和表示可以使用图数据结构的问题将图结构用于机器学习的挑战最基本的图神经网络概述汇聚操作基于信息传递的改进图神经网络全局向量信息的利用 本篇文章参考发表于Distill上的图神经网络入门博客: A Gentle Introduction to Graph Neural Network…

网络防御之IDS

1. 什么是IDS? IDS是入侵检测系统,一种对于网络传输进行及时监视,在发现可疑的传输时发出警报或者采取主动反应措施的网络安全设备。IDS是一种积极地主动的防御技术。 2. IDS和防火墙有什么不同? 防火墙是一种隔离并过滤非授权用…

CV前沿方向:Visual Prompting 视觉提示工程下的范式

prompt在视觉领域,也越来越重要,在图像生成,作为一种可控条件,增进交互和可控性,在多模态理解方面,指令prompt也使得任务灵活通用。视觉提示工程,已然成为CV一个前沿方向! 下面来看看…

Python Numpy入门基础(二)数组操作

入门基础(二) NumPy是Python中一个重要的数学运算库,它提供了了一组多维数组对象和一组用于操作这些数组的函数。以下是一些NumPy的主要特点: 多维数组对象:NumPy的核心是ndarray对象,它是一个多维数组对…

TCP/IP协议详解(二)

目录内容 TCP协议的可靠性 TCP的三次握手 TCP的四次挥手 C#中,TCP/IP建立 三次握手和四次挥手常见面试题 在上一篇文章中讲解了TCP/IP的由来以及报文格式,详情请见上一篇文章,现在接着来讲讲TCP/IP的可靠性以及通过代码的实现。 在TCP首部的…

Javadoc comment自动生成

光标放在第二行 按下Alt Shift j 下面是Java doc的生成 Next Next-> Finish

java多线程(超详细)

1 - 线程 1.1 - 进程 进程就是正在运行中的程序(进程是驻留在内存中的) 是系统执行资源分配和调度的独立单位 每一进程都有属于自己的存储空间和系统资源 注意:进程A和进程B的内存独立不共享。 1.2 - 线程 线程就是进程中的单个顺序控制…

【数据预测】基于蜣螂优化算法DBO的VMD-KELM光伏发电功率预测 短期功率预测【Matlab代码#53】

文章目录 【可更换其他算法,获取资源请见文章第6节:资源获取】1. 蜣螂优化算法DBO2. 变分模态分解VMD3. 核极限学习机KELM4. 部分代码展示5. 仿真结果展示6. 资源获取 【可更换其他算法,获取资源请见文章第6节:资源获取】 1. 蜣螂…

【雕爷学编程】Arduino动手做(175)---机智云ESP8266开发板模块8

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&am…

二、vagrant中安装centos-7

篇章二、vagrant中安装centos-7 前言 使用Vagrant创建镜像时,需要指定一个镜像,也就是box,若不存在Vagrant则会先从网上下载,而后缓存在本地目录下。 Vagrant有一个 镜像网站 ,可以根据需要在这个网站中下载所需镜像…

Banana Pi 推出带有 2 个 2.5GbE 端口的迷你路由器开源硬件开发板

Banana Pi 今天推出了一款迷你路由器板,基于 MediaTek MT7986 无线网络片上系统,针对路由器进行了优化。Banana Pi BPI-R3 迷你路由器板还支持无线连接,起价约为 78.95 美元。 产品公告显示,这款新路由器板集成了 MediaTek Filog…