第一章——计算机系统概述

2024-09-06 06:12

本文主要是介绍第一章——计算机系统概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  🌈个人主页:小新_-

🎈个人座右铭:“成功者不是从不失败的人,而是从不放弃的人!”🎈

🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝

🏆所属专栏: 计算机组成原理   欢迎订阅,持续更新中~~~

                      

                               ✨让小新带着你快乐的学习吧~✨

目录

前言

一、操作系统的概念和功能

(一)概念

(二)功能和目标

1、作为系统的资源管理者

2、人机接口

​编辑

3、虚拟机

(三)操作系统的目标

总结

二·、操作系统特征

(一)并发

​编辑

(二)共享

(三)虚拟

(四)异步

总结

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

​编辑

四、操作系统的运行环境

(一)操作系统运行机制

(二)中断和异常

(三)系统调用

总结

七、操作系统体系结构

八、操作系统引导

九、虚拟机


前言

今天,我们进入操作系统的学习。首先我们得明白什么是操作系统。这里简要叙述,本系列博客会详细讲解。这里先用大白话,让读者有个大概的了解。

首先,我们得明白操作系统是一个管理系统的软件,他在用户和硬件管理中起着承上启下的作用。

干说挺抽象的,举个例子吧。

我们打开我们的任务管理器,我们发现有个东西对软件和硬件进行着管理。这个东东,就是操作系统了。

我们常见的操作系统有

1、Windows操作系统
Windows是由微软公司开发的操作系统,广泛应用于个人电脑和服务器。它以图形用户界面和丰富的应用程序生态系统而受到用户青睐。Windows 10和Windows 11是目前较为流行的版本。

2、macOS操作系统
macOS是苹果公司为其Mac电脑系列开发的操作系统,以其优雅的界面和出色的稳定性著称。它与iOS、iPadOS和watchOS等苹果操作系统无缝集成,提供跨平台的用户体验。

3、 Linux操作系统
Linux是一种开源操作系统,基于Unix。它具有高度的可定制性和安全性,被广泛应用于服务器、嵌入式系统和超级计算机。Linux有多个不同的发行版,如Ubuntu、Debian、CentOS等。

4、iOS操作系统
iOS是苹果公司为其iPhone、iPad和iPod Touch等设备开发的操作系统。它以出色的界面设计和强大的应用生态而受到用户喜爱。iOS与macOS、watchOS和tvOS等苹果操作系统无缝集成。

5、Android操作系统
Android是由谷歌公司开发的开源操作系统,基于Linux内核。它广泛应用于智能手机、平板电脑、智能手表、电视等设备。Android具有丰富的应用生态、高度的可定制性和较低的硬件要求。

一、操作系统的概念和功能

(一)概念

操作系统 Operating System OS )是指控制和 管理 整个计算机系统的 硬件和软件 资源,并合理地组织调 度计算机的工作和资源的分配;以 提供给用户和其他软件方便的接口和环境 ;它是计算机系统中最基本的 系统软件
这里有三个要点
如图,是计算机的层次结构
1、操作系统是系 统资源的管理者
2、 向上层提供方便易用的服务
3、 是最接近硬件的一层软件

(二)功能和目标

1、作为系统的资源管理者

补充知识:执行一个程序前 需要将该程序放到内存中 ,才能被 CPU 处理。
用启动 QQ来介绍一下这几个功能:
1、文件管理:当我们打开QQ,我们操作系统会在找到QQ所在的路径(如图所示),这就是文件管理
2、存储器管理:当我们打开QQ时,操作系统会把QQ放入内存当中,以供被CPU处理。这就涉及了存储器管理
3、处理机管理:进入QQ后,QQ程序会被CPU处理,这就是处理机管理
4、设备管理:我们发起视屏通话时,会调用摄像头这一设备,体现了操作系统的设备管理功能

2、人机接口

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

封装在C++中讲过,这里不展开

下面我们来看看几个体现向上层提供服务的例子:

1)GUI:图形化用户接口(Graphical User Interface

用户可以使用形象的图形界面进行操作,而不再需要记忆复杂的命令、参数。

例子:在 Windows 操作系统中,删除一个文件只需要把文件“拖拽”到回收站即可。

2)联机命令接口实例(Windows系统) 联机命令接口=交互式命令接口

