【lesson8】操作系统的理解和类比

文章目录

  • 操作系统是什么?
  • 为什么要有操作系统?
  • 怎么做?
    • 学校的例子(理解管理)
    • 银行的例子(类比操作系统)

操作系统是什么?

操作系统是一款软件,是为了进行软硬件资源管理的软件。

为什么要有操作系统?

操作系统是为了给用户提供一个良好,安全,简单的运行环境这就是操作系统的目的。

怎么做?

上面的两个话题我们在Linux发展史这篇博客中就浅谈过下面我们具体讲解怎么办。

学校的例子(理解管理)

我们都假设学校有三种角色,校长、辅导员、学生。那么这三种角色谁是管理者,谁是被管理者呢?毫无疑问,学生是被管理者,校长是管理者。
在这里插入图片描述
我们从这个例子可以学到,管理者和被管理者可以不直接沟通。在日常生活中我们很少见到校长,可能除了开学的一次开学典礼后面几乎不会再见到。
那么校长是如何做到管理的呢?
校长只要了解每个学生的核心信息就可以做到管理了比如:某个学生的各科成绩怎么样啊,社区文明分低不低啊,有没有经常旷课啊,有没有经常晚归或者也不归宿啊等等,可以凭借这些信息对学生进行嘉奖或者开除的决策。这些信息都可以作为管理的依据。
那么这些数据都是谁提供给校长的呢?
当然是辅导员,这里辅导员就是执行者,我们可以类比到操作系统。
校长:操作系统
辅导员:驱动程序
学生:硬件

在这里插入图片描述
所以我们总结一下:管理者拿到被管理者的核心数据,来进行支持管理决策,才是最重要的。
在这里插入图片描述
所以我们总结出的第一个结论是管理是对被管理者的数据进行管理

从上面的介绍中我们可以了解,校长是如何对学生进行管理的,学生如果只有几百个到上千个还好,但是学生有10万人呢那么校长该如何处理这些无序的数据,要对这些数据一个一个管理观看吗?
在这里插入图片描述
假设校长在当校长之前是一个优秀的程序员,他知道要管理学生信息要先对被管理对象进行描述,再根据类型定义对象。然后可以把所有对象在数组中保存起来。
所以
首先我们要定义一个对象,用对象来保存单个学生的信息。
在这里插入图片描述
然后再用数组保存所有对象信息
在这里插入图片描述
这样校长对学生的管理工作,就变成了对数组的增删查改。
比如校长要开除终测排名最后三名的同学,可以编写一个按照成绩排名的算法,然后找出最后三名,再让辅导员去通知他们,并且从数组中删除这三人的信息。

从上面我们得到了六字真言,要对对象进行管理必须:先描述,再组织。
Linux内核是C语言写的,所以所有对象都是用struct结构体创建出来的。
从上面我们不难得到,OS(操作系统)内部一定充满大量的数据结构和算法。
所以我们得到的第二个结论:先描述,再组织。

银行的例子(类比操作系统)

银行管理系统结构图:
在这里插入图片描述
我们把上面的银行管理系统类比成操作系统就是:
在这里插入图片描述
在日常生活中我们去银行办理业务的时候,是直接访问银行的各种软硬件资源的吗?
不是的!
我们去银行的时候,银行一般会为我们提供一个个窗口我们可以去窗口,窗口中会有工作人员为我们提供服务。
在这里插入图片描述
这是为什么呢?因为银行不相信任何人,就算你是好人银行也没有时间和精力去了解你通过窗口的交互,可以将风险降到最低
同理我们可以推导到操作系统。
我们使用操作系统的时候是直接自己操作操作系统的各种软硬件资源的吗?
不是的?
操作系统会为我们提供各种系统调用接口,我们可以通过系统调用接口,访问和调用操作系统的各种软硬件资源。
原因也是因为操作系统不相信任何人。
总结
1.OS操作系统不相信任何人。
2.一个好的产品,一定回给用户提供一个非常舒适的使用体验,比如抖音想看视频只要上下滑就好了。

