操作系统的奋斗(一)

news2025/7/31 2:03:33

第1章 计算机系统概述

  • 1.1操作系统的基本概念
    • 1.1.1操作系统的概念
    • 1.1.2操作系统的特征
      • (1)并发
      • (2)共享
      • (3)虚拟
      • (4)异步
    • 1.1.3操作系统的目标和功能
  • 1.2操作系统发展史
      • (1)手工操作阶段(此阶段无操作系统)
      • (2)批处理阶段(操作系统开始出现)
      • (3)分时操作系统
      • (4)实时操作系统
      • (5)网络操作系统和分布式计算机系统
      • (6)个人计算机操作系统
  • 1.3操作系统运行环境
      • (1)处理器运行模式
      • (2)中断和异常的概念
      • (3)系统调用
  • 1.4操作系统结构
      • (1)分层法
      • (2)模块化
      • (3)宏内核
      • (4)微内核
      • (5)外核
  • 1.5操作系统引导
  • 1.6虚拟机
  • 1.7本章疑难点
      • 一、并行性与并发性的区别和联系
      • 二、特权指令与非特权指令
      • 三、访管指令与访管中断
      • 四、定义微内核结构OS的四个方面

1.1操作系统的基本概念

1.1.1操作系统的概念

软件是计算机系统的的灵魂,而软件的核心则为操作系统。
计算机自上而下大致分为四层,如图所示:

第1层硬件
第2层操作系统
第3层应用程序
第4层用户

操作系统是指控制和整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作和资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合,是计算机系统中最基本的系统软件。

1.1.2操作系统的特征

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

(1)并发

并发是指两个或者多个事件在同一时间间隔内发生。
注意同一时间间隔(并发)和同一时刻(并行)的区别。

(2)共享

是指系统中的资源可供内存中的多个并发执行的进程共同使用。
有两种方式,如下:

方式
互斥共享一段时间内只允许一个进程访问该资源
同时访问允许一段时间内由多个进程 “ 同时 ” 访问

(3)虚拟

虚拟是指把一个物理上的实体变为若干逻辑上的对应物。

(4)异步

多道程序环境允许多个程序并发执行,但由于资源有限,进程的执行并不是一贯到底的,而是走走停停的,它以不可预知的速度向前推进,这就是进程的异步性

1.1.3操作系统的目标和功能

目标提供的功能
给多道程序提供良好的运行环境处理机管理、存储器管理、设备管理、文件管理
方便用户使用操作系统向用户提供接口
提供更方便的服务、更高的资源利用率操作系统可扩充机器

1.2操作系统发展史

操作系统的发展历程如下图1.1所示:
在这里插入图片描述

(1)手工操作阶段(此阶段无操作系统)

用户在计算机上算题的所有工作都要人工干预。用户独占全机,资源利用率低;CPU等待手工操作,利用不充分。

(2)批处理阶段(操作系统开始出现)

解决人机矛盾及CPU和I/O设备之间的速度不匹配矛盾。

单道批处理系统:对作业的处理是成批进行的,内存中始终保持一道作业。特征有:自动性、顺序性、单道性
多道批处理系统:允许多个程序同时进入内存并允许他们在CPU中交替地运行,这些程序共享系统中的各种硬/软件资源。资源充分利用,系统吞吐量大,CPU和其他资源保持忙碌状态;但是用户响应的时间较长且无人机交互能力,用户不了解运行情况,不能控制计算机。

(3)分时操作系统

所谓分时技术,是指把处理器的运行时间分成很短的时间片,按时间片轮流把处理器分配给各联机作业使用。主要特征有:同时性、交互性、独立性、及时性

(4)实时操作系统

计算机系统接收到外部信号后及时进行处理,并在严格的时限内处理完接收的事件,目的是完成有时间限制的紧急任务且不需要时间片排队。实时操作系统的主要特点是:及时性和可靠性。

