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

进程(0)——计算机的中的软硬件【Linux】

进程(0)——计算机的中的软硬件【Linux】

  • 一.硬件:
    • 1.1 冯诺依曼结构:
    • 1.2 存储金字塔
      • 1.2.1输入设备和存储器:
      • 1.2.2输出设备和存储器:
  • 二.软件:
    • 2.1 操作系统
      • 2.1.1 如何理解管理:

博主自己进行到了进程中的学习。
进程算是linux学习中内容比较多的一个部分。
所以估计会多写几篇博客当作进程的一个系列

这里先从计算机最基础的软件和硬件开始讲起

一.硬件:

讲到计算机的硬件,现在的计算机都是建立在冯诺依曼结构的基础上建立的。
所以我们需要来了解一下什么是冯诺依曼结构

1.1 冯诺依曼结构:

在这里插入图片描述

这里的分别对应:
存储器:内存

输入设备:键盘,摄像头,磁盘,网卡等
输出设备: 输出设备:显示器,播放器
有的设备既可以输入又可以输出

这两个都是cpu的组成部分:
运算器:进行计算任务
控制器:对计算过程进行一定的控制

上面的各个组成部分全都是独立的硬件个体

所以它们必须同过媒介来连接起来
而媒介就是线:
1.总线 2.io总线

1.2 存储金字塔

在这里插入图片描述
从这个图片上面我们能得到一个信息:
从上到下容量越大速度越慢

同时我们的能发现:
上面从属于cpu的部分和下面从属于硬盘的部分中间
有一个内存部分
这里就能体现了内存的不一般的地位,这里让我们看一下冯诺依曼结构
在这里插入图片描述
这里能看到存储器处于中间的媒介地位。

这里我们就要引入木桶原理:
相比大家都知道木桶原理,所以不解释了
因为cpu和输出还有输入设备差距过大。
所以引入了一个速度相对于两者都不怎么大的内存来进行调度。

尽量防止cpu和外存的速度差距过大,从而产生大量的效率浪费

1.2.1输入设备和存储器:

这里的输入设备就用硬盘来举例把。
我们知道,硬盘和cpu的速度差距很大。
那差距到底有多大。
在这里插入图片描述

在这里插入图片描述
这里我们能很明显的感受到cpu计算速度和硬盘的读写速度差距巨大。
这个时候如果cpu想要对硬盘中的数据进行计算,可能等硬盘读取完的时间,cpu的温度早就转凉了。

所以内存这个处于两者速度之间的角色就发挥了重要作用

硬盘先把数据读取到内存,然后cpu可以计算内存中的数据。
同时还可以进行并行执行,在cpu计算其他数据的时候,内存还可以从硬盘中进行读取数据。

这样可以解除了cpu与外盘的数据的交互。防止效率的浪费,可以让cpu更加专注于数据的计算当中。

1.2.2输出设备和存储器:

输出设备和cpu还有内存也是和上面同理,这里就就略了。
同样也是解除了cpu与输出设备的数据交互,提高cpu的输出效率。

(不代表控制器和输入输出设备失去联系,数据虽然没有联系,但是信号处理方面有联系)

所以内存在冯诺依曼结构的计算机中不光是媒介,更可以说是核心

二.软件:

为什么我们要先讲硬件,我们了解了冯诺依曼的结构后
我们就可以知道
任何一款软件都是必须先要被内存进行读取后才能运行
因为这是结构规定的。
软件都是建立在硬件上的。

了解了硬件后
那各个硬件要进行统合,或者用户想要把数据输入给硬件,让硬件进行操作

说通俗一点,就是想要计算机硬件给用户进行服务,那该怎么办。

