操作系统-操作系统引论(1)

news2024/9/30 3:27:03

操作系统的基本概念

    • 一、操作系统的定义
    • 二、操作系统的产生与发展
    • 三、操作系统的特征
    • 四、操作系统的功能
    • 五、操作系统的运行机制
    • 六、操作系统的体系结构

一、操作系统的定义

  • 资源管理的观点:操作系统是控制和管理计算机的软、硬件资源,并且合理的组织计算机的工作流程,以及方便用户的程序集合(操作系统的本质)。
  • 用户的观点:操作系统是配置在计算机硬件的第一层软件,是对硬件系统的第一次扩充。
    在这里插入图片描述
    操作系统是紧贴硬件(裸机)之上,所有其他软件之下的系统软件

二、操作系统的产生与发展

1.1946年第一代计算机没有操作系统
人工操作: 对计算机的操作完全取决人工操作方式(用纸带机打点输入)。
主要缺点:

  • 用户完全独占计算机。计算机的全部资源只供一个用户使用。
  • 计算机等待人工操作。人机速度矛盾导致资源利用率极低。

2.1958年第二代计算机有了监控系统
批处理阶段:
(1)单道批处理:引入脱机输入(用磁带保存输入的内容), 并有监控系统负责控制整个过程。
优点:缓解了一定程度的人机矛盾,资源利用率有所提高。
缺点:人机速度的矛盾导致资源利用率很低。
(2)多道批处理:往磁带中一次输入多个程序。操作系统正式产生,并引入中断技术。各个程序并发执行。
优点:多道程序并发执行,共享计算机资源,资源利用率大大提升,系统吞吐增大。
缺点:用户响应时间长,没有人机交互功能。
在这里插入图片描述
3.1964年第三代计算机上操作系统得到极大的发展
**分时操作系统:**计算机以时间片为单位轮流为各个用户提供服务。
优点:用户请求被及时响应,解决了人机交互的问题。
缺点:不能优先处理一些紧急任务。
4.1974年第四代计算机操作系统向多元化方向发展
优点:能够优先处理一些紧急的任务。
实时操作系统的主要特点是 及时性可靠性
还有其它操作系统:网络操作系统;分布式操作系统。

三、操作系统的特征

  • 并发性:指两个或多个事件在同一时间间隔内发生,这些事件在宏观上是同时发生的,但微观条件下是交替发生的。
  • 共享性:资源共享,计算机的资源可供内存中多个并发执行的程序使用。并发性和共享性互为存在条件。
  • 虚拟性:是指通过某种技术手段把一个物理实体变成多个逻辑上的对应物,物理是实际存在的,逻辑是虚的,用户的一种感觉。例如:SPOOLing技术把一台物理上输入输出的设备变为多个逻辑上对应的输入输出设备。
  • 异步性(不确定性):多个程序并发执行时,由于资源有限,进程总是以不可预知的速度向前推进。即发生的顺序不同。

四、操作系统的功能

1.进程管理:对处理机的分配和运行实施有效管理。
2.存储管理:方便用户使用内存;提高内存的利用率;从逻辑上扩充内存保护。
3.设备管理:完成用户程序请求的I/O操作,为用户程序分配I/O设备
4.文件管理:大量的信息以文件的形式放在外存,对信息的管理也就是对文件的管理
5.用户接口

  • 命令接口:分为联机命令接口和脱机命令接口,图形用户界面(GUI)
  • 程序接口:也称系统调用。

五、操作系统的运行机制

两种指令,两种处理机状态,两种程序。
1.两种指令:

  • 特权指令:内存清零,不允许用户程序使用。
  • 非特权指令:普通运算指令。

2.两种处理机状态:
用程序状态字寄存器(PSW)中的标志位来标记处理机的状态,如0表示用户态,1表示核心态。

  • 用户态(目态)只能执行非特权指令
  • 核心态(管态)特权指令和非特权指令都能执行。

3.两种程序:

  • 内核程序:操作系统的内核程序可以执行特权指令和非特权指令,运行在核心态。
  • 应用程序:只能执行非特权指令,运行在用户态。

六、操作系统的体系结构

内核是计算机上配置的底层软件,及操作系统的核心,包括时钟管理,中断处理,原语(原语具有原子性,不可被中断,运行时间短,调用频繁)。
体系结构:

  • 大内核:将操作系统的主要功能模块作为系统内核,运行在核心态。优点是高性能;缺点是内核代码庞大,结构混乱,难以维护
  • 微内核:只把最基本的功能保留在内核,优点是内核功能少,结构简单,方便维护;缺点是需要频繁的在核心态和用户态之间调用,性能低。

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

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

相关文章

通过C++对【图】进行抽丝剥茧(包括广度、深度优先遍历,求最小生成树,求最短路径)

