【计算机操作系统】第一章、操作系统引论

2023-11-09

参考书籍为汤老师经典教材,本博客旨在作为自己学习笔记并与大家分享。



1. 操作系统的目标和作用

1.1 目标:

方便、有效、可扩充、开放性;

1.2 作用:

  1. 作为用户和计算机硬件系统之间的接口:用户可以通过1)命令方式2)系统调用方式3)图形、窗口方式 使用计算机
  2. 作为计算机系统的管理者:
  3. 实现了对计算机资源的抽象:

2. 操作系统的发展过程

2.1 单道批处理

单道批处理系统是在解决人机矛盾以及 CPU 与 I/O 设备速度不匹配问题的过程中形成的。换言之,批处理系统旨在提高系统资源的利用率和系统吞吐量。但这种单道批处理系统仍然不能很好地利用系统资源,故现已很少使用。该系统的主要特征如下:

  1. 自动性。在顺利情况下,在磁带上的一批作业能自动地逐个地依次运行,而无需人工干预。
  2. 顺序性。磁带上的各道作业是顺序地进入内存,各道作业的完成顺序与它们进入内存的顺序,在正常情况下应完全相同,亦即先调入内存的作业先完成。
  3. 单道性。内存中仅有一道程序运行,即监督程序每次从磁带上只调入一道程序进入内存运行,当该程序完成或发生异常情况时,才换入其后继程序进入内存运行。

2.2 多道批处理

在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。为了进一步提高资源的利用率和系统吞吐量,引入了多道程序设计技术,由此而形成了多道批处理系统(Multiprogrammed Batch ProcessingSystem)。
OS 中引入多道程序设计技术可带来以下好处:

  1. 提高 CPU 的利用率。
  2. 可提高内存和 I/O 设备利用率。
  3. 增加系统吞吐量。

优缺点如下:

  1. 资源利用率高。由于在内存中驻留了多道程序,它们共享资源,可保持资源处于忙碌状态,从而使各种资源得以充分利用。
  2. 系统吞吐量大。系统吞吐量是指系统在单位时间内所完成的总工作量。能提高系统吞吐量的主要原因可归结为:第一,CPU 和其它资源保持“忙碌”状态; 第二,仅当作业完成时或运行不下去时才进行切换,系统开销小。
  3. 平均周转时间长。作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。在批处理系统中,由于作业要排队,依次进行处理,因而作业的周转时间较长,通常需几个小时,甚至几天。
  4. 无交互能力。用户一旦把作业提交给系统后,直至作业完成,用户都不能与自己的作业进行交互,这对修改和调试程序是极不方便的。

2.3 分时系统

分时系统(Time Sharing System)与多道批处理系统之间有着截然不同的性能差别,它能很好地将一台计算机提供给多个用户同时使用,提高计算机的利用率。它被经常应用于查询系统中,满足许多查询用户的需要。分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。分时系统与多道批处理系统相比,具有非常明显的不同特征:

  1. 多路性。允许在一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。宏观上,是多个用户同时工作,共享系统资源;而微观上,则是每个用户作业轮流运行一个时间片。多路性即同时性,它提高了资源利用率,降低了使用费用,从而促进了计算机更广泛的应用。
  2. 独立性。每个用户各占一个终端,彼此独立操作,互不干扰。因此,用户所感觉到的,就像是他一人独占主机。
  3. 及时性。用户的请求能在很短的时间内获得响应。此时间间隔是以人们所能接受的等待时间来确定的,通常仅为 1~3 秒钟。
  4. 交互性。用户可通过终端与系统进行广泛的人机对话。其广泛性表现在:用户可以请求系统提供多方面的服务,如文件编辑、数据处理和资源共享等。

2.4 实时系统

所谓“实时”,是表示“及时”,而实时系统(Real Time System)是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

参考:什么叫实时操作系统,什么叫非实时操作系统,两者有什么区别?


3 操作系统的基本特性

并发、共享、虚拟异步这四个基本特征。其中,并发特征是操作系统最重要的特征,其它三个特征都是以并发特征为前提的。

3.1 并行与并发

并行性和并发性(Concurrence)是既相似又有区别的两个概念,并行性是指两个或多个事件在同一时刻发生而并发性是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。简单地说:

  

打个比喻