(5)网络操作系统和分布式计算机系统

网络操作系统是把计算机网络中的各台计算机有机的结合起来,提供一种统一、经济而有效的使用各台计算机的方法,实现各台计算机之间数据的互相传送。特点是:网络中各种资源的共享和各台计算机之间的通信。

用于管理分布式计算机系统的操作系统称为分布式计算机系统,特点是:分布性和并行性,且若干计算机相互协助完成同一任务。

(6)个人计算机操作系统

是目前使用最广泛的操作系统,广泛的应用于文字处理、电子表格、游戏中,常见的有Windows、Linux、Macintosh等。

1.3操作系统运行环境

(1)处理器运行模式

计算机系统中,CPU执行的操作系统内核程序是用户自编程程序的管理者,且管理者要执行一些特权指令,而被管理者处于安全考虑不能执行这些指令。
特权指令:是指不允许用户直接使用的指令,如I/O指令、置中断指令、存取用于内存保护的寄存器、送程序状态字到程序状态字寄存器等的指令
非特权指令:是指允许用户直接使用的的指令,它不能直接访问系统中的软硬件资源,仅限于访问用户的地址空间(防止用户对系统造成破坏)。

大多数内核包括四方面:时钟管理、中断机制、原语、系统控制的数据结构及处理(进程管理,存储器管理和设备管理)。

(2)中断和异常的概念

发生异常或者中断时,运行用户态的CPU会立即进入核心态(通过硬件实现)。

定义
中断(外中断)是指来自CPU执行指令外部的事件
异常(内中断)是指来自CPU执行指令内部的事件
在这里插入图片描述

(3)系统调用

系统调用是指用户在程序中调用操作系统所提供的一些子程序,可视为特殊的公共子程序。
按功能分为如下几类:
设备管理、文件管理、进程控制、进程通信、内存管理
用户态到内核态的进入和退出,如下图所示:
在这里插入图片描述

1.4操作系统结构

随着操作系统功能的不断增多和代码规模的不断增大,提供合理的结构,对于降低操作系统复杂度、提升操作系统安全与可靠性来说变得尤为重要。

(1)分层法

在这里插入图片描述

(2)模块化

在这里插入图片描述
衡量模块的独立性有两个主要标准;

内聚性指模块内部各部分间联系的紧密程度。内聚性越高,模块独立性越好
耦合度指模块间相互联系和相互影响的程度。耦合度越低,模块独立性越好

(3)宏内核

从操作系统内核架构划分,可分为宏内核和为内核。
宏内核,也称单内核或大内核,是指将系统的主要功能模块都作为一个紧密联系的整体运行在核心态,从而为用户程序提供高性能的系统服务。目前的主流操作系统都是基于宏内核架构。

(4)微内核

微内核架构,是指将内核中最基本的功能保留在内核,而将哪些不需要在核心态执行的功能移到用户态执行,降低内核的设计复杂性。
在这里插入图片描述
微内核的基本功能:进程(线程)管理、低级存储器管理、中断和陷入处理
微内核结构的优点:扩展性和灵活性、可靠性和安全性、可移植性、分布式计算
微内核主要是性能问题:频繁地在核心态和用户态之间进行切换,开销大,改善运行效率将频繁使用的系统服务移回内核,但又会使微内核容量明显增大。

(5)外核

不同于虚拟机克隆真实机器,另一种策略是对机器进行分区,给每个用户整个资源的一个子集。
外核机制减少了映射层,保持多个虚拟机彼此不发生冲突。

1.5操作系统引导

操作系统引导是指计算机利用CPU运行特定程序,通过程序识别硬盘,识别硬盘分区上的操作系统,最后通过程序启动操作系统。
引导过程:激活CPU、硬件自检、加载带有操作系统的硬盘、加载主引导记录MBR、扫描硬盘分区表、加载分区引导PBR、加载启动管理器,最后加载操作系统。

1.6虚拟机