目录 一.图的基本概念 二.图的存储结构 1.邻接矩阵 (1)无向图、有向图矩阵存储 (2)实现: 2.邻接表 (1)无向图邻接表存储 (2)有向图邻接表存储 (3&a…

windows下运行ROSEFusion

其实LZ已经不再是两年前的Linux小白了,至于为什么要在windows下配置环境,是因为LZ在Linux下已经成功编译成功了ROSEFusion,但运行时一直报错Frame could not be processed,在github下的issue里面查询得知可能是CUDA版本问题。另外…

VM16 Pro+ubuntu20.04.5+GAMIT10.71安装(20230118更新包)

VMware Workstation 16 Proubuntu20.04GAMIT10.71安装测绘老中医(qq8212714)(2023-01-20)NOTE:安装环境:Windows 10 专业版,64 位操作系统, 基于 x64 的处理器1、首先在计算机中安装VMware Workstation 16 …

交叉编译(全志)

文章目录一、交叉编译概念二 、香橙派交叉编译3.带WiringPi库的交叉编译一、交叉编译概念 交叉编译,就是:在一种平台上编译,编译出来的程序,是放到别的平台上运行即编译的环境,和运行的环境不一样,属于交叉…

【基础】高低位和大小端

大小端模式出现是为了兼容不同CPU采用的不同的指令集 PowerPC架构和x86架构采用的是不同的CPU指令集。PowerPC采用精简指令集(RISC,reduced instruction set computer),x86指的是特定微处理器执行的一些计算机语言指令集。 Powe…

Obsidian 插件(一):DataView 的使用

文章目录DataView 的使用一、 环境配置二、 入门介绍1、 快速开始2、 页面和字段3、 创建查询4、 系统字段三、 接口讲解1、 表达式1.1 概述1.2 表达式类型1.3 特定类型的交互2、 函数2.1 构造器2.2 常用函数2.3 工具函数DataView 的使用 一、 环境配置 首先,我们…

ESP32设备驱动-DHT11温度湿度传感器驱动

DHT11温度湿度传感器驱动 1、DHT11介绍 DHT11数字温湿度传感器是一种复合传感器,包含一个经过校准的温湿度数字信号输出。 应用了专用的数字模块采集技术和温湿度传感技术,确保产品具有高可靠性和优异的长期稳定性。 该传感器包括一个电阻感湿元件和一个 NTC 温度测量装置,…

LeetCode题目笔记——1814. 统计一个数组中好对子的数目

文章目录题目描述题目难度——中等方法一:模拟(超时)(参考)代码/Python方法二:优化代码总结题目描述 给你一个数组 nums ,数组中只包含非负整数。定义 rev(x) 的值为将整数 x 各个数字位反转得…

Kong Api Gateway

Kong Api Gateway什么是API 网关为什么是 Kong安装Kong通过包管理器来安装启动Kong配置文件详解1、常规配置2、Nginx注入配置3、数据库存储配置4、数据库缓存配置DNS解析器配置其他杂项配置API 管理详解1、查看节点信息2、查看节点状态3、添加服务4、查询服务5、查询所有服务6、…

golang入门笔记——Hertz

文章目录Hertz介绍应用层路由层协议层传输层HZ脚手架Hertz的使用一个简单的案例:利用Hertz监听8080端口并编写/ping的get处理函数Hertz和gin一样,提供了分组路由的功能Hertz路由的匹配优先级:静态路由>命名路由>通配路由参数绑定&#…

SD卡读写实验(SPI模式)

对于 SD 卡的 SPI 模式而言,采用的 SPI 的通信模式为模式 3,即 CPOL1,CPHA1,在 SD 卡 2.0 版本协议中,SPI_CLK 时钟频率可达 50Mhz。SD 卡的 SPI 模式,只用到了 SDIO_D3(SPI_CS)、SD…

16投影矩阵和最小二乘法

投影矩阵和最小二乘法 投影矩阵 **投影矩阵P与向量b相乘将会把投影到的列空间A中。**那么现在我们来考虑两个极端的例子,这两个极端的例子将会加深我们对投影矩阵的理解。 如果b在矩阵A的列空间里,那么 Pb b 如果b垂直于矩阵A的列空间,那…

经典同步问题

同步问题是一个复杂的问题,但是它也有自己的方法去处理、去分析。PV操作系统的解题思路:关系分析。找出题目中描述的各个进程,分析它们之间的同步、互斥关系。(从事件的角度分析)整理思路。根据各进程的操作流程确定P、V操作的大致顺序。设置…

Java设计模式-备忘录模式、备忘录模式应用场景是什么、又怎么使用

继续整理记录这段时间来的收获,详细代码可在我的Gitee仓库SpringBoot克隆下载学习使用! 6.11 备忘录模式 6.11.1 定义 又称快照模式,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存此状态&…

深入学习Vue.js(十一)内建组件和模块

文章目录KeepAlive组件的实现原理1.KeepAlive组件实现原理2.KeepAlive组件的代码实现(1)shouldKeepAlive(2)keepAliveInstance(3)keptAlive(4)move函数3.include和exclude4.缓存策略…

视频生成动画数据OpenPose+OpenCV

我们只是使用OpenPose,不包括深度学习和代码的部分,会用就OK。 1.打开OpenPose的官网,直接进入安装页面,地址如下: OpenPose: OpenPose Doc - Installation 2.安装的说明,大家要好好看,我们就…

吴恩达机器学习课程笔记:多元梯度下降法

1.吴恩达机器学习课程笔记:多元梯度下降法 笔记来源:吴恩达机器学习课程笔记:多元梯度下降法 仅作为个人学习笔记,若各位大佬发现错误请指正 1.1 多元特征(变量) 每一列代表一个特征,例如&…

【Github CLI】Take GitHub to the command line

目录儿~一、Git、Github、GitLab二、Github CLI——gh2.1 gh简介2.2 gh的使用2.21 Github身份验证(必选)2.22 常用命令(1)在Github仓库中打开当前项目(2)gh配置 gh config(3)克隆仓库…

(16)go-micro微服务jaeger链路追踪

文章目录一 jaeger链路追踪介绍什么是链路追踪:链路追踪主要功能:二 jaeger链路追踪作用三 jaeger链路追踪主要特性四 jaeger链路追踪原理图1.链路调用原理2. 一次调用链分析3.链路追踪存储与调用五 jaeger链路追踪五个重要组件六 jaeger链路追踪安装1.d…

Junit框架

JUnit 是一个 Java 编程语言的单元测试框架。环境配置创建maven项目&#xff0c;导入Junit配置<!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api --> <dependency><groupId>org.junit.jupiter</groupId><artifactId&g…