两个人在喂两个孩子吃饭,这叫并行,因为是同时进行的 
如果是一个人喂两个孩子吃饭,轮流着每人喂一口,这叫并发,因为是交替进行的

引用版权声明:https://blog.csdn.net/zhao18933/article/details/46699931

帮助理解并行并发:线程的并发、并行以及高并发

3.2 共享性

在操作系统环境下,所谓共享(Sharing),是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用,相应地,把这种资源共同使用称为资源共享,或称为资源复用。目前主要实现资源共享的方式有如下两种:互斥共享;同时访问。

并发和共享是操作系统的两个最基本的特征,它们又是互为存在的条件。

3.3 虚拟技术

操作系统中的所谓“虚拟”(Virtual),是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的,即实际存在的,而后者是虚的,仅是用户感觉上的东西。相应地,用于实现虚拟的技术称为虚拟技术。在操作系统中利用了两种方式实现虚拟技术,即时分复用技术空分复用技术

3.4 异步性

进程是以人们不可预知的速度向前推进,此即进程的异步性(Asynchronism)。

异步性是指进程以不可预知的速度向前推进。内存中的每个进程何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成等,都是不可预知的。
是程序并发执行时,程序之间的相互制约关系导致了并发程序这种“执行——暂停——执行”这种间断性的活动规律。

比如,当正在执行的进程提出某种资源请求时,如打印请求,而此时打印机正在为其他某进程打印,由于打印机属于临界资源,因此正在执行的进程必须等待,且放弃处理机,直到打印机空闲,并再次把处理机分配给该进程时,该进程方能继续执行。可见,由于资源等因素的限制,进程的执行通常都不是“一气呵成”,而是以“停停走走”的方式运行。

异步性就是描述进程这种以不可预知的速度走走停停、何时开始何时暂停何时结束不可预知的性质。

也就是说,如果传统意义上的程序没有在操作系统中为之配备进程控制块(PCB),没有用它来描述进程基本情况和活动过程,进而控制和管理进程,这样就会使程序在并发执行的时候失去其封闭性,也失去了可再现性。
但是,如果操作系统采用了进程同步机制,虽然程序具有异步性(走走停停、以不可预知的速度前进),但仍能保证进程并发执行的结果是可再现的。

所以,只要在操作系统中配置有完善的进程同步机制,且运行环境相同,作业经多次运行都会获得完全相同的结果。因此,异步运行方式是允许的。

引用版权声明:https://blog.csdn.net/liuchuo/article/details/51986221


4 操作系统的主要功能

4.1 处理机管理功能

  • 进程控制
  • 进程同步
  • 进程通信
  • 调度

4.2 存储器管理功能

  • 内存分配
  • 内存保护
  • 地址映射
  • 内存扩充

4.3 设备管理功能

  • 缓冲管理
  • 设备分配
  • 设备处理

4.4 文件管理功能

  • 空间管理
  • 目录管理
  • 文件的读写保护

4.5 操作系统与用户之间的接口


5 OS结构设计

5.1 传统OS结构

5.2 客户/服务器模式 C/S

5.3 面向对象的程序设计

5.4 微内核OS结构

微内核描述

1) 足够小的内核;2) 基于客户/服务器模式;3) 应用“机制与策略分离”原理;4) 采用面向对象技术。

微内核基本功能:

1) 进程(线程)管理;2) 低级存储器管理;3) 中断和陷入处理。

微内核优点:

1) 提高了系统的可扩展性;2) 增强了系统的可靠性;3) 可移植性;4) 提供了对分布式系统的支持;5) 融入了面向对象技术。


 

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

