《操作系统 - 清华大学》第 0 章:操作系统概述 —— 内容概述

news2024/9/21 16:42:51

介绍一下有关操作系统的一个基本的一个概述:
在这里插入图片描述

  1. 比如说什么是操作系统?
  2. 为什么要学习操作系统,以及如何学好操作系统?
  3. 然后接下来会介绍一下,当前操作系统一些实例以及操作系统的历史,它的演变的一个过程。最后会给大家再把操作系统的结构给总结一下。

这是我们这章的内容,也希望通过第一节的介绍能够对操作系统有一个大致的了解,那随着我们进一步的讲解,大家会对操作系统有更深入的一个展开的一个全面的一个理解。

在这里插入图片描述
这门课实际上是操作系统的一个基本原理,会涉及到一些基本的概念。这里面主要会讲到操作系统的一些最主要的内容,比如说中断、系统调用、内存管理、进程及线程管理、还有就是调度(就是进程线程调度、CPU 调度)、还有就是结合的这个进程管理所带来的同步互斥的一问题。最后还有一部分是跟文件系统 IO 相关的一些知识,给大家做一个全面的展开,那这上面都是涉及到基本的一些概念以及原理。

在这里插入图片描述
那我们都知道操作系统其实它是一个很复杂的一个系统软件,所以我们希望能够把这些原理能和我们的这个具体的代码能够对应起来,所以我们还有一些是关于这个实际操作系统的一些练习。

  1. 那这个操作系统不是用我们现在常见的 Windows 或 Linux 这种很复杂的操作系统,而是基于一个我们教学用的一个小型的一个操作系统,叫 uCore。在这个操作系统之上我们会做一些实验,当然这些实验也不是说是大家都必须要去完成,而是说希望大家能够通过对这个 uCore 操作系统的理解,能够让原理和我们这个实际的 OS 能够建立一个联系,从而可以看到原来这些概念其实在我们操作系统里面是这么设计和实现的。从而可以让大家对这个知识理解更加透彻,这是我们一个目标。
  2. 同时在这里面会涉及到一些基本的一些概念或者一些故事等等,也会做一些讲解,这是操作系统课的一些情况。

在这里插入图片描述
在实验环节我们会围绕着操作系统是怎么构成的。

  1. 从最开始的准备,就是说我们怎么能够在某一个实验环境中能够把这个操系统给搭建起来,然后建立好它的这个开发环境,这是一个准备的过程。
  2. 第二过程就是说操作系统启动,启动完之后,对我们的计算机系统的物理内存进行管理。
  3. 以及进一步会去对它的这个内存作为虚拟化的管理,使得我们的程序可以有更大、更丰富的资源去利用。
  4. 再接下来就是怎么考虑在我们这个计算机系统里面同时可以跑多个不同的程序,当然这些程序是以线程或者是进程的形式存在。
  5. 有了这些进程和线程之后,我们怎么考虑能够让这些不同的这些程序能够占用 CPU 去执行,这涉及到所谓的 CPU 调度问题。
  6. 同时在这个调度过程中有可能多个程序或多个进程线程,它们之间访问共同的资源,就涉及到一个怎么地去协调它们,使它们能够同步互斥地来访问资源,从而可以使整个系统的正确性,或者是利用率,得到很大的一个提高或者保障,这是涉及到我们的同步互斥的一些知识。
  7. 最后会涉及到文件系统,其实现在用计算机的很多了,都知道要把我们的文档和我们的数据以文件的形式,甚至把我们执行程序是以文件形式,存在这个文件系统之上。那我们怎么设计文件系统,这实际是我们这个实验环节会涉及的一些内容。

这些内容是和我们的前面介绍原理都是匹配的,所以说我们这门课可以看到,分了两部分和我们通常的这个操作会有点不太一样。一部分是基本的概念原理,一部分是实验。同时希望大家能够在实验和原理概念之间搭一个桥,两个把二者有机的结合起来,从而知道为什么要这么做,以怎么这么做,这是一个学习操作系统要去学习和掌握的一个主要工作。
在这里插入图片描述

