什么是操作系统?操作系统的定义、功能、特性

2023-05-16

什么是操作系统?操作系统的定义、功能、特性

什么是操作系统?

首先,计算机的资源可以分为硬件资源和软件资源
CPU、存储设备、各种类型的输入输出设备与外设等,共同构成计算机的硬件资源
各种程序、数据构成链计算机的软件资源

任何程序的执行都占用了计算机资源。
一个程序要执行,首先要从外存加载到内存,再通过CPU进行执行,可能还会调用公共服务子程序和共享文件以及其他外设,这些都是计算机资源

各个程序对计算机资源的需求可能会造成冲突
如果没有规则或者程序对这些需求进行管理,势必会引起混乱。同时,对计算机资源进行分配也是同样有必要的

操作系统的任务就是对需求进行管理、对资源进行分配,同时,它还需要对用户提供服务
它是软件,是第一层直接和硬件接触的软件,是其他程序和硬件之间的接口,是其他软件的基础,是计算机中硬件、软件资源的总指挥部

操作系统特征

  1. 并发性
  2. 共享性
  3. 随机性

并发性

并发性在宏观看来,是一台机器中的多个程序同时并发运行
进一步看,是用户程序和用户程序之间的并发运行、用户程序与操作系统之间的并发运行。

微观来看,在单处理器系统上,这些程序是交替运行的
在多处理器系统中,这些程序不仅在宏观上是并发的,在微观上也是并发的

不管是哪一种计算环境,并发都是在操作系统统一指挥下的并发

共享性

操作系统对各种资源进行分配,所有程序共享CPU、内存、外存以及各种外设
有两种共享的形式:

  1. 互斥共享
  2. 同时共享

互斥共享的意思是,在一个时间段内,只能有一个程序使用该资源。例如打印机在打印的时候只能被一个程序使用。这样的资源称之为临界资源。

同时共享的意思是,在一个时间段内,可以有多个程序使用该资源,且使用的顺序对程序的执行结果并不会造成影响,看上去是同时使用的。一个典型的例子是外存。

随机性

随机性的含义是,操作系统不能对程序和硬件的情况作出事先的假定
它无法知道硬件在什么时候发出中断,也无法预测用户的下一步行动
也就是说,操作系统无法知道自己当前的状态
随机性突出了在设计操作系统时要充分考虑各种情况的重要性

操作系统功能

  1. 进程管理
  2. 存储管理
  3. 文件管理
  4. 设备管理

进程管理

管理进程即是管理CPU,因此进程管理也称之为CPU管理
为了提高CPU利用率,现代操作系统采用多道程序处理。当某一个程序陷入等待,或另一个程序重要度更高时,应当进行灵活的调度处理。
为了描述多道程序的并发执行,就需要引入进程的概念。

在多道环境下,进程是操作系统进行资源分配的单位

进程管理涉及以下四种功能:

  1. 进程控制
  2. 进程同步
  3. 进程通信
  4. 进程调度
  • 进程控制,即是创建进程时为进程分配资源、销毁进程、进行进程的状态转换等
  • 进程同步,即是在进程和进程之间进行协调,使得执行进度不可预知的多个进程有条不紊地进行。进程同步分为互斥协调和同步协调。
    互斥协调:在访问临界资源时使用互斥的方式。最简单的方式就是给资源加锁,并提供操作锁的原语。
    同步协调:协调执行顺序
  • 进程通信,即是交换进程和进程之间的信息,主要发生在相互协作地进程之间
  • 进程调度,即是使用算法,挑选一个进程或者线程,并为其准备好特定的上下文执行

原语:即是原子语言,和原子一样是不可再分的部分,要么执行、要么不执行

存储管理

存储管理主要包括:

  1. 内存的分配、内存的回收
  2. 存储保护:防止程序越界等等问题
  3. 内存的扩充:使用虚拟内存进行内存的扩充,控制比物理内存更大的内存

文件管理

  1. 文件的存储空间管理:通常使用离散分配的形式、以块为基本单位,对空间进行分配
  2. 文件目录管理
  3. 文件的各种操作
  4. 文件安全

设备管理

对众多的外设进行管理,需要具备中断处理、错误处理等等能力