【计算机操作系统】第一章、操作系统引论 的相关文章

  • VMware下,私有云平台的配置(CentOS 7系统,含桌面)

    文章目录 实验环境 Windows系统 VMWare 15 1 0 CentOS 7 x86 64 Minimal 1810 iso映像文件 1 安装CentOS系统 2 实现远程桌面连接 实验环境 Windows系统 VMWare 15
  • CLI 命令行实用程序开发基础

    CLI 命令行实用程序开发基础 代码传送门 GoOnline平台 1 概述 CLI Command Line Interface 实用程序是Linux下应用开发的基础 正确的编写命令行程序让应用与操作系统融为一体 通过shell或scrip
  • CentOS 7下go环境配置(超多问题)

    文章目录 1 安装Visual Code 2 获得golang安装包并安装 3 第一个GO语言程序 hello go 4 安装必要工具与插件 1 安装Visual Code 在终端中安装VScode 使用以下命令 sudo rpm impo
  • 考研OR工作----计算机操作系统简答题及疑难知识点总结(第二章 进程的描述与控制)

    计算机操作系统从第二章开始内容会变得异常多 还是希望能够帮助到大家 在这一章阿婆主还会把书上的典型的PV操作题给打上来 给大家用作参考 如果有问题的地方 还请大家在文章下方留言 我好更正 或者你们有更好的PV操作的解法 也欢迎大家在文章下方
  • 计算机指令格式

    计算机的指令格式与机器的字长 存储器的容量及指令的功能都有很大的关系 从便于程序设计 增加基本操作并行性 提高指令功能的角度来看 指令中应包含多种信息 但在有些指令中 由于部分信息可能无用 这将浪费指令所占的存储空间 并增加了访存次数 也许
  • 【Linux开发】编写属于你的第一个Linux内核模块

    曾经多少次想要在内核游荡 曾经多少次茫然不知方向 你不要再对着它迷惘 让我们指引你走向前方 内核编程常常看起来像是黑魔法 而在亚瑟 C 克拉克的眼中 它八成就是了 Linux内核和它的用户空间是大不相同的 抛开漫不经心 你必须小心翼翼 因为
  • 【计算机操作系统】第八章 网络操作系统

    1 计算机网络概述 ARPA 网 gt Internet 1 1 计算机网络的拓扑结构 1 2 计算机广域网络 计算机网络分为广域网和局域网两类 公用交换电话网 分组交换网 帧中继网 异步传输模式 ATM 1 3 计算机局域网络 基本局域网
  • 操作系统系列(三)——编译和链接

    往期地址 操作系统系列一 操作系统概述 操作系统系列二 进程 本期主题 编译和链接 文章目录 1 被隐藏了的过程 1 1 预编译 1 2 编译 1 3 汇编 1 4 链接 1 模块拼接 静态链接 2 空间地址与分配 3 符号解析和重定位 核
  • 计操理论课09 -- openEuler实验第八章网络管理

    文章目录 任务1 编写基于socket的udp发送接收程序 45min 任务要求 任务代码 任务截图 任务2 使用 tshark 抓包 10min 任务要求 任务过程及截图 任务3 使用 setsockopt 发送记录路由选项 25min
  • 同步和异步的区别

    同步 进程之间的关系不是相互排斥临界资源的关系 而是相互依赖的关系 进一步的说明 就是前一个进程的输出作为后一个进程的输入 当第一个进程没有输出时第二个进程必须等待 具有同步关系的一组并发进程相互发送的信息称为消息或事件 其中并发又有伪并发
  • 【计算机操作系统】第四章 存储器管理

    1 存储器的结构层次 1 1 多级存储结构 对于通用计算机而言 存储层次至少应具有三级 最高层为 CPU 寄存器 中间为主存 最底层是辅存 在较高档的计算机中 还可以根据具体的功能分工细划为寄存器 高速缓存 主存储器 磁盘缓存 固定磁盘 可
  • 计算机操作系统知识架构整理

    计算机操作系统 操作系统引论 操作系统的目标与应用 操作系统的目标 操作系统的作用 推动操作系统发展的主要动力 操作系统的发展过程 无操作系统的计算机系统 单道批处理系统 多道批处理系统 分时系统 实时系统 微机操作系统的发展 操作系统的基
  • Windows修改右键新建菜单【Win10、Win11版】

    目录 一 引言 二 方法一 三 成果展示 四 方法二 删除Shell New 五 方法三 借助shellNewSettings小工具 一 引言 有些混乱的windows桌面新建菜单 是不是让人很不舒服 比如下图 图中的Access需要新建么
  • 操作系统知识点总结(四)进程同步和临界区互斥问题

    一 进程同步的基本概念 临界资源 同步和互斥 在多道程序环境下 进程是并发执行的 不同进程之间存在着不同的相互制约关系 为了协调进程之间的相互制约关系 引入了进程同步的概念 临界资源 虽然多个进程可以共享系统中的各种资源 但其中许多资源一次
  • 【计算机操作系统】第三章 处理机调度与死锁

    在多道程序环境下 主存中有着多个进程 其数目往往多于处理机数目 这就要求系统能按某种算法 动态地把处理机分配给就绪队列中的一个进程 使之执行 分配处理机的任务是由处理机调度程序完成的 由于处理机是最重要的计算机资源 提高处理机的利 用率及改
  • 计操理论课08 -- openEuler实验第七章文件系统

    文章目录 任务1 为 Ext4 文件系统添加扩展属性 25min 任务描述 任务过程及截图 任务2 注册一个自定义的文件系统类型 15min 任务描述 任务代码 任务截图 任务3 在 proc下创建目录 20min 任务描述 任务代码 任务
  • 考研OR工作----计算机操作系统简答题及疑难知识点总结(第三章 处理机调度与死锁)

    上一篇文章总结了一些关于进程的知识点 这章的目的也是根据 计算机操作系统 第四版 汤子瀛 的书来总结一下进程调度和死锁的相关知识点 这一章其实和上一章紧密相连 所以如果没有基础或基础较差 对一些概念还有些模糊 的朋友们先去看上一章的简答题总
  • 【计算机操作系统】第二章 进程管理

    1 进程的基本概念 1 1 程序的顺序执行和特征 程序顺序执行时的特征 顺序性 处理机的操作严格按照程序所规定的顺序执行 即每一操作必须在上一个操作结束之后开始 封闭性 程序是在封闭的环境下执行的 即程序运行时独占全机资源 资源的状态 除初
  • 计算机操作系统实验三 进程间的通信

    一 实验目的 1 了解什么是管道 2 熟悉UNIX LINUX支持的管道通信方式 3 了解什么是消息 4 熟悉消息传送的机理 二 实验内容 1 编写程序实现进程的管道通信 用系统调用pipe 建立一管道 二个子进程P1和P2分别向管道各写一
  • 什么是多进程-多线程-多协程 ---- 文件系统

    Linux操作系统五大子系统 内核 操作系统的核心代码 进程调度 SCHED 调度算法 先进先出 短作业优先 最高优先级 内存管理 MM 虚拟内存 虚拟地址映射 段页机制 缺页中断 内存的分配管理 伙伴系统 操作系统之内存管理 知乎 文件系

