进程(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动态(即时)编译,边运行边编译:在程序运行时,根据算法计算出热点代码…...
抖音同城榜:探索城市新潮流
随着科技的飞速发展,短视频已经成为了人们日常生活中不可或缺的一部分。作为短视频领域的佼佼者,抖音一直致力于为用户带来更丰富、更有趣的短视频内容。抖音同城榜应运而生,成为了最新、最热门的话题聚集地,吸引了大量潮流达人和…...
云表|低代码开发崛起:重新定义企业级应用开发
低代码开发这个概念在近年来越来越受到人们的关注,市场对于低代码的需求也日益增长。据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.暴力遍历: 解为两位小数,故0.001的范围肯定可以包含(零点存在) 2.均分为区间长度为1的小区间(由于两解,距离不小于1),一个区间最多一个解 1.防止两边端点都为解 2&…...
代码随想录算法训练营第二十九天 | 回溯算法总结
代码随想录算法训练营第二十九天 | 回溯算法总结 1. 组合问题 1.1 组合问题 在77. 组合中,我们开始用回溯法解决第一道题目:组合问题。 回溯算法跟k层for循环同样是暴力解法,为什么用回溯呢?回溯法的魅力,用递…...
运算方法和运算电路
一、逻辑门电路 1、逻辑门电路基础总结 2、异或运算妙用 3、逻辑常用公式 二、加法器(重点) 1、标志位的生成原理 2、加法器总结 三、多路门选择器,三态门...
计算机网络篇之TCP滑动窗口
文章目录 前言概述 前言 在网络数据传输时,若传输的原始数据包比较大,会将数据包分解成多个数据包进行发送。需要对数据包确认后,才能发送下一个数据包。在等待确认包的这个过程浪费了大量的时间,不过还好TCP引入了滑动窗口的概念…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...
全面解析数据库:从基础概念到前沿应用
在数字化时代,数据已成为企业和社会发展的核心资产,而数据库作为存储、管理和处理数据的关键工具,在各个领域发挥着举足轻重的作用。从电商平台的商品信息管理,到社交网络的用户数据存储,再到金融行业的交易记录处理&a…...
在 Visual Studio Code 中使用驭码 CodeRider 提升开发效率:以冒泡排序为例
目录 前言1 插件安装与配置1.1 安装驭码 CodeRider1.2 初始配置建议 2 示例代码:冒泡排序3 驭码 CodeRider 功能详解3.1 功能概览3.2 代码解释功能3.3 自动注释生成3.4 逻辑修改功能3.5 单元测试自动生成3.6 代码优化建议 4 驭码的实际应用建议5 常见问题与解决建议…...
渗透实战PortSwigger Labs指南:自定义标签XSS和SVG XSS利用
阻止除自定义标签之外的所有标签 先输入一些标签测试,说是全部标签都被禁了 除了自定义的 自定义<my-tag onmouseoveralert(xss)> <my-tag idx onfocusalert(document.cookie) tabindex1> onfocus 当元素获得焦点时(如通过点击或键盘导航&…...