接下来那就是交给了最大的软件——操作系统(os

2.1 操作系统

操作系统可以说统筹管理了各个硬件,同时给软件提供了环境。

那我们就从管理入手,看看操作系统是如何管理硬件的。

2.1.1 如何理解管理:

操作系统通过管理好底层的软硬件资源,为【用户】提供一个良好的执行环境
这里用户有各种人群。

难保用户中有那种电脑小白,对计算机系统进行乱搞,而计算机系统对硬件进行管理,但是硬件中存有大量的数据或功能
那可以想象如果用户乱来,后果将不堪设想
在这里插入图片描述
这里我们能看到用户操作接口的下方,有一个系统调用接口

这是因为操作系统为了保证自己的数据安全,也为了保证给用户提供服务,选择了不相信任何用户

但同时要给用户服务,所以操作系统以接口(函数)的方式给用户提供调用操作系统的入口,来获取系统内部数据

用封装的接口的话,就可以有效的防止出现用户操作不当而丢失数据或者影响操作系统的情况了

操作系统基层是用C语言实现的,系统通过自己写的调用接口,去执行调用操作系统的操作,所有访问操作系统的行为,都只能通过系统调用完成

调用系统的的各个接口称为:system call

然后通过接口调用操作系统对操作系统进行控制
操作系统通过对应的驱动程序来控制硬件
从而实现了对硬件的操作。

相关文章:

进程(0)——计算机的中的软硬件【Linux】

进程(0)——计算机的中的软硬件【Linux】 一.硬件:1.1 冯诺依曼结构:1.2 存储金字塔1.2.1输入设备和存储器:1.2.2输出设备和存储器: 二.软件:2.1 操作系统2.1.1 如何理解管理: 博主自…...

Python中if not使用教程

大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 如果有什么疑惑/资料需要的可以点击文章末尾名片领取源码 python中判断变量是否为None三种写法: 1、if x is None 2、if not x 3、if not x is None 理解成 if not (x is None) 结果是和1相反的 python中None、fals…...

Jmeter性能测试 —— jmeter之使用ServerAgent监控服务器

ServerAgent 性能测试时我们关注的重要指标是:并发用户数,TPS,请求成功率,响应时间,服务器的CPU,memory, I/O disk等。Jmeter的聚合报告可以查看并发数、吞吐量、请求成功率、响应时间等&#…...

C# Winform编程(7)文件处理技术

文件处理技术 System.IO命名空间System.IO命名空间常用的类System.IO命名空间常用的枚举 File类的常用方法File类的常用静态方法FileInfo类的常用方法File类和FileInfo类的区别文件夹类Directory的常用方法文件流类FileStream文件的读写读写二进制流读写内存流 System.IO命名空…...

前端工作方式要换了?HTMX简介:无需JavaScript的动态HTML

HTMX允许你使用扩展的HTML语法代替 JavaScript 来实现交互性。HTMX 在标记中直接为你提供HTTP 交互,并支持许多其他交互需求,无需求助于 JavaScript。这是一个有趣的想法,可能最终会影响到web前端的工作方式。让我们看看如何使用HTMX以及它的…...

动手学深度学习—使用块的网络VGG(代码详解)

目录 1. VGG块2. VGG网络3. 训练模型 1. VGG块 经典卷积神经网络的基本组成部分是下面的这个序列: 1.带填充以保持分辨率的卷积层; 2.非线性激活函数,如ReLU; 3.汇聚层,如最大汇聚层。 定义网络块,便于我…...

性能优化:JIT即时编译与AOT提前编译

优质博文:IT-BLOG-CN 一、简介 JIT与AOT的区别: 两种不同的编译方式,主要区别在于是否处于运行时进行编译。 JIT:Just-in-time动态(即时)编译,边运行边编译:在程序运行时,根据算法计算出热点代码&#xf…...

抖音同城榜:探索城市新潮流

随着科技的飞速发展,短视频已经成为了人们日常生活中不可或缺的一部分。作为短视频领域的佼佼者,抖音一直致力于为用户带来更丰富、更有趣的短视频内容。抖音同城榜应运而生,成为了最新、最热门的话题聚集地,吸引了大量潮流达人和…...

云表|低代码开发崛起:重新定义企业级应用开发

低代码开发这个概念在近年来越来越受到人们的关注,市场对于低代码的需求也日益增长。据Gartner预测,到2025年,75%的大型企业将使用至少四种低代码/无代码开发工具,用于IT应用开发和公民开发计划。 那么,为什…...

【算法题】2906. 构造乘积矩阵

题目: 给你一个下标从 0 开始、大小为 n * m 的二维整数矩阵 grid ,定义一个下标从 0 开始、大小为 n * m 的的二维矩阵 p。如果满足以下条件,则称 p 为 grid 的 乘积矩阵 : 对于每个元素 p[i][j] ,它的值等于除了 g…...

机器学习基础之《回归与聚类算法(4)—逻辑回归与二分类(分类算法)》

一、什么是逻辑回归 1、逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法,虽然名字中带有回归,但是它与回归之间有一定的联系。由于算法的简单和高效,在实际中应用非常广…...

UWB安全数据通讯STS-加密、身份认证

DW3000系列才能支持UWB安全数据通讯,DW1000不支持 IEEE 802.15.4a没有数据通讯安全保护机制,IEEE 802.15.4z中指定的扩展得到增强(在PHY/RF级别):增添了一个重要特性“扰频时间戳序列(STS)”&a…...

vue3中去除eslint严格模式

vue3中去除eslint严格模式 1、全局搜索:extends 2、一般在package.json或者vue.config.js中,直接删除掉vue/standard,重启项目。(在package.json文件中,编译不允许有注释,所以直接删掉)...

Win10如何彻底关闭wsappx进程?

Win10如何彻底关闭wsappx进程?在Win10电脑中,用户看到了wsappx进程占用了大量的系统资源,所以想结束wsappx进程,提升电脑的运行速度。但是,用户们不知道彻底关闭掉wsappx进程的方法,那么接下来小编就给大家…...

docker 安装 sftpgo

sftpgo 简介 sftpgo 是一个功能齐全且高度可配置的 SFTP 服务器,具有可选的 HTTP/S、FTP/S 和 WebDAV 支持。支持多种存储后端:本地文件系统、加密本地文件系统、S3(兼容)对象存储、Google 云存储、Azure Blob 存储、SFTP。 官…...

threejs (一) 创建一个场景

引入 npm install three import * as THREE from three;const scene new THREE.Scene();或者使用bootCDN复制对应的版本连接 <script src"https://cdn.bootcdn.net/ajax/libs/three.js/0.156.1/three.js"></script>基础知识 场景、相机、渲染器 通过…...

二分查找,求方程多解

1.暴力遍历&#xff1a; 解为两位小数&#xff0c;故0.001的范围肯定可以包含&#xff08;零点存在&#xff09; 2.均分为区间长度为1的小区间&#xff08;由于两解&#xff0c;距离不小于1&#xff09;&#xff0c;一个区间最多一个解 1.防止两边端点都为解 2&…...

代码随想录算法训练营第二十九天 | 回溯算法总结

​ 代码随想录算法训练营第二十九天 | 回溯算法总结 1. 组合问题 1.1 组合问题 在77. 组合中&#xff0c;我们开始用回溯法解决第一道题目&#xff1a;组合问题。 回溯算法跟k层for循环同样是暴力解法&#xff0c;为什么用回溯呢&#xff1f;回溯法的魅力&#xff0c;用递…...

运算方法和运算电路

一、逻辑门电路 1、逻辑门电路基础总结 2、异或运算妙用 3、逻辑常用公式 二、加法器&#xff08;重点&#xff09; 1、标志位的生成原理 2、加法器总结 三、多路门选择器&#xff0c;三态门...

计算机网络篇之TCP滑动窗口

文章目录 前言概述 前言 在网络数据传输时&#xff0c;若传输的原始数据包比较大&#xff0c;会将数据包分解成多个数据包进行发送。需要对数据包确认后&#xff0c;才能发送下一个数据包。在等待确认包的这个过程浪费了大量的时间&#xff0c;不过还好TCP引入了滑动窗口的概念…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架&#xff0c;支持"一次开发&#xff0c;多端部署"&#xff0c;可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务&#xff0c;为旅游应用带来&#xf…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系&#xff0c;以下是深入解析&#xff1a; 门铃FIFO溢出的本质 在RapidIO系统中&#xff0c;门铃消息FIFO是硬件控制器内部的缓冲区&#xff0c;用于临时存储接收到的门铃消息&#xff08;Doorbell Message&#xff09;。…...