概念:虚拟机是一台逻辑计算机,是指利用特殊的虚拟化技术,通过隐藏特定计算平台的实际物理特性,为用户提供抽象的、统一的、模拟的计算环境。

管理程序特征
第一类虚拟机(图1.7a)就像一个操作系统,且是唯一 一个 运行在最高特权级的程序
第二类虚拟机 (图1.7b)依赖于Windows、Linux等操作系统分配和调度资源的程序,很像一个普通进程

在这里插入图片描述
运行在两类虚拟机管理程序上的操作系统都称为:客户操作系统,对于第二类虚拟机管理程序,运行在底层硬件上的操作系统称为:宿主操作系统。

1.7本章疑难点

一、并行性与并发性的区别和联系

并行性和并发性是既相似又有区别的两个概念。并行性是指两个或多个事件在同一时刻发生,并发性是指两个或多个事件在同一时间间隔内发生。
在多道程序环境下,并发性是指在一段时间内,宏观上有多个程序同时运行,但在单处理器系统中每个时刻却仅能有一道程序执行,因此微观上这些程序只能分时地交替执行。若在计算机系统中有多个处理器,则这些可以并发执行的程序便被分配到多个处理器上,实现并行执行,即利用每个处理器来处理一个可并发执行的程序。

二、特权指令与非特权指令

所谓特权指令,是指有特殊权限的指令,由于这类指令的权限最大,使用不当将导致整个系统崩溃,如清内存、置时钟、分配系统资源、修改虚存的段表或页表、修改用户的访问权限等。若所有程序都能使用这些指令,则系统一天死机 n 次就不足为奇。为保证系统安全,这类指令只能用于操作系统或其他系统软件,不直接提供给用户使用。因此,特权指令必须在核心态执行。实际上, CPU 在核心态下可以执行指令系统的全集。形象地说,特权指令是那些儿童不宜的东西,而非特权指令是老少皆宜的东西。
为了防止用户程序中使用特权指令,用户态下只能使用非特权指令,核心态下可以使用全部指令。在用户态下使用特权指令时,将产生中断以阻止用尸便用特权指令。所以把用户程序放在用户态下运行,而操作系统中必须使用特权指令的那鄙分程予仕模心念卜运仃,保证了计篁机系
统的安全可靠。从用户态转换为核心态的唯一途径是中断或异常。

三、访管指令与访管中断

访管指令是一条可以在用户态下执行的指令。在用户程序中,因要求操作系统提供服务而有意识地使用访管指令,从而产生一个中断事件(自愿中断),将操作系统转换为核心态,称为访管中断。访管中断由访管指令产生,程序员使用访管指令向操作系统请求服务。
为什么要在程序中引入访管指令呢?这是因为用户程序只能在用户态下运行。若用户程序想要完成在用户态下无法完成的工作,该怎么办?解决这个问题要靠访管指令。访管指令本身不是特权指令,其基本功能是让程序拥有“自愿进管”的手段,从而引起访管中断。
处于用户态的用户程序使用访管指令时,系统根据访管指令的操作数执行访管中断处理程序,访管中断处理程序将按系统调用的操作数和参数转到相应的例行子程序。完成服务功能后,退出中断,返回到用户程序断点继续执行。

四、定义微内核结构OS的四个方面

1)足够小的内核。
2)基于客户/服务器模式。
3)应用“机制与策略分离”原理。机制是指实现某一功能的具体执行机构。策略则是在机制的基础上借助于某些参数和算法来实现该功能的优化,或达到不同的功能目标。在传统的 OS 中,将机制放在 OS 内核的较低层中,把策略放在内核的较高层中。而在微内核 OS 中,通常将机制放在 OS 的微内核中。正因如此,才可以将内核做得很小。
4)采用面向对象技术。基于面向对象技术中的“抽象”和“隐蔽”原则能控制系统的复杂性,进一步利用“对象”“封装”和“继承”等概念还能确保操作系统的正确性、可靠性、易扩展性等。正因如此,面向对象技术被广泛应用于现代操作系统的设计之中。
在这里插入图片描述

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

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