随机推荐

  • java21天打卡Day12-IO流

    IO流 构造file对象 File f new File report log System out println f getPath 传参的路径 report log System out println f getAbsolutePa
  • jquery选项卡几行代码搞定

    html部分 css样式自己写 a href class item active 选项一 a gt a href class item 选项二 a div class table themeBox style background ffff
  • 警惕!这个微软Office 0day 已遭在野利用

    聚焦源代码安全 网罗国内外最新资讯 编译 代码卫士 安全研究员发现 微软Office 新0day 已遭在野利用 仅需打开一份Word文档 攻击者即可利用该漏洞通过Microsoft 诊断工具 MSDT 执行恶意PowerShell 命令 C
  • 【优化无功】教与学算法求解IEEE_33节点无功优化问题【含Matlab源码 2699期】

    一 教与学算法 TLBO 由Rao等人在2011年提出的 是一种基于群体的启发式优化算法 不需要任何算法特定参数 这种方法模拟了传统的课堂教学过程 整个优化过程包括教师阶段和学习者阶段 在教师阶段 每个学生都向最优秀的个体进行学习 在学习阶
  • 解决std::to_string(long double _Val)函数当浮点数的精度大于等于小数点后六位时,返回的字符串结果为”科学计数法”的形式

    解决std to string long double Val 函数当浮点数的精度大于等于小数点后六位时 返回的字符串结果为 科学计数法 的形式 并且去掉末尾无效的 0 代码如下 include
  • Universal Model:基于clip驱动的器官分割和肿瘤检测通用模型

    论文 https arxiv org abs 2301 00785 我看这篇主要是看看MRI的多模态融合方法的 所以会略一些东西 感兴趣细节的就翻原文好嘞 摘要 越来越多的公共数据集在自动器官分割和肿瘤检测方面显示出显著的影响 然而 由于每
  • 设置Crontab执行任务时不发送邮件

    crontab的定时任务执行后都会给root发送一封邮件 通过以下方法可以防止这种情况 SHELL bin bash PATH sbin bin usr sbin usr bin 这是第一种方法 设置MAILTO参数为空 MAILTO HO
  • 微信网页版接口详解

    一 网页版微信提供的HTTP接口 1 获取uuid 说明 用于获取显示二维码以及登录所需的uuid 标识获取二维码和扫码的为同一个用户 请求方式 GET 地址 https login wx qq com jslogin get参数 参数 示
  • WSL安装及部分报错

    WSL安装 成功过程 错误示范 第一次进行操作时 第二次安装wsl 成功过程 结合使用了微软商城的评论区的建议 在链接https wsldownload azureedge net Ubuntu 2004 2020 424 0 x64 ap
  • JAVA语言中“+”号的三种用法

    一 数字相加 当 号两边都是数字时 代表数字相加 例如 int a 1 2 a的值为3 二 字符串连接 当 号两边至少有一个是字符串时 代表字符串连接 例如 String str hello world str的值为 helloworld
  • 如何使用Mac终端给树莓派pico构建C/C++程序进行开发,以及遇到各种问题该怎么处理,不使用任何IDE或编辑器(例如VS Code)

    写本文的原因是官方的教程已经过时了 如果你现在按照官方教程来在 Mac 上进行配置 那么会遇到一堆问题 比如我几乎把能踩的 雷 都踩了 所以这里记录了完整过程 以及各种错误的原因和处理方法 不然以后换 Mac 了或者在其他平台遇到同样的问题
  • 以太坊json rpc

    Contents Hash List JSON RPC support HEX value encoding The default block parameter Curl Examples Explained JSON RPC meth
  • HCIP-DATACOM-带解析-101-150题(821)

    101 VRP平台上 当我们引入OSPF路由到ISIS的时候 如果不指定COST 开销值将默认设为16 A 正确 B 错误 正确答案 B 答案解析 102 使用如下IP前缀列表进行路由匹配 则以下哪项路由可以被匹配到 ip ip prefi
  • 【Python】Python元组学习

    Python之元组学习记录 一 元组的特点 可以容纳多个数据 可以容纳不同类型的数据 混装 数据是有序存储的 下标索引 允许重复数据存在 不可以修改 增加或删除元素等 但内部list元素可以被修改 支持while for循环 二 元组操作练
  • [现代控制理论]4_PhasePortrait爱情故事动态系统分析

    现代控制理论 11 现代控制理论串讲 完结 pdf获取 现代控制理论 10 可观测性与分离原理 观测器与控制器 现代控制理论 9 状态观测器设计 龙伯格观测器 现代控制理论 8 5 线性控制器设计 轨迹跟踪simulink 现代控制理论 8
  • QFileDialog 对话框类

    QFileDialog 对话框类 QFileDialog 对话框类是 QDialog 类的子类 通过这个类可以选择要打开 保存的文件或者目录 关于这个类我们只需要掌握一些静态方法的使用就可以了 通用参数 parent 当前对话框窗口的父对象
  • Navicat导出整个数据库

    Navicat使用 转存为SQL文件的方式导出数据库 如果有外键会导致在导入时出错 需使用数据传输的方式进行导出 选成使用文件方式进行保存 高级选项需选成 这样导出的SQL脚本就是完整版本的 在新数据库中导入不般不会报错 如果出现导入报错
  • MySQL国内镜像

    一 基础概念 MySQL是一种关系型数据库管理系统 使用标准SQL查询语句进行数据访问 广泛应用于Web系统的数据存储 MySQL国内镜像指的是在国内建立的MySQL镜像站点 用于提供MySQL的各种资源下载和服务 由于MySQL在国内访问
  • A *p=new B;

    好久没有摸c 了 刚刚看到个面试题 发现都要忘了 巩固下 A P new B A是父类 B是子类 虽然P是一个基类的指针 但是new B调用的是派生类B的构造方法 所以构造的是B类对象 先调用A的构造函数 再调用B的构造函数 构造完后会返回
  • 【计算机操作系统】第一章、操作系统引论

    参考书籍为汤老师经典教材 本博客旨在作为自己学习笔记并与大家分享 1 操作系统的目标和作用 1 1 目标 方便 有效 可扩充 开放性 1 2 作用 作为用户和计算机硬件系统之间的接口 用户可以通过1 命令方式2 系统调用方式3 图形 窗口方