如果银行进来了一个70几岁的老大爷,而老大爷不懂得怎么与窗口服务人员沟通,这时候就需要银行系统外的服务人员,来为老大爷进行指导。
在这里插入图片描述
相对的操作系统也是如此。
在这里插入图片描述
操作系统的系统调用接口上面就是服务层。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

400电话怎么办理(申请开通)

申请开通400电话是一项相对简单的过程,只需按照以下步骤进行操作即可。 第一步,选择400电话服务提供商。在市场上有很多公司提供400电话服务,您可以根据自己的需求和预算选择适合的服务商。可以通过搜索引擎、咨询朋友或者查看相关论坛等方式…

Python经典练习题(三)

文章目录 🍀第一题🍀第二题🍀第三题 🍀第一题 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 本题需要我们掌握的知识点在于,判断字符串,是数字还是字母还是啥的&#…

PROFINET主站转ETHERCAT协议网关

产品介绍 JM-PNM-ECT 是基于西门子1200PLC的一款 PROFINET 主站功能的通讯网关。该产品主要功能是将ETHERCAT 总线和 PROFINET 网络连接起来。 本网关连接到 PROFINET 总线中做为主站使用,连接到 ETHERCAT 总线中做为从站使用。 产品参数 技术参数 u 网关做为 P…

P1827 [USACO3.4] 美国血统 American Heritage(前序 + 中序 生成后序)

P1827 [USACO3.4] 美国血统 American Heritage(前序 中序 生成后序) 一、前言 二叉树入门题。涉及到树的基本知识、树的结构、树的生成。 本文从会从结构,到完成到,优化。 二、基础知识 Ⅰ、二叉树的遍历 前序遍历&#xff…

IDEA开发工具技巧

1.1 IDEA相关插件 idea插件下载地址:https://plugins.jetbrains.com/ 开发必装插件: (1) 快速查找api接口 RestfulTool 插件,推荐指数⭐⭐⭐⭐⭐ [RestfulTool搜索插件使用详解](https://blog.csdn.net/weixin_450147…

vue3硅谷甄选01 | 使用vite创建vue3项目及项目的配置 环境准备 ESLint配置 prettier配置 husky配置 项目集成

文章目录 使用vite创建vue3项目及项目的配置1.环境准备2.项目配置ESLint校验代码工具配置 - js代码检测工具1.安装ESLint到开发环境 devDependencies2.生成配置文件:.eslint.cjs**3.安装vue3环境代码校验插件**4. 修改.eslintrc.cjs配置文件5.生成ESLint忽略文件6.在package.js…

工作应当有挑战

有挑战 才能有所成长 正所谓人到山前必有路 是挑战 一般就会有未知 未知往往伴随着困难 有困难 并不可怕,也不必自我抱怨,自我抱怨只会陷入无尽的精神内耗 我们只要做好自己 困难就会迎刃而解 如果自己的获得 没有达到自己的期望 其实那也不必气馁 再…

【计算机网络】IP协议

文章目录 TCP与 IP之间的关系IP地址的认识协议报头格式1. 报头和有效载荷如何分离?2. 8位协议3. 4位版本4. 8位服务类型5. 16位总长度6. 8位生存时间 TTL 网段划分IP地址的划分 子网划分CIDR的提出如何理解CIDR TCP与 IP之间的关系 如:假设 你上高中时&…

无聊的一篇博客(如何通过路由器登陆页对固定机器进行网速干扰,如何帮熊孩子戒网瘾)

1. 路由器登陆页面,按钮解析,获取按钮。 2. JavaScript与上传的脚本。 // 获取要点击的按钮A和按钮B元素var isRunning true; // 初始状态为false// 定义一个函数来模拟点击按钮A和按钮B function clickButtons() {if (isRunning) {// 随机生成一个延时…

QTday2

完善登录框 点击登录按钮后,判断账号(admin)和密码(123456)是否一致,如果匹配失败,则弹出错误对话框,文本内容“账号密码不匹配,是否重新登录”,给定两个按钮…

clion 安装 boost 库

