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

Linux:体系结构和操作系统管理

目录

一、冯诺依曼体系结构

1.问题1

2.问题2

二、操作系统管理


一、冯诺依曼体系结构

        本章将会谈论一下对冯诺依曼计算机体系结构的理解。

  • 在2024年,几乎所有的计算机,都遵守冯诺依曼体系结构。

  • 冯诺依曼体系结构是应用在硬件层面的,而硬件层面的每一个部件都是独立的,同时又是相互联系的

        独立是指:

        CPU:运算器&&控制器。

        输入设备:话筒、摄像头、鼠标、键盘、硬盘、网卡。

        输出设备:显示器、扬声器、打印机、显卡、网卡。

        存储器:内存。


        相互联系指:硬件又由主板总线联系在一起。


1.问题1

  • 为什么冯诺依曼的体系结构要设计内存?

        内存出现的原因:

        存储元件的性能价格有下面这样的特点。

        物理上,距离CPU越近,存储元件的速度越快,容量越小,价格越高;

        距离CPU越远,存储元件的速度越慢,容量越大,价格越低。

        那么,这样的特点就导致,在传统的计算机中,即只有CPU、输入输出设备的计算机,输入输出设备的速度和CPU速度之间的差异巨大无比,在实际运行过程中,CPU大部分时间处于等待响应的状态,因此外设拖慢了计算机整体的速度。

        设计了内存这一部件,由于内存的速度介于CPU和外设之间,让CPU只和内存做交互,外设只和内存做交互,这样一来,计算机整体的运行效率就和内存的效率接近

2.问题2

        请解释:程序在运行之前,必须先将程序加载到内存中。

        所谓的程序,即可执行文件,本质还是文件,存储在硬盘中,而硬盘属于外设IO。

        程序文件的内容是一条条的指令和数据,需要CPU来执行。

        在冯诺依曼体系结构的计算机中,外设不能直接和CPU交互,因此,需要内存扮演中间角色。


        以上就是本章在计算机硬件层面对冯诺依曼体系结构的计算机的讨论。

二、操作系统管理

        操作系统的概念:操作系统是进行软硬件资源管理软件

        你的计算机开机后,执行的第一个软件就是操作系统。

        操作系统的管理大致有:

  • 内核(进程管理、文件管理、线程管理)
  • Shell程序等

  • 如何理解管理?

        操作系统管理底层硬件的思想,本质上就是高级编程语言面向对象的思想。

  1. 管理的表层思想:底层硬件,诸如内存、主板、硬盘、各种外设等,种类成千上万,而操作系统是统一的,不可能实现让操作系统直接管理硬件,而是让操作系统调用驱动程序驱动程序一般由硬件制造商提供,由用户下载,操作系统通过调用驱动程序来管理不同的硬件。
  2. 管理的深层思想:但是,操作系统这一层不可能什么都不做,操作系统真正对硬件的管理,总结为六个字:先描述,再组织!!!

        描述:即面向对象的思想,操作系统管理的硬件都有相似的属性,操作系统定义结构体类对象来描述硬件的属性。

        组织:即行为管理,企业中管理层对员工可能有一系列行为,程序中函数对对象可能有一系列操作,操作系统也是类似,操作系统硬件也有类似“增删查改”的行为,这些行为本质都不是目标做操作,而是对目标的数据(这里的数据,就是第一步“描述”出来的属性)做操作,要实现这些行为所利用的就是数据结构,把对数据的管理转换为对数据结构的“增删查改”。

        先描述,再组织,其实就是对要管理的对象做计算机建模的过程,操作系统管理硬件,就是一个计算机建模的过程。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Flutter的升级和降级步骤
  • QMT软件怎么申请开通?QMT软件到底是谁在用啊?QMT量化软件K线驱动介绍
  • tensor连接和拆分
  • 搜维尔科技:ART光学空间定位虚拟交互工业级光学跟踪系统
  • sourcetree配置ssh连接gitee
  • 中国企业500强!最新名单揭晓→
  • JavaScript高级进阶(二)
  • IGNAV_NHC分析
  • 【深度学习】训练过程中一个OOM的问题,太难查了
  • 多人开发小程序设置体验版的痛点
  • 视频推拉流/直播点播EasyDSS平台安装失败并报错“install mediaserver error”是什么原因?
  • Centos7.9部署Gitlab-ce-16.9
  • 【人工智能学习笔记】3_2 机器学习基础之机器学习经典算法介绍
  • 程序员如何写笔记并整理资料?
  • react js 路由 Router
  • “大数据应用场景”之隔壁老王(连载四)
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • CentOS7简单部署NFS
  • echarts花样作死的坑
  • es6(二):字符串的扩展
  • Intervention/image 图片处理扩展包的安装和使用
  • iOS 系统授权开发
  • JavaScript新鲜事·第5期
  • JWT究竟是什么呢?
  • k8s如何管理Pod
  • MySQL QA
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • quasar-framework cnodejs社区
  • React as a UI Runtime(五、列表)
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • Vue.js-Day01
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 当SetTimeout遇到了字符串
  • 基于游标的分页接口实现
  • 嵌入式文件系统
  • 如何设计一个微型分布式架构?
  • 如何胜任知名企业的商业数据分析师?
  • 为视图添加丝滑的水波纹
  • 小试R空间处理新库sf
  • 用jQuery怎么做到前后端分离
  • 阿里云ACE认证学习知识点梳理
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • #QT项目实战(天气预报)
  • #数据结构 笔记一
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (2)空速传感器
  • (30)数组元素和与数字和的绝对差
  • (9)目标检测_SSD的原理
  • (Redis使用系列) Springboot 使用redis实现接口Api限流 十
  • (STM32笔记)九、RCC时钟树与时钟 第一部分
  • (二)Linux——Linux常用指令
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (附源码)springboot车辆管理系统 毕业设计 031034