Step 1:win键+R
Step 2:输入cmd,按回车,打开命令解释器
Step 3:尝试使用 time 命令

3)脱机命令接口实例(Windows系统)

脱机命令接口= 批处理 命令接口
使用windows系统的搜索功能,搜索C盘中的 *.bat文件,用记事本任意打开一个

4)程序接口

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

小结
特点:用户说一句,

3、虚拟机

需要实现 对硬件机器的拓展
没有任何软件支持的计算机成为 裸机 。在裸机上安装的操作系统, 可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能 更强、使用更方便的机器 通常把覆盖了软件的机器成为 扩充机器 ,又称之为 虚拟机
类比汽车:
发动机 —— 只会转;轮胎 —— 只会滚;
在原始的硬件机器上覆盖一层传动系统 —— 让发动机带着轮子转 —— 使原始的硬件机器得到拓展
操作系统对硬件机器的拓展:将 CPU 、内存、磁盘、显示器、键盘等硬件合理地组织起来,让各种硬件 能够相互协调配合,实现更多更复杂的功能 。普通用户无需关心这些硬件在底层是怎么组织起来工作的,只需直接使用操作系统提供的接口即可

(三)操作系统的目标

目前存在着多种类型的OS,不同类型的OS,其目标各有所侧重。通常的OS,有以下几个目标: 1. 方便性(机器语言难使用, OS可编译)
2. 有效性 (改善资源的利用率及提高系统呑吐量)
3. 可扩充性 (层次化和模块化使之可扩充)
4. 开放性 (遵循同一标准,软硬件兼容)

总结

二·、操作系统特征

(一)并发

1、概念

并发性 是指两个或多个事件在 同一时间间隔 发生。

2、并发性和并行性区别

并行性 是指两个或多个事件在 同一时刻 发生。

3、补充

特别注意:能并行性一定可以并发,但是能并发不一定能并行;
注意( 重要考点 ):
单核 CPU 同一时刻只能执行 一个程序 ,各个程序只能 并发 地执行
多核 CPU 同一时刻可以同时执行 多个程序 ,多个程序可以 并行 地执行

(二)共享

1、概念

共享性是指系统中的 资源 可供内存中 多个并发 执行的 进程共同(共享) 使用。

2、分类

所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问的(即分时共享)
生活实例:
互斥共享方式:使用 QQ 和微信视频。同一时间段内摄像头只能分配给其中一个进程。
同时共享方式:使用 QQ 发送文件 A ,同时使用微信发送文件 B 。宏观上看,两边都在同时读取并发送文件,
说明两个进程都在访问硬盘资源,从中读取数据。微观上看,两个进程是交替着访问硬盘的。

3、并发和共享关系

并发性 指计算机系统中同时存在着多个运行着的程序。
共享性 是指系统中的资源可供内存中多个并发执行的进程共同使用。
通过上述例子来看并发与共享的关系:
使用 QQ 发送文件 A ,同时使用微信发送文件 B
1. 两个进程正在并发执行 (并发性)
如果失去并发性,则系统中只有一个
程序正在运行,则共享性失去存在的
意义
2. 需要共享地访问硬盘资源 (共享性)
如果失去共享性,则QQ和微信不能同
时访问硬盘资源,就无法实现同时发送文件,也就无法并发
送文件,也就无法并发

(三)虚拟

1、概念

虚拟 是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。

2、分类

Yo~ 用一个例子来理解
背景知识:一个程序 需要放入内存 并给它 分配 CPU 才能执行
GTA5 需要 4GB 的运行内存, QQ 需要 256MB 的内存,迅雷需要 256MB 的内 存,网易云音乐需要256MB 的内存 ……
我的电脑: 4GB 内存
问题一:这些程序同时运行需要的内存远大于 4GB ,那么为什么它们还可以 在我的电脑上同时运行呢?
答:这是虚拟存储器技术。实际只有 4GB 的内存,在用户看来似乎远远大于4GB。 虚拟技术中“空分复用”技术
某单核 CPU 的计算机中,用户打开了以下软件。。。
问题二:既然一个程序需要被分配 CPU 才能正常执行,那么为什么单核 CPU 的电脑中能同时运行这么多个程序呢?
答:这是虚拟处理器技术。实际上只有一个单核 CPU ,在用户看来似乎有 6个 CPU在同时为自己服务。 虚拟技术中的“时分复用 技术”。微观上处理机在 各个微小的时间段内交替 着为各个进程服务