不保证有效,很多教程的 cmake 都是带版本号的 1、先安装 boost 库 brew install boost 2、clion 工程的 CMakeLists.txt 文件中间添加两行,加在 add_executable 上面 find_package(Boost) include_directories(${Boost_INCLUDE_DIRS}) 我的源文件 …

2023华为杯研究生数学建模竞赛选题建议+初步分析

如下为C君的2023华为杯研究生数学建模竞赛&#xff08;研赛&#xff09;选题建议初步分析 2023华为杯研究生数学建模竞赛&#xff08;研赛&#xff09;选题建议 提示&#xff1a;DS C君认为的难度&#xff1a;CE<D<F&#xff0c;开放度&#xff1a;CDE<F。 华为专项…

分布式运用之企业级日志ELFK+logstash的过滤模块

一、ELFK集群部署&#xff08;FilebeatELK&#xff09; 在搭建ELK的基础上安装Filebeat服务&#xff0c;Filebeat服务可以布置在以下任意一台主机&#xff0c;本次实验将布置在apache服务器的节点上 步骤一&#xff1a;安装 Filebeat&#xff08;在apache节点操作&#xff09…

【GIS】地理坐标系WGS84、GCJ-02、BD-09、GCS2000

地理坐标系又可分为 参心坐标系 和 地心坐标系&#xff0c;常见的参心坐标系北京54、西安80&#xff0c;常见的地心坐标系有WGS84、GCJ-02、BD-09、GCS2000 地心坐标系 WGS84&#xff08;World Geodetic System 1984&#xff09; WGS84是为 GPS 全球定位系统建立的坐标系统&…

python随手小练

题目&#xff1a; 使用python做一个简单的英雄联盟商城登录界面 具体操作&#xff1a; print("英雄联盟商城登录界面") print("~ * "*15 "~") #找其规律 a "1、用户登录" b "2、新用户注册" c "3、退出系统&quo…

PIL或Pillow学习1

PIL&#xff08; Python Imaging Library&#xff09;是 Python 的第三方图像处理库&#xff0c;由于其功能丰富&#xff0c;API 简洁易用&#xff0c;因此深受好评。 自 2011 年以来&#xff0c;由于 PIL 库更新缓慢&#xff0c;目前仅支持 Python 2.7 版本&#xff0c;这明显…

react实现列表滚动组件

1.需求 在开发项目的时候&#xff0c;从服务端获取到数据列表后&#xff0c;展示给用户看&#xff1a;需要实现数据自动滚动效果&#xff0c;怎么实现呢&#xff1f;如下图所示&#xff1a; 2.实现 把上面需要实现的功能写成一个组件&#xff0c;页面直接调用该组件即可&#x…

计算机视觉与深度学习-经典网络解析-AlexNetZFNetVGGGoogLeNetResNet[北邮鲁鹏]

目录标题 参考文章LeNet5AlexNet参考文章AlexNet模型结构AlexNet共8层&#xff1a;AlexNet运作流程 简单代码实现重要说明重要技巧主要贡献 ZFNet主要改进减小第一层卷积核将第二、第三个卷积层的卷积步长都设置为2增加了第三、第四个卷积层的卷积核个数 VGG参考VGG网络贡献使用…

锐捷交换机vlan隔离(wifi段仅能访问外网,和内网隔离)

因为公司的wifi段&#xff0c;未做隔离&#xff0c;无意间上了网&#xff0c;发现能访问内网网段&#xff0c;这里内网是10、20段&#xff0c;管理网段是100段&#xff0c;于是做了和内网的vlan隔离。 拓朴如下&#xff0c;所有vlan的网关都起在核心上&#xff0c;核心上起了DH…

批量调整视频饱和度和色度,提升你的视频剪辑效率!

作为一名视频剪辑师&#xff0c;你是否经常为如何高效地调整多个视频的饱和度和色度而烦恼&#xff1f;现在&#xff0c;我们为你提供了一种简单、快速、准确的方法&#xff0c;帮助你轻松解决这个问题&#xff01; 首先我们要进入好简单批量智剪&#xff0c;并在左侧的板块栏…