好,那在学习操作系统之前,我们其实还需要一些前面的知识点,有必要去了解计算机体系结构和计算机组成原理,知道这一块是怎么回事。

  1. 当然,你有可能是对一些抽象的CPU 有一定了解,那也可能是对具体的 CPU,比如说8086、80386、arm 等等,这些 CPU 有一定了解。那么在这门课里面我们的原理部分不会涉及具体的 CPU,但是咱们的实验环节我们是用的是一个就基于80386这么一个 CPU 来设计这个具体的操作系统的实现,这是一块内容。
  2. 第二部分需要去了解数据结构,因为这里面会涉及到一系列的算法,一系列数据怎么去组织管理。这一块都和我们之前的课《数据结构》有紧密的联系,如果大家对数据结构有一个比较清楚理解,那对理解操作系统在设计实验中用到的一些方法技巧会有更深刻的一个掌握。
  3. 第三个:既然操作系统是个软件,它必然会涉及到怎么用相应的语言来编写。就目前的操作系统来说,主要还是 c 语言和汇编语言,在这个实际的操作系统 uCore 里面主要是 c 语言,有一小部分是汇编语言,所以大家对 C 和 X86 的汇编要一定了解就 OK 了。当然在实验部分的环节会给大家就这部分内容做一部分的讲解,便于大家能够更好地去理解我们这个实验用到的这个操作系统。

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

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

相关文章

wsl2桥接网络 ubuntu到弃坑到又跳坑

搜索Hyper-V image.png 如下图进入虚拟交换机管理器 image.png image.png C:\Users\Administrator下存放 ; 这是 WSL 2 的配置文件 [wsl2] processors4 ; 设置 WSL 2 可以使用的最大 CPU 核心数为 4,自行修改 memory4GB …

使用 KMeans 聚类算法 对鸢尾花数据集进行无监督学习的简单示例

代码功能 主要功能: 加载数据集: 代码使用 load_iris() 函数加载了鸢尾花数据集(Iris dataset)。这个数据集包含 150 条样本,每条样本有 4 个特征,对应于 3 种不同的鸢尾花。 KMeans 聚类: 使用…

Flowable基础篇

Flowable基础篇 课程环境说明: JDK8Flowable6.7.2MySQL8 一、基础知识科普 1.工作流发展 BPM(BusinessProcessManagement),业务流程管理是一种管理原则,通常也可以代指BPMS(BusinessProcessManagementSuite),是一个实现整合不同…

JAVA毕业设计178—基于Java+Springboot+vue的智能家具管理系统(源代码+数据库+万字论文)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootvue的智能家具管理系统(源代码数据库万字论文)178 一、系统介绍 本项目前后端分离(可以改为ssm版本),分为用户、管理员两种角色 1、用户&#xff1…

从HarmonyOS升级到HarmonyOS NEXT-环信SDK数据迁移

2024年6月21日 HarmonyOS NEXT (后续称之为 NEXT) 正式发布,随着 NEXT 稳定版的逐渐临近,各个应用及SDK正在忙于适配 NEXT 系统,同样也面临着系统升级时如何对数据的迁移适配。本文通过使用环信 SDK 介绍如何从 Harmon…

计算机毕业设计推荐-基于python大数据的个性化图书数据可视化分析

💖🔥作者主页:毕设木哥 精彩专栏推荐订阅:在 下方专栏👇🏻👇🏻👇🏻👇🏻 实战项目 文章目录 实战项目 一、个性化图书数据可视化分析-项…

带你0到1之QT编程:十四、QV/HBoxLayout和QStatckedWidget双剑合璧

此为QT编程的第十四谈!关注我,带你快速学习QT编程的学习路线! 每一篇的技术点都是很很重要!很重要!很重要!但不冗余! 我们通常采取总-分-总和生活化的讲解方式来阐述一个知识点! …

【我的 PWN 学习手札】tcache extend

目录 前言 一、利用手法 二、流程演示 (1)三块物理相邻的堆块 (2)溢出修改 size (3)释放该 chunk (4)重新申请该 chunk (5)释放第三块 chunk&#x…

算法-Init