(四)异步

1、概念

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

总结

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

四、操作系统的运行环境

(一)操作系统运行机制

1、程序的运行过程

2、两类程序

  1. 我们普通程序员写的程序就是“应用程序
  2. 微软、linux社区有一帮人负责实现操作系统,他们写的是“内核程序”组成了“操作系统内核”,或简称“内核内核是操作系统最重要最核心的部分,也是最接近硬件的部分。操作系统的功能未必都在内核中
对操作系统而言,这两种程序的作用不同, 内核程序是应用程序的管理者 ,因此
内核程序 ( 管理程序)要执行一些 特权指令 ,而用户自编程序 ( 被管理程序)出于
安全考虑不能执行这些指令。

3、两种状态

CPU 有两种状态, 内核态和用户态
处于 内核态时 ,说明此时正在 运行的是内核程序, 此时 可以执行特权指令
处于 用户态时 ,说明此时正在 运行的是应用程序, 此时 只能执行非特权指令
拓展: CPU 中有一个寄存器叫 程序状态字寄存器( PSW ,其中有个二进制位, 1 表示
“内核态”, 0 表示“用户态”
别名 :内核态 = 核心态 = 管态 ;用户态 = 目态
4、变态
内核态->用户态          一条修改PSW的特权指令
用户态->内核态         由中断引起,硬件自动完成

(二)中断和异常

1、中断的作用

CPU会运行俩种程序——内核程序和应用程序

中断会使CPU由用户态变为内核态,重新多会对CPU的控制权,是操作系统内核多会CPU使用权的唯一途径,从而实现并发

2、分类

1)内中断(也称为异常)

与当前执行的指令有关,中断信号来自CPU内部

类型:

  • 自愿中断(Trap):由陷入指令引发,通常是应用程序故意引起的,如系统调用。
  • 故障(Fault):由错误条件引起,可能被内核程序修复,如缺页故障。
  • 终止(Abort):由致命错误引起,内核程序无法修复,通常会导致程序终止,如非法指令或访问越界。

2)外中断

与当前执行的指令无关,中断信号来自CPU外部

类型:

  • I/O中断:由输入/输出设备产生,用于处理设备的数据读写请求。
  • 时钟中断:由系统时钟产生,用于执行定时任务。
  • 控制台中断:由控制台设备产生,用于处理用户输入等。
  • 硬件故障中断:由系统硬件故障产生,如内存故障、电源掉电等,这类中断通常是不可屏蔽的。
  • 外部中断的触发方式:可以是电平触发或边沿触发,电平触发是指当外部中断引脚的电平满足一定条件时触发中断,而边沿触发是指当外部中断引脚的电平发生跳变时触发中断.

3、中断机制的基本实现原理

1)检查中断信号

对于内中断:CPU在执行指令时会检查是否有异常发生

对于外中断:每个指令周期末尾,CPU都检查是否有外中断信号需要处理

2)找到相应的中断处理程序

通过中断向量表实现

(三)系统调用

总结

七、操作系统体系结构

八、操作系统引导

操作系统引导:
①CPU从一个特定主存地址开始,取指令,执行ROM中的引导程序(先进行硬件自检,再开机)②将磁盘的第一块﹣﹣主引导记录 读入内存,执行磁盘引导程序,扫描分区表
③从活动分区(又称主分区,即安装了操作系统的分区)读入分区引导记录,执行其中的程序     ④从根目录下找到完整的操作系统初始化程序(即 启动管理器)并执行,完成"开机"的一系列动作

九、虚拟机

1、概念

使用虚拟化技术,将一台物理机器虚拟化为多态虚拟机器(VM),每个虚拟机器都可以独立运行一个操作系统,也称之为虚拟机管理程序/虚拟机监控程序

2、俩类虚拟机

3、对比

思维导图

 最后,感谢大家的观看!

这篇关于第一章——计算机系统概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1141226

