【Linux的进程篇章 - 冯诺依曼的体系结构】
Linux学习笔记---005
- Linux冯诺依曼体系结构理解
- 1、冯诺依曼体系结构
- 1.1、冯诺依曼体系结构
- 1.2、硬件层面
- 1.3、数据层面
- 1.4、那么冯诺依曼体系能干什么呢?
- 2、操作系统(Operastor System)
- 2.1、概念
- 2.2、操作系统层的核心功能
- 3、进程的初步理解
Linux冯诺依曼体系结构理解
前言:
前篇开始进行了解学习Linux的基础知识,这篇介绍开始学习LInux的进程概念、冯诺依曼和操作系统的激烈等相关内容,深入地了解这个强大的开源操作系统。
/知识点汇总/
1、冯诺依曼体系结构
前言:
冯诺依曼体系结构,也称为普林斯顿结构,是计算机系统设计的基本概念之一。
我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。
截至目前,我们所认识的计算机,都是有一个个的硬件组件组成。
输入单元:包括键盘, 鼠标,扫描仪, 写字板等
中央处理器(CPU):含有运算器和控制器等
输出单元:显示器,打印机等
关于冯诺依曼,必须强调几点:
这里的存储器指的是内存。
不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备),
外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
一句话,所有设备都只能直接和内存打交道。
对冯诺依曼的理解,不能停留在概念上,要深入到对软件数据流理解上。
1.1、冯诺依曼体系结构
1.输入设备:包括键盘, 鼠标,扫描仪, 写字板等
2.输出设备:显示器、声卡、网卡…
3.存储器:内存
4.中央处理器(运算器+控制器):提供计算和指令控制
1.2、硬件层面
1.硬件设备都有电路连接(主板电路),相互连接。
2.数据是在计算机体系结构中是进行流动的,设备间的数据流动,数据处理,加工等,本质是从一个设备到另一个设备的“拷贝”。
3.其次,中央处理器的运算是很快的,那么设备间数据的传输效率的快慢,就决定了计算机整个体系的基本效率。
然后,计算机的效率问题,就追究于那部分的设备导致数据的拷贝效率低,拖后腿?
1.存储金字塔,距离CPU越近(寄存器),效率越高,成本也高。
2.所以,提出木桶原理,从这个就角度出发,可知CPU很多时候在等,等待其它设备的工作。
那么为什么家庭电脑不统一使用最快的寄存器制造呢?而是使用一个存储器(内存)来相对提高效率呢?
答:考虑成本、受众人群、性价比,从而才能推动互联网等经济效益。性价比。
1.3、数据层面
在硬件数据流动角度,在数据层面:
1.CPU不和外设直接打交道,CPU只和内存打交道;
2.外设输入和输出的数据,不是直接给CPU的,而是先要放入内存中。
1.4、那么冯诺依曼体系能干什么呢?
1.程序的运行,为什么需要加载到内存中?
程序 = 代码 + 数据 —> 程序的数据,都要被CPU执行和访问
2.程序还没有被加载到内存时,存储在哪里呢?
磁盘等存储器
知识点:
关键在于因为冯诺依曼体系结构规定,CPU只会从内存中读取/处理“数据”。所以会先加载到内存。
另外,那么数据会被加载到内存的哪里,然后怎么继续处理,都是交给了操作系统软件决定的,不归硬件管理了。
在实际应用场景中,两个人通过交友软件互相发送信息的场景中,整个消息的数据流动过程是怎么样的?
答:本质是通过冯诺依曼体系。所以数据的流动,硬件层面本质都是通过的冯诺依曼体系结构完成数据的“拷贝”。
2、操作系统(Operastor System)
2.1、概念
是一款软件,是一款软硬件资源 管理 的软件。
广义的角度:操作系统的内核 + 操作系统的外壳程序(用户自开发等应用软件,给用户提供使用操作系统的方式)
狭义的角度:只是操作系统的内核
2.2、操作系统层的核心功能
1.进程管理 :
1.进程管理是指操作系统对正在执行的程序实例的管理。
2.每个进程都有自己的地址空间、代码、数据和执行状态,可以独立运行或与其他进程进行通信。
3.进程管理包括进程的创建、调度、同步与通信以及终止等操作。
4.操作系统根据用户的请求或系统的需要创建新进程,并为其分配资源。
5.调度算法决定哪个进程可以占用CPU并执行,目标是提高系统的吞吐量、响应时间和公平性。
6.为了保证数据的一致性和避免竞态条件,操作系统提供同步机制和通信方式。
2.内存管理 :
1.内存管理涉及对计算机内存资源的分配、保护和共享。
2.操作系统需要确保每个程序都能获得足够的内存空间来执行,同时防止程序之间的内存冲突。
3.内存管理通常包括内存的分配与回收、内存的保护与隔离以及内存的共享与交换等功能。
4.此外,内存管理还涉及虚拟内存技术,通过该技术,操作系统可以将一部分硬盘空间作为内存使用,从而扩展了系统的可用内存。
3.文件系统:
1.文件系统是操作系统用于组织和管理存储设备(如磁盘)上的文件和数据的方法和数据结构。
2.它负责为文件分配存储空间、建立文件索引、维护文件属性以及提供文件访问接口。
3.文件系统使得用户可以方便地创建、读取、修改和删除文件,同时还提供数据保护和恢复机制,确保文件的安全性和完整性。
4.驱动管理:
1.驱动管理涉及对计算机硬件设备的驱动程序的安装、配置和管理。
2.驱动程序是操作系统与硬件设备之间的接口,它使得操作系统能够识别和控制硬件设备。
3.驱动管理包括驱动程序的加载与卸载、硬件设备的识别与配置以及设备错误的处理等功能。
4.通过有效的驱动管理,操作系统可以确保硬件设备的正常运行,提高系统的稳定性和性能。
但是操作系统不会直接与硬件进行访问和交互,因为当硬件层面发生改变,那么操作系统就得跟着改变。
所以,在操作系统与硬件层之间还有一个,由开发人员、厂商等开发的,驱动层.
驱动层目的不是管理,而是为每个硬件提供其与操作系统的驱动接口,使得操作系统能访问硬件层。
最底层为硬件层,组织的方式就是冯诺依曼体系结构,有键盘、显示器、网卡、内存、磁盘…等硬件设备。
3、进程的初步理解
进程是操作系统中的一个核心概念,它是对正在运行的程序的一个抽象描述。
简单来说,进程是程序执行的一个实例,它包含了程序执行所需的代码、数据和系统资源,以及程序执行的状态信息。
以下是关于进程的一些初步理解:
1.动态性:进程是程序的一次执行过程,它是动态的。与程序(静态的、存储在磁盘上的指令和数据集合)不同,进程是程序在计算机上的一次运行活动。每次运行程序时,都会创建一个新的进程。
2.独立性:每个进程都有其独立的地址空间,这意味着一个进程不能直接访问另一个进程的变量和数据结构。这种独立性确保了进程之间的隔离,防止了不同进程之间的数据冲突。
3.并发性:多个进程可以在操作系统中同时运行,它们之间可以并发执行。操作系统通过时间片轮转、优先级调度等方式来管理这些并发进程,确保它们能够公平地共享系统资源。
4.状态性:进程具有多种状态,如新建、就绪、运行、阻塞和终止等。这些状态描述了进程在其生命周期中的不同阶段。操作系统通过维护进程的状态信息来管理进程的执行。
5.资源分配:进程是系统资源分配的基本单位。操作系统根据进程的需求为其分配CPU时间、内存空间、I/O设备等资源。进程通过系统调用与操作系统进行交互,请求和释放资源。
6.通信与同步:进程之间可以通过各种方式进行通信和同步,如管道、消息队列、共享内存等。这些机制使得进程能够协同工作,完成复杂的任务。
7.生命周期:进程从创建开始,经历运行、等待(如I/O操作)等状态,最终因完成任务或发生错误而终止。在进程终止时,操作系统会回收其占用的资源。
了解进程的概念和特性对于理解操作系统的运行原理、进行程序设计和系统调优等方面都非常重要。通过合理地管理进程,操作系统可以确保系统的稳定性、安全性和性能。
相关文章:
【Linux的进程篇章 - 冯诺依曼的体系结构】
Linux学习笔记---005 Linux冯诺依曼体系结构理解1、冯诺依曼体系结构1.1、冯诺依曼体系结构1.2、硬件层面1.3、数据层面1.4、那么冯诺依曼体系能干什么呢? 2、操作系统(Operastor System)2.1、概念2.2、操作系统层的核心功能 3、进程的初步理解 Linux冯诺依曼体系结…...
flask-(数据连接池的使用,定制命令,信号的使用,表关系的建立和查询)
文章目录 连接池实例flask定制命令flask 缓存的使用flask信号的使用sqlalchemy原生操作sqlalchemy操作表flask orm操作表一对多的增加和跨表查询 (一对一只需要关联字段加上 ,uniqueTrue)多对多关系的增加和查询多对多基本的增删改查 连接池 import pymy…...
设计模式学习笔记 - 设计模式与范式 -行为型:2.观察者模式(下):实现一个异步非阻塞的EventBus框架
概述 《1.观察者模式(上)》我们学习了观察者模式的原理、实现、应用场景,重点节介绍了不同应用场景下,几种不同的实现方式,包括:同步阻塞、异步非阻塞、进程内、进程间的实现方式。 同步阻塞最经典的实现…...
数据挖掘|贝叶斯分类器及其Python实现
分类分析|贝叶斯分类器及其Python实现 0. 分类分析概述1. Logistics回归模型2. 贝叶斯分类器2.1 贝叶斯定理2.2 朴素贝叶斯分类器2.2.1 高斯朴素贝叶斯分类器2.2.2 多项式朴素贝叶斯分类器 2.3 朴素贝叶斯分类的主要优点2.4 朴素贝叶斯分类的主要缺点 3. 贝叶斯分类器在生产中的…...
Linux文件(系统)IO(含动静态库的链接操作)
文章目录 Linux文件(系统)IO(含动静态库的链接操作)1、C语言文件IO操作2、三个数据流stdin、stdout、stderr3、系统文件IO3.1、相关系统调用接口的使用3.2、文件描述符fd3.3、文件描述符的分配规则3.3、重定向3.4、自制shell加入重…...
CI/CD实战-jenkins结合ansible 7
配置主机环境 在jenkins上断开并删除docker1节点 重新给master添加构建任务 将server3,server4作为测试主机,停掉其上后面的docker 在server2(jenkins)主机上安装ansible 设置jenkins用户到目标主机的免密 给测试主机创建用户并…...
内网渗透-(黄金票据和白银票据)详解(一)
目录 一、Kerberos协议 二、下面我们来具体分析Kerberos认证流程的每个步骤: 1、KRB_AS-REQ请求包分析 PA-ENC-TIMESTAMP PA_PAC_REQUEST 2、 KRB_AS_REP回复包分析: TGT认购权证 Logon Session Key ticket 3、然后继续来讲相关的TGS的认证过程…...
学习transformer模型-Dropout的简明介绍
Dropout的定义和目的: Dropout 是一种神经网络正则化技术,它在训练时以指定的概率丢弃一个单元(以及连接)p。 这个想法是为了防止神经网络变得过于依赖特定连接的共同适应,因为这可能是过度拟合的症状。直观上&#…...
游戏引擎中的大气和云的渲染
一、大气 首先和光线追踪类似,大气渲染也有类似的渲染公式,在实际处理中也有类似 Blinn-Phong的拟合模型。关键参数是当前点到天顶的角度和到太阳的角度 二、大气散射理论 光和介质的接触: Absorption 吸收Out-scattering 散射Emission …...
华为鲲鹏云认证考试内容有哪些?华为鲲鹏云认证考试报名条件
华为鲲鹏云认证考试是华为公司为了验证IT专业人士在鲲鹏计算及云计算领域的专业能力而设立的一项认证考试。以下是关于华为鲲鹏云认证考试的一些详细信息: 考试内容:华为鲲鹏云认证考试的内容主要包括理论考核和实践考核两大部分。理论考核涉及云计算、…...
v3-admin-vite 改造自动路由,view页面自解释Meta
需求 v3-admin-vite是一款不错的后端管理模板,主要是pany一直都在维护,最近将后台管理也进行了升级,顺便完成一直没时间解决的小痛痒: 在不使用后端动态管理的情况下。我不希望单独维护一份路由定义,我希望页面是自解…...
FIFO存储器选型参数,结构原理,工艺与注意问题总结
🏡《总目录》 目录 1,概述2.1,写入操作2.2,读取操作2.3,指针移动与循环2.4,状态检测3,结构特点3.1,双口RAM结构3.2,无外部读写地址线3.3,内部读写指针自动递增3.4,固定深度的缓冲区4,工艺流程4.1,硅晶圆准备...
jvm高级面试题-2024
说下对JVM内存模型的理解 JVM内存模型主要是指Java虚拟机在运行时所使用的内存结构。它主要包括堆、栈、方法区和程序计数器等部分。 堆是JVM中最大的一块内存区域,用于存储对象实例。一般通过new关键字创建的对象都存放在堆中,堆的大小可以通过启动参数…...
DeepL Pro3.1 下载地址及安装教程
DeepL Pro是DeepL公司推出的专业翻译服务。DeepL是一家专注于机器翻译和自然语言处理技术的公司,其翻译引擎被认为在质量和准确性方面表现优秀.DeepL Pro提供了一系列高级功能和服务,以满足专业用户的翻译需求。其中包括: 高质量翻译…...
第十一届 “MathorCup“- B题:基于机器学习的团簇能量预测及结构全局寻优方法
目录 摘 要 第 1 章 问题重述 1.1 问题背景 1.2 问题描述 第 2 章 思路分析...
云计算探索-如何在服务器上配置RAID(附模拟器)
一,引言 RAID(Redundant Array of Independent Disks)是一种将多个物理硬盘组合成一个逻辑单元的技术,旨在提升数据存取速度、增大存储容量以及提高数据可靠性。在服务器环境中配置RAID尤其重要,它不仅能够应对高并发访…...
LeetCode226:反转二叉树
题目描述 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 解题思想 使用前序遍历和后序遍历比较方便 代码 class Solution { public:TreeNode* invertTree(TreeNode* root) {if (root nullptr) return root;swap(root->left, root…...
特征融合篇 | 利用RT-DETR的AIFI去替换YOLOv8中的SPPF(附2种改进方法)
前言:Hello大家好,我是小哥谈。RT-DETR模型是一种用于目标检测的深度学习模型,它基于transformer架构,特别适用于实时处理序列数据。在RT-DETR模型中,AIFI(基于注意力的内部尺度特征交互)模块是一个关键组件,它通过引入注意力机制来增强模型对局部和全局信息的处理能力…...
MVCC多版本并发控制
1.什么是MVCC MVCC (Multiversion Concurrency Control),多版本并发控制。MySQL通过MVCC来实现隔离性。隔离性本质上是因为同时存在多个并发事务可能会导致脏读、幻读等情况。要解决并发问题只有一种方案就是加锁。当然,锁不可避免…...
图片转换成base64如何在html文件中使用呢
在HTML文件中使用Base64编码的图片非常简单。Base64编码是一种将二进制数据转换为ASCII字符串的方法,这使得可以直接在网页上嵌入图片数据,而无需引用外部图片文件。以下是如何在HTML中使用Base64编码的图片的步骤: 步骤 1: 将图片转换为Bas…...
【MATLAB源码-第24期】基于matlab的水声通信中海洋噪声的建模仿真,对比不同风速的影响。
操作环境: MATLAB 2022a 1、算法描述 水声通信: 水声通信是一种利用水中传播声波的方式进行信息传递的技术。它在水下环境中被广泛应用,特别是在海洋科学研究、海洋资源勘探、水下军事通信等领域。 1. **传输媒介**:水声通信利…...
七、函数的使用方法
函数的调用 nameinput()#输入参数并赋值name print(name)#d打印name 格式:返回值函数名(参数) def get_sum(n):#形式参数计算累加和:param n::return: sumsum0for i in range(1,n1):sumiprint…...
数据分析之Tebleau 简介、安装及数据导入
Tebleau简介 Tebleau基于斯坦福大学突破性交互式技术 可以将结构化数据快速生成图表、坐标图、仪表盘与报告 将维度拖放到画布等地方是他的主要操作方式 例:Tebleau是手机相机 (相对来说更简单) POWER BI是单反相机 Tebleau各类产品 Teblea…...
分享一下设计模式的学习
分享一下设计模式的学习 1、什么是设计模式? 设计模式是在软件设计过程中,经过实践和总结得出的描述、解决软件设计问题的一种经验总结。它是一种被广泛接受和验证的最佳实践,用于解决特定类型的问题,并提供了可重用的解决方案。…...
【JavaEE初阶系列】——CAS
目录 🎈什么是 CAS 📝CAS 伪代码 🎈CAS 是怎么实现的 🎈CAS 有哪些应用 🚩实现原子类 🌈伪代码实现: 🚩实现自旋锁 🌈自旋锁伪代码 🎈CAS 的 ABA 问题 &#…...
webGIS 之 智慧校园案例
1.引入资源创建地图 //index.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content&qu…...
CVAE——生成0-9数字图像(Pytorch+mnist)
1、简介 CVAE(Conditional Variational Autoencoder,条件变分自编码器)是一种变分自编码器(VAE)的变体,用于生成有条件的数据。在传统的变分自编码器中,生成的数据是完全由潜在变量决定的&…...
【Linux】TCP网络套接字编程+守护进程
文章目录 日志类(完成TCP/UDP套接字常见连接过程中的日志打印)单进程版本的服务器客户端通信多进程版本和多线程版本守护进程化的多线程服务器 日志类(完成TCP/UDP套接字常见连接过程中的日志打印) 为了让我们的代码更规范化&…...
【Qt 学习笔记】Day2 | 认识QtSDK中的重要工具
博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Day2 | 认识QtSDK中的重要工具 文章编号:Qt 学习笔记 / 03…...
adc123456
DMA主要用于协助CPU完成数据转运的工作 DMA,英文全称Direct Memory Access,DMA这个外设是可以直接访问STM32内部存储器的,包括运行内存SRAM,程序存储器flash和寄存器等等,DMA都有权限访问,所以DMA能完成数据…...
wordpress讨论吧/市场调研报告范文3000字
LP Wizard10.5破解笔记: 首先下载完安装包(附破解包)后解压会有两个文件夹, 1.先运行一次Crack.vbs,路径空着 2.点LPWizard_mib.exe安装软件,安装到默认路径,不安装license。 3.再运行一次Crack…...
官方网站建设成果/互动营销的案例有哪些
介绍一款Windows下的神奇 —— everything,软件很小巧,但是搜索速度非常快,比Windows自带的搜索功能更强大、更快。掌握它的基本用法,在查找文件时能提升很高的效率 1、下载 2、基本设置(搜索历史) a) 如何…...
无锡哪里有做网站/企业百度推广怎么收费
场上数据很水,比较暴力的做法都可以过90分以上,下面说几个做法。 1. 暴力枚举所有最大独立集,对每个独立集分别DP。复杂度玄学,但是由于最大独立集并不多,所以可以拿90. 2. dp[S][k]表示考虑到排列的第k位,…...
去哪里学做网站app/爱站工具网
PHP调用MYSQL存储过程实例 标签: mysql存储phpsqlquerycmd2010-09-26 11:10 11552人阅读 评论(3) 收藏 举报实例一:无参的存储过程$conn mysql_connect(localhost,root,root) or die ("数据连接错误!!!");mysql_select_db(test,$conn);$sql …...
wordpress 糗事百科/客服外包
顾名思义,xhprof gui 就是一个xhprof的一个ui展现。作者hack了facebook发布的xhprof展现代码。使xhprof界面更漂亮,功能更强大。xhprof gui新增了如下特性:友好的界面数据库存储(mysql)支持按请求百分比执行xhprof优化。降低服务器负载。支持…...
win7版本wordpress/爱站网备案查询
注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《分布式机器学习实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录自然语言处理系列二词频-逆文档频率(TF-IDF)Java代码实现TFIDF》总结自…...