(1)有限性(Finiteness):算法必 需在有限步骤内结束; (2)确定性(Definiteness):算法的每一个步骤必须清晰无歧义地定义; (3…

科研入门学习

学习视频链接 为什么要读论文 读哪些论文 论文的分类 论文质量 如何找论文 根据领域大牛的名字进行搜索查看高水平论文引用的论文,高水平论文引用的论文很大程度也是高水平的论文 如何整理论文 如何读论文 读论文的困境 不同人群阅读差异 读论文的方式 论文的结构…

叉车限速器外接LED屏,监督厂区安全,让速度慢下来!

叉车限速器外接LED屏,可实时显示当前叉车行驶中的速度,单/双面电子显示屏供用户选择,方便企业人员监控司机当前行驶速度,当速度超过指定值时,叉车速度报警系统发出声光警示,提醒行人、司机,超速…

【ArcGIS微课1000例】0121:面状数据共享边的修改方法

文章目录 一、共享边概述二、快速的修改办法1. 整形共享边2. 修改边3. 概化边缘一、共享边概述 面状数据共享边指的是两个或多个面状数据(如多边形)共同拥有的边界。在地理信息系统(GIS)、三维建模、大数据分析等领域,面状数据共享边是描述面状空间数据拓扑关系的重要组成…

C / C++的内存管理

前言 Hello,我又回来了,今天我们将继续学习C部分,今天我们将承接前面的知识,继续学习C的内存管理,今天的内容较为重要,所以我们废话不多说,我们还是按例三连上车,开始我们今天内容&…

【图灵完备 Turing Complete】游戏经验攻略分享 Part.4 处理器架构

比较有难度的一个部分。 运算单元ALU,其实就是通过OP选择计算方式,然后选通某个计算,之后输出。每个计算逐个实现就行了。 下面是一个优化占地面积的ALU,变得紧凑了一点。 下面是一个简单的OP选通原理线路。判断是立即数寻址&…

吹爆吊打 GPT-4 的大模型新王者Reflection 70B,是否言过其实?

引言 一觉睡西天,谁知梦里乾坤大。只身眠净土,只道其中日月长。 小伙伴们好,我是微信公众号《小窗幽记机器学习》的小编:卖铁观音的小男孩。今天这篇小作文主要介绍这几天网上狂吹的开源新晋王者Reflection 70B,该模型…

【医疗大数据】医疗保健领域的大数据管理:采用挑战和影响

选自期刊**《International Journal of Information Management》**(IF:21.0) 医疗保健领域的大数据管理:采用挑战和影响 1、研究背景 本研究的目标是调查阻止医疗机构实施成功大数据系统的组织障碍,识别和评估这些障碍,并为管理…

Qemu开发ARM篇-1、环境搭建篇

文章目录 1、目标2、欢迎来到qemu世界3、开发环境4、依赖安装5、编译安装qemu 1、目标 我们的目标是在x86平台上搭建上arm开发环境,及在x86平台模拟一台arm设备,以达到能快速在x86平台上学习arm相关知识,如uboot启动、kernel开发调试等&…

实时美颜的技术突破:视频美颜SDK与直播美颜工具的开发详解

如今,视频美颜SDK和直播美颜工具的开发,为各类应用提供了技术支持,使得美颜效果更加智能、高效。本文将详细探讨实时美颜的技术突破及其在视频美颜SDK和直播美颜工具中的应用与开发。 一、视频美颜SDK的核心技术 1.人脸检测与特征点识别 视…

稀土抗紫外屏蔽剂在涂层中的应用

稀土抗紫外屏蔽剂的主要作用是有效地吸收或阻挡紫外线,从而保护材料或表面免受紫外线的伤害,延长其使用寿命。 稀土抗紫外屏蔽剂在涂层上的应用具有以下显著优势: 1. 增强涂层的耐久性:稀土抗紫外屏蔽剂能够有效吸收和散射紫外线…

Linux常用命令(部分学习待继续补充)

pwd print working directory 打印当前的工作目录 / 根目录 ls list 列出当前目录下的所有文件 ls / ls -h(human) ls -l(long) cd change directory 更改目录 cd … 回到上一级目录 ls list ls -l 会列出文件的详细信息 第一个字符是-表示普通文件 d表示是一个目录 rwx read …