相关文章

微信公众号开发:网页授权

一、背景介绍 微信公众号网页授权,目的就是获取用户相关信息,实现自己的业务逻辑,最终于会得到的信息如下表格,本文对应的任务获取到openid即可满足业务需求,本文内容包括环境、操作步骤及相关内容比较详细&#xff0…

3D可视化工厂是如何实现的?

3D可视化工厂是数字孪生的一种方式,是基于智慧工厂现实场景进行虚拟的可视化工厂。 在传统工作模式下,许多工厂仍然存在着数据孤岛、生产过程缺乏监控及工作效率低等问题。如何进行工厂数字化的集中管理,寻求全新的数据驱动型业务解决方案&am…

5.python 列表切片双冒号[: :]和[:,j]

列表切片1.[::]2.[ :,j]3. [::]操作高阶用法1.[::] 适用于Python中的list(也就是数组)&#xff0c;也适用于numpy科学结构(array等)。 使用方法[start: end : step ]&#xff0c;也就是[ 起始下标 : 终止下标 : 间隔距离 ] 切片范围是&#xff1a; start < x < end,注…

iOS 优雅的定义一些全局常量和函数

我们常常使用 #define 来定义一些宏&#xff0c;全局使用。但是可以采用一些更优雅的方式来实现。 方式一&#xff1a;使用 extern 使用场景&#xff1a;工程内多处用到同一个常量。开发中便与管理某一个模块的全局变量&#xff0c;通常创建一个模块的配置文件&#xff0c;里面…

Qt构建时遇到error LNK2019: 无法解析的外部符号 __imp__glAlphaFunc@8,

在我的印象中如果是遇到无法解析的外部命令&#xff0c;无非就是两种情况 头文件定义了方法没有实现lib库没加 因为我这次写的软件我不确定缺失什么库&#xff0c;所以就先检查方法是否未实现&#xff0c;发现方法都实现了&#xff0c;那就只能是lib库缺失的问题了&#xff0…

【机器学习并行计算】1 MapReduce

1 MapReduce 每个节点计算梯度&#xff0c;然后汇聚到一台机子上&#xff0c;再进行梯度下降。时间还需要考虑通信时间。 通信的方式有两种&#xff1a;共享内存和消息传递&#xff1b;在这里存在多机的情况都是消息传递的方式。 通信耗时 MapReduce 会有风险&#xff0c;因为每…

[附源码]java毕业设计农村电商平台

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Python编程从入门到实践 第九章:类 练习答案记录

Python编程从入门到实践 第九章&#xff1a;类 练习答案记录 练习题导航Python编程从入门到实践 第九章&#xff1a;类 练习答案记录9.1 创建和使用类9.1.1 创建Dog类9.1.2 根据类创建实例练习9-1 餐馆 &#xff1a; 创建一个名为Restaurant 的类&#xff0c; 其方法__init__()…

Android 进程间通信(IPC机制)精炼详解

今天主要对 Android 中的跨进程通信进行总结下&#xff0c;先梳理下里面的涉及的一些概念 进程与线程 进程&#xff1a; 系统中正在运行的一个应用程序&#xff0c;某个程序一旦运行就是一个进程&#xff0c;是资源分配的最小单位&#xff1b;线程&#xff1a; 程序执行的最小…

曙光云使用说明

平台链接 https://ac.sugon.com/ac/home/index.html 控制台界面 创建个人工作目录及上传文件。点击概览页面顶端的 E-Shell 菜单栏&#xff0c;进入所连主机的 Shell 终端。在用户目录下新建个人工作目录&#xff0c;如&#xff1a;mkdir ywj2 安装MiniConda&#xff08;推荐…

Ubuntu20.04 如何开启root账户登陆