操作系统之间的功能并不是完全独立的,它们之间存在着相互以来的关系

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是操作系统?操作系统的定义、功能、特性 的相关文章

  • iperf3使用方法详解

    iperf3是一款带宽测试工具 xff0c 它支持调节各种参数 xff0c 比如通信协议 xff0c 数据包个数 xff0c 发送持续时间 xff0c 测试完会报告网络带宽 xff0c 丢包率和其他参数 小广告 xff1a 欢迎喜欢网络技术
  • 国产操作系统有哪些,你知道吗?

    国产操作系统有哪些 xff1f 目前国产操作系统主要以开源的Linux为基础进行的二次开发 xff0c 近10种左右 xff0c 目前认知度较高的国产操作系统主要包括银河麒麟 中标麒麟 统信操作系统 红旗Linux 中科方德 银河麒麟 银河
  • 基于Python语言的Abaqus二次开发-求最大Mises应力

    利用python访问Odb文件 xff0c 求Mises应力的最大值 下面说明了如何从系统提示符运行示例脚本 该脚本将在输出数据库中搜索元素集 ALL ELEMENTS xff0c 以查找冯米塞斯应力的最大值 xff1a from odbA
  • List取交集,差集,并集,去重并集

    List求交集 xff0c 差集 xff0c 并集 xff0c 去重并集 交集 listA retainAll listB listA内容变为listA和listB都存在的对象 差集 listA removeAll listB listA内
  • 编程知识追踪总结(进行中)

    编程知识追踪存在的问题 1 数据稀疏 与代数等定义明确的领域的大量学生建模工作相比 xff0c 由于开放式编程练习的无界解空间造成的数据稀缺 xff0c 对编程中的学生建模的研究很少 xff08 8 xff0c 19 xff09 xff08
  • Matlab function函数如何使用

    步骤 xff1a 1 创建 m文件 xff0c m文件中用关键字function定义函数 xff0c 定义函数的格式如下 xff1a function 输出变量 61 函数名称 输入变量 xff09 输入变量和输出变量可以是一个 xff0c
  • 【软件工程】十大模型

    1 瀑布模型 瀑布模型将软件的生命周期划分为 xff1a 制定计划 需求分析 软件设计 程序编写 软件测试 运行维护六个基本活动 xff0c 并规定了它们自上而下 相互衔接的固定次序 xff0c 如同瀑布流水 xff0c 逐级下落 瀑布模型
  • java zip压缩包并加密

    进入jar包 span class token tag span class token tag span class token punctuation lt span dependencies span span class token
  • element组件里的图标组件使用之后再页面上显示不出来的可能原因

    按照element官网上写的 lt i class 61 34 el icon food 34 gt lt i gt 但是在页面上却显示不出来 原因 xff1a 可能是因为项目下载的element依赖版本太低了 解决方法 xff1a 打开项
  • java 判断是否回文

    java 判断是否回文 是回文 true 否则false span class token keyword package span span class token namespace com span class token punct
  • STM32的三种Boot模式

    STM32的三种Boot模式 BOOT模式的介绍 所谓启动 xff0c 一般来说就是指我们下好程序后 xff0c 重启芯片时 xff0c SYSCLK的第4个上升沿 xff0c BOOT引脚的值将被锁存 用户可以通过设置BOOT1和BOOT
  • 简单运维项目--Cloudreve上线部署

    Cloudreve上线部署 原理实验要求 操作一 在数据库服务器 xff08 96 mysql 1 96 xff09 操作二 在数据库服务器 xff08 96 NFS File 96 xff09 操作三 在代理服务器 xff08 96 pr
  • 实例:用C#.NET手把手教你做微信公众号开发(22)--网页里通过OAuth获取用户openid

    第一篇 xff1a 理论 如果一个用户并未关注某个公众号 xff0c 只是在微信内打开了公众号web服务器上的某个网页 xff0c 要如何获取用户的openid以及用户的微信信息 xff0c 以便实现业务逻辑呢 xff1f 本篇讲述网页授权
  • 嘘,我发现了互联网流量变现提升的秘籍

    变现 难 xff0c 难于上青天 我想如果李白生活在当下移动互联网时代 xff0c 一定会再度创作经典诗篇 变现难 虽然话是玩笑话 xff0c 但情况确实如此 我是一个小企业的APP开发者 xff0c 在波云诡谲的互联网时代 xff0c 对
  • 存量市场下的互动广告:让“互动+”成为可能

    被称为 第四代互联网广告 的互动广告一改以往传统广告单向的传播 xff0c 通过互动 交流进行双向传播 xff1b 用户也从被动的观看者转变为主动的参与者 xff0c 直观地体验产品的核心功能 xff0c 由于诸此种种优势使得目前行业内互动
  • 流量变现频频受阻?试试GroMore!

    每个APP开发者最希望的事情便是将自身平台的流量变现收益最大化 不过 xff0c 实现这一希望可谓是 道阻且长 xff0c 因为流量变现路上 成本高 效率低 优化难 这三大拦路虎来势汹汹 针对流量变现的三大痛点 xff0c 开发者应该应对
  • 这个暑假,我用这个特效制作软件赚了“第一桶金”

    暑假已经过了一个月了 xff0c 在这一个月里 xff0c 感觉自己做了一件大事 挣钱 作为一名优秀的当代大学生 xff0c 总是希望自己能够通过自己的努力获得一些什么 在学长的推荐下 xff0c 我还是放弃了 卖苦力 的赚钱方式 xff0
  • 短视频特效创作,带给我的不只幸福感

    要说现在抖音是年轻人最喜爱的社交媒体之一 xff0c 应该没有人反对吧 xff1f 要说我最喜欢抖音里的什么内容 xff0c 一定是各种奇奇怪怪的特效啦 也正是因为喜欢这些短视频特效 xff0c 我还特别去研究了一下它们是怎样被创作出来的
  • 抖音特效开放平台,点满我的短视频特效创作技能

    记得刚开始玩儿抖音的时候 xff0c 最喜欢看的就是技术流大拿们做的特效视频 xff0c 并且跃跃欲试想要加入他们 xff0c 奈何自己实在没有这么强的技术 再到后来 xff0c 抖音就推出了短视频特效道具 xff0c 我一直觉得 xff0