相关文章

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

软件设计师备考——计算机系统

学习内容源自「软件设计师」 上午题 #1 计算机系统_哔哩哔哩_bilibili 目录 1.1.1 计算机系统硬件基本组成 1.1.2 中央处理单元 1.CPU 的功能 1)运算器 2)控制器 RISC && CISC 流水线控制 存储器  Cache 中断 输入输出IO控制方式 程序查询方式 中断驱动方式 直接存储器方式(DMA)  ​编辑 总线 ​编辑

【编程底层思考】垃圾收集机制,GC算法,垃圾收集器类型概述

Java的垃圾收集(Garbage Collection,GC)机制是Java语言的一大特色,它负责自动管理内存的回收,释放不再使用的对象所占用的内存。以下是对Java垃圾收集机制的详细介绍: 一、垃圾收集机制概述: 对象存活判断:垃圾收集器定期检查堆内存中的对象,判断哪些对象是“垃圾”,即不再被任何引用链直接或间接引用的对象。内存回收:将判断为垃圾的对象占用的内存进行回收,以便重新使用。

Java 多线程概述

多线程技术概述   1.线程与进程 进程:内存中运行的应用程序,每个进程都拥有一个独立的内存空间。线程:是进程中的一个执行路径,共享一个内存空间,线程之间可以自由切换、并发执行,一个进程最少有一个线程,线程实际数是在进程基础之上的进一步划分,一个进程启动之后,进程之中的若干执行路径又可以划分成若干个线程 2.线程的调度 分时调度:所有线程轮流使用CPU的使用权,平均分配时间抢占式调度

java集合的概述

集合就是一个容器,我们可以把多个对象放入的容器中。就像水杯(假设容量可以不断扩大)一样,你可以往水杯中不断地添加水,既然是水杯,你就不能往里添加沙子,也就是说集合中添加的对象必须是同一个类型的(引用类型,而不能是基本类型)。 看到集合的介绍会让我们的想起数组,那么集合和数组有什么区别呢? 首先,数组的大小是固定的,而集合理论上大小是不限的。 其次,数组既可以存储基本数据类型的数据,也可以存储

【CSS in Depth 2 精译_023】第四章概述 + 4.1 Flexbox 布局的基本原理

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一章 层叠、优先级与继承(已完结) 1.1 层叠1.2 继承1.3 特殊值1.4 简写属性1.5 CSS 渐进式增强技术1.6 本章小结 第二章 相对单位(已完结) 2.1 相对单位的威力2.2 em 与 rem2.3 告别像素思维2.4 视口的相对单位2.5 无单位的数值与行高2.6 自定义属性2.7 本章小结 第三章 文档流与盒模型(已

《计算机视觉工程师养成计划》 ·数字图像处理·数字图像处理特征·概述~

1 定义         从哲学角度看:特征是从事物当中抽象出来用于区别其他类别事物的属性集合,图像特征则是从图像中抽取出来用于区别其他类别图像的属性集合。         从获取方式看:图像特征是通过对图像进行测量或借助算法计算得到的一组表达特性集合的向量。 2 认识         有些特征是视觉直观感受到的自然特征,例如亮度、边缘轮廓、纹理、色彩等。         有些特征需要通

Unity Adressables 使用说明(一)概述

使用 Adressables 组织管理 Asset Addressables 包基于 Unity 的 AssetBundles 系统,并提供了一个用户界面来管理您的 AssetBundles。当您使一个资源可寻址(Addressable)时,您可以使用该资源的地址从任何地方加载它。无论资源是在本地应用程序中可用还是存储在远程内容分发网络上,Addressable 系统都会定位并返回该资源。 您

Flutter 中的低功耗蓝牙概述

随着智能设备数量的增加,控制这些设备的需求也在增加。对于多种使用情况,期望设备在需要进行控制的同时连接到互联网会受到很大限制,因此是不可行的。在这些情况下,使用低功耗蓝牙(也称为 Bluetooth LE 或 BLE)似乎是最佳选择,因为它功耗低,在我们的手机中无处不在,而且无需连接到更广泛的网络。因此,蓝牙应用程序的需求也在不断增长。 通过阅读本文,您将了解如何开始在 Flutter 中开