当前位置: 首页 > article >正文

理解操作系统(一)冯诺依曼结构和什么是操作系统

  1. 认识冯诺依曼系统
  2. 操作系统概念与定位
  3. 深⼊理解进程概念,了解PCB
  4. 学习进程状态,学会创建进程,掌握僵⼫进程和孤⼉进程,及其形成原因和危害

1. 冯诺依曼体系结构

我们常⻅的计算机,如笔记本。我们不常⻅的计算机,如服务器,⼤部分都遵守冯诺依曼体系。

截⾄⽬前,我们所认识的计算机,都是由⼀个个的硬件组件组成

  • 输⼊单元:包括键盘, ⿏标,扫描仪, 写板等
  • 中央处理器(CPU):含有运算器和控制器等
  • 输出单元:显⽰器,打印机等

关于冯诺依曼,必须强调⼏点:

  • 这⾥的存储器指的是内存
  • 不考虑缓存情况,这⾥的CPU能且只能对内存进⾏读写,不能访问外设(输⼊或输出设备)
  • 外设(输⼊或输出设备)要输⼊或者输出数据,也只能写⼊内存或者从内存中读取。
  • ⼀句话,所有设备都只能直接和内存打交道。

对冯诺依曼的理解,不能停留在概念上,要深⼊到对软件数据流理解上,请解释,从你登录
上qq开始和某位朋友聊天开始,数据的流动过程。

 2. 操作系统(Operator System)

以是什么,为什么,怎么办,三个方面讲解

2-1 什么是操作系统


书上:任何计算机系统都包含⼀个基本的程序集合,称为操作系统(OS)。

笼统的理解,操作系统包括:

  • 内核(进程管理,内存管理,⽂件管理,驱动管理)
  • 其他程序(例如函数库,shell程序等等)

操作系统就是:一个基本的程序集合,是进行软硬件管理的软件。

大家都知道,安卓手机就是由Linux写的,那他的系统是怎么来的,和电脑的全都不一样吗,

并不是,手机他只改变了外壳,内核还是那些。


2-2 设计OS为了什么

  •  对下,与硬件交互,管理所有的软硬件资源

  • 对上,为⽤⼾程序(应⽤程序)提供⼀个良好的执⾏环境


图片解释

1.软硬件体系结构层状结构

证明操作系统是高内聚低耦合,例如,台式电脑,有这不同厂商的东西共同组织成,不会因为不是一家产的而停止工作
2.访问操作系统,必须使用系统调用--其实就是函数,只不过是系统提供的

不能越级访问

3.我们的程序,只要你判断出它访问了硬件,那么它必须贯穿整个软硬件体系结构!

例如,写printf,是指令吧,到最后显示在显示屏上。
4.库可能在底层封装了系统调用

2-3 理解操作系统

在整个计算机软硬件架构中,操作系统的定位是:⼀款纯正的“搞管理”的软件
首先就要知道操作系统是如何在硬件和用户之间游刃有余的,

操作系统在硬件和用户之间的关系:学生、辅导员、校长
比喻背景

将计算机系统类比为一所学校,硬件是学校的物理设施(如教室、图书馆、实验室),用户是学校外的社会需求方(如家长、企业),而操作系统则是学校内部的管理体系。

  • 学生:代表用户程序或应用程序(如浏览器、游戏、办公软件)。
  • 辅导员:代表操作系统内核(负责直接管理资源和调度)。

1. 学生(用户程序)

  • 职责:完成具体任务(如学习、实验、活动)。
  • 需求:需要资源(CPU时间、内存、磁盘空间、网络带宽)。
  • 限制:不能直接操作硬件,必须通过辅导员(内核)申请资源。

例子:

  • 学生A(浏览器程序)需要进入实验室(CPU)做实验(渲染网页),必须向辅导员申请实验室的使用权。
  • 学生B(游戏程序)需要图书馆(内存)借书(加载游戏数据),需遵守辅导员制定的借阅规则。

2. 辅导员(操作系统内核)
职责:

  • 资源分配:管理CPU、内存、外设等资源,按规则分配给不同学生(进程)。
  • 调度协调:决定哪个学生先使用实验室(CPU时间片轮转)。
  • 冲突解决:处理多个学生争夺同一资源的情况(如死锁避免)。
  • 安全管理:防止学生越权操作(如非法访问其他学生的作业目录)。

    未命名文档 4.pdf

    30.05MB


例子:

  • 进程调度:辅导员(内核)使用时间片轮转算法,让学生A(浏览器)和学生B(游戏)轮流使用实验室(CPU)。
  • 内存管理:辅导员记录每个学生借了多少本书(内存分配),超量时拒绝新请求(内存不足错误)。
  • 权限控制:学生C(恶意程序)试图闯入校长办公室(系统文件),辅导员拦截并终止其权限。

3. 校长(系统策略)
职责:

  • 制定规则:定义资源分配策略(如优先级、公平性)。
  • 全局管理:规划学校整体资源(如新增教室、升级实验室)。
  • 安全策略:规定哪些学生可以访问敏感区域(如系统文件)。
  • 应急处理:处理全校性危机(如停电、硬件故障)。

例子:

优先级策略:校长规定“科研项目(系统进程)”优先使用实验室(CPU)。

资源扩容:校长决定扩建图书馆(增加内存容量)以满足更多学生需求。

权限管理:校长禁止普通学生进入档案室(root目录),仅允许管理员(root用户)访问。


结合来看

  1. 学生申请资源:学生D(视频编辑软件)需要高性能实验室(CPU核心)和大量书籍(内存)。辅导员根据校长制定的优先级规则,分配资源并监控使用情况。
  2. 资源冲突:学生E(下载程序)和学生F(在线会议软件)同时申请网络带宽。辅导员按“实时任务优先”策略,优先分配带宽给学生F。
  3. 异常处理:实验室突然停电(硬件故障),校长启动备用电源(容错机制),辅导员重新调度学生任务。

比喻总结
角色    对应对象    核心职责
学生    用户程序/应用程序    执行具体任务,依赖资源分配
辅导员    操作系统内核    直接管理资源,调度进程,确保安全
校长    系统策略/管理层    制定规则,全局规划,处理系统级问题


http://www.kler.cn/a/598274.html

相关文章:

  • JavaSE1.0(基础语法之运算符)
  • 【spring对bean Singleton和Prototype的管理流程】
  • Java面试黄金宝典12
  • PyTorch 面试题及参考答案(精选100道)
  • 学习Flutter:搭建第一个 Flutter 应用
  • OpenCV图像拼接项目指南
  • AI:如何用 MeloSpyGUI 和 MeloSpySuite 生成爵士音乐文件
  • Android项目实战搭建 MVVM架构
  • 知识库已上线
  • 算法-动态规划总结
  • 20届智能车赛规则
  • 从零开始学习 Go 语言
  • go常用标准库学习笔记
  • VMWare虚拟机磁盘扩容
  • LabVIEW液压传动系统教学仿真平台
  • <svg>标签的优势,在绘制矢量图形时如何使用它
  • llama-factory 微调 Qwen2.5-3B-Instruct
  • ubuntu设置开机自动运行应用
  • Spring Boot 整合 Apache Flink 教程
  • 【C++初阶】从零开始模拟实现vector(含迭代器失效详细讲解)