随机推荐

  • 怎么做视频特效?不妨试试抖音特效创作平台

    在这个信息满天飞的时代 xff0c 如何吸引用户主动的去接收信息对于内容生产来说至关重要 xff0c 从相关资料了解到 xff0c 视频是目前大家最喜欢的信息呈现方式 xff0c 一个有趣的视频可能会吸引成千上万用户的注意力 引爆整个网络场
  • 从0开始的视频特效制作之路

    随着短视频的火爆 xff0c 特效也随之火热了起来 作为短视频的重要玩法之一 xff0c 特效不仅降低了短视频拍摄制作的门槛 xff0c 还让用户的短视频形式丰富了起来 而最近爆火的 奶瓶面膜 视频特效 xff0c 更是给视频特效的出圈加了
  • 如何实现广告精准投放?一文获得新思路

    随着互联网人口红利的持续衰减 xff0c 互联网用户数量的增长速度越来越慢 市场进入存量 xff0c 用户们对产品质量要求越来越高 面对这样的市场阶段 xff0c APP开发者们做好广告精准投放是很有必要的 精准地广告投放在减少广告预算浪费
  • 激励视频广告——移动应用的财富密钥

    如何良好地平衡用户体验和用户增长 是广告行业的持久命题 xff0c 上网搜索 激励视频广告 你会发现类似的问题层出不穷 xff1a 请问什么是激励视频广告 xff1f 谁能麻烦介绍一下吗 xff1f 激励视频广告哪家做的好 xff1f 跪求
  • 设计模式详解:模式汇总与索引清单

    从本篇开始 xff0c 和您一起进入设计模式的世界 之前用C 做微信微信公众号开发系列文章 xff0c 更多的是原生模式 xff0c 帮助猿友们理解业务流程和基本实现方法 xff0c 但是那些类的实现仍然是用面向过程的思维方式 xff0c
  • 如何稳步实现互联网流量变现?

    我突然想起了自己刚做开发的时候 xff0c 那会还是菜鸟的我为了快速获取流量 最大程度的变现 xff0c 基本上不会考虑所谓的用户体验 xff0c 满脑子都是怎么引流 怎么变现 xff0c 所以常常引起用户反感 xff0c 严重折损了用户体
  • 一文获悉互动广告的投放攻略

    一直以来 xff0c 顶着 第四代互联网广告 头衔的 互动广告 通过互动 交流等方式进行双向传播 xff0c 一改以往传统广告的单向线性传播 xff0c 与此同时 xff0c 用户也从被动的观看者转变为主动的参与者 xff0c 直观地体验产
  • 穿山甲成长中心——人能尽其才则百事兴

    对于一众APP开发者来说 xff0c 要想在激烈的市场竞争中突出重围 xff0c 得到用户的青睐 xff0c 往往要面临重重困难 缺乏广告资源 xff0c 流量变现困难等着问题都使得开发者在刚刚进入市场时没有机会展现自己从而停滞不前 每一个
  • 广告精准投放的新出路为何?

    众所周知 xff0c 当前广告行业呈现普遍性的跨媒体投放 xff0c 测试成本 管理成本较高 xff0c 存在信息孤岛等情况 xff0c 一众广告主们通过数据分析优化投放的难度较大 在各类引擎中搜索 广告精准投放 xff0c 诸如 如何以更
  • 互联网流量变现出路为何?一文浅析

    国庆小长假在各大广告主和开发者们眼里就是一座巨大的流量富矿 xff0c 以国庆为主题推的广告和软件层出不穷 我突然想起了我自己刚做开发的时候 xff0c 那会还是菜鸟的我为了快速获取流量 最大程度的变现 xff0c 基本上不会考虑所谓的用户
  • MyBatisPlus 入门学习笔记(版本:3.4.3)

    文章目录 学习辅助资料 MyBatisPlus概述1 MyBatisPlus是什么2 特性 快速开始1 创建数据库 96 mybatis plus 96 2 导入相关依赖3 数据源配置3 快速开始3 1 User实体类编写3 2 mappe
  • Shell自动化脚本学习

    目录 xff08 1 6 xff09 Linux Shell脚本的自动化编程之shell xff1a 命令排序 xff08 1 7 xff09 Linux Shell脚本的自动化编程之shell xff1a 通配符 xff08 2 1 xf
  • ROS创建工作空间及功能包流程总结整理(python)

    ROS创建工作空间及功能包流程总结整理 xff08 python xff09 参考资料 xff1a B站赵虚左 xff1a https www bilibili com video BV1Ci4y1L7ZZ p 61 19 amp vd s
  • 中序计算式的计算器模型C语言实现

    span class token macro property span class token directive keyword include span span class token string lt stdio h gt sp
  • 设计模式详解:面向对象设计的七大原则

    单一职责原则 xff1a 一个对象应该只包含单一的职责 xff0c 并且该职责被完整地封装在一个类中 Single Responsibility Principle SRP Every object should have a single
  • 排序算法——猴子排序

    猴子排序 让一群猴子在打印机前昼夜不停地敲打键盘 xff0c 最终有可能能输入一部莎士比亚作品集 尽管概论微乎其微 同理 xff0c 把一堆扑克牌扔到天上 xff0c 等它们落下来的时候有概率会刚刚好从小到大排成一列 现在有一个无序的数组
  • ubuntu下firefox使用HTML 5播放器看B站

    ubuntu下FireFox使用HTML 5播放器看B站 firefox使用flash是真的难顶 xff0c 一直闪白 发现bilibili其实可以使用html 5播放器 使用 span class token function sudo
  • Ubuntu下将rm命令替换为trash命令

    Ubuntu下将rm命令替换为trash命令 rm命令是一个很可怕的命令 xff0c 因为它不会给你后悔的机会 xff0c 删了就是删了 xff0c 再也找不回来了 xff08 据说能在lost 43 found里面恢复 xff0c 但是操
  • 正则表达式_排除特定字符/字符串

    正则表达式 排除特定字符 字符串 使用场景 xff1a 使用git add A指令提交一个文件夹中所有的代码文件 xff0c 忽略所有的可执行文件 抽象化 匹配一些字符串 xff0c 找出其中不含后缀 xff0c 即 的字符串 理解 排除特
  • 什么是操作系统?操作系统的定义、功能、特性

    什么是操作系统 xff1f 操作系统的定义 功能 特性 什么是操作系统 xff1f 首先 xff0c 计算机的资源可以分为硬件资源和软件资源 CPU 存储设备 各种类型的输入输出设备与外设等 xff0c 共同构成计算机的硬件资源 各种程序