环境&#xff1a; 电脑&#xff1a;戴尔7080 系统&#xff1a;Windows 10 专业版 64位 VMware 16.0 &#xff1a;Ubuntu20.04 问题描述&#xff1a; Ubuntu20.04 如何开启root账户登陆 解决方案&#xff1a; 1.以普通用户登录系统&#xff0c;创建root用户的密码 在终端…

Java代码审计——WebGoat XSS

目录 &#xff08;一&#xff09;XSS 常见触发位置 1&#xff0e;JSP 表达式 2&#xff0e;EL &#xff08;二&#xff09;反射型 XSS (三&#xff09; 存储型 XSS &#xff08;四&#xff09;XSS 漏洞修复 配置过滤器&#xff1a; &#xff08;一&#xff09;XSS 常见触发…

HTML期末作业课程设计期末大作业__电影长津湖介绍带视频(6页)

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 摄影作品 | 影视设计网页 | 在线电影 | 视频音频元素 | HTML期末大学生网页设计作业&#xff0c;Web大学生网页 HTML&#xff1a;结构 CSS&#xff1…

uiautomator2的安装,使用,在浏览器中查看页面的信息,简单快捷的ui测试工具,app测试工具(一)

uiautomator2的安装&#xff0c;使用&#xff0c;简单快捷的ui测试工具&#xff0c;app测试工具 安装方法 命令行中输入 pip install uiautomator pip install weditor在andriod studio中启动一个模拟器 启动 python -m weditor即可在浏览器看到弹出的窗口&#xff0c;里面…

【滤波跟踪】基于不变扩展卡尔曼滤波器对装有惯性导航系统和全球定位系统IMU+GPS进行滤波跟踪附matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法 …

核苷酸类化合物库 脂类化合物库参与细胞调控

核苷及核苷酸是机体内的一种重要的内源物质&#xff0c;参与细胞的多种生命进程&#xff0c;如 DNA 和 RNA 合成&#xff0c;信号转导及代谢等。核苷及核苷酸类似物是人工合成的&#xff0c;经过一定化学修饰的物质&#xff0c;可以模拟机体内核苷及核苷酸&#xff0c;参与细胞…

Git合并出现MERGING有效解决方法

Git合并出现MERGING有效解决方法错误描述解决办法参考链接错误描述 我在操作git合并时候意外出现了MERGING&#xff0c;很懵逼&#xff0c;如图所示&#xff1a; 遇到这个问题也是很头疼了&#xff0c;百度了很多方法有说是&#xff1a;“在命令行输入&#xff1a;git reset …

“以赛助教”进校园,CCF大数据与计算智能大赛成高校人才探索实践AI技术的第二课堂!

随着第十届CCF大数据与计算智能大赛&#xff08;简称2022 CCF BDCI&#xff09;的报名通道关闭、《大咖说系列专题报告》收官&#xff0c;“以赛助教”系列活动也正式宣告结束。 CCF大数据与计算智能大赛&#xff08;CCF BDCI&#xff09;由中国计算机学会于2013年创办&#x…

verilog 流水线控制

文章目录Verilog 流水线控制1、关键问题、实现方式及其对比2、实现方式2.1、控流水线输入&#xff1a;根据每一拍的 din_en_d* 打拍&#xff0c;没有最终的 else block2.2、控流水线输入&#xff1a;根据每一拍的 din_en_d* 打拍&#xff0c;有最终的 else block2.3、控流水线每…

真香!宝藏学习方式还可以这样,家人们绝不能错过

文 / 谷雨&#xff08;微信公众号&#xff1a;王不留&#xff09; 《谷雨&#xff1a;告诉大家一个小秘密》一文&#xff0c;辛苦码字半夜&#xff0c;阅读量却扑街&#xff0c;我想根本原因是标题名字起得太差。 前几天看了一个不知真假的截屏&#xff0c;说到小红书上的关键词…