【架构设计】-- aarch(ARM) and X86

1、aarch(ARM) 架构

(1)操作系统支持:早期为 32 位操作系统,目前大部分都是 64 位操作系统

(2)全称:Advanced RISC Machine,由英国ARM Holdings plc公司开发

这种架构主要⽤于智能⼿机、平板电脑、多媒体播放器、掌上视频游戏等嵌⼊式设备的CPU,甚⾄是其它军⽤设施。

2、x86 构架
     

       x86是PC上使⽤最⼴泛的指令集, 亦是历史最悠久的指令集。 x86 起源于1970年代。 在1971年推出4位芯⽚(第⼀个微处理器)后, 英特尔于1972年推出了8位8008 CPU, 紧接着⼜在1974年推出了同样是 8位的8080。 然后, ⾃然推出的是16位。 英特尔公司在1978年推出了Intel 8086。 这催⽣了x86指令集的产⽣, 其后的产品名称逐渐演变为80186、80286、80386等

3、aarch 和 x86 的差异性对比

(1)x86 架构使⽤ CISC, ⽽ARM架构使⽤RISC

      CISC 使⽤微码和庞⼤的指令集, 可减少新 CPU 的研发⼯作量。 但这也使得新CPU的指令集⽐旧 、CPU 复杂。 此外,不同的指令需要不同的时钟周期。这可能会增加机器故障率并降低指令执⾏效率。 最后但同样重要的是, 在CISC CPU中, 每条指令都有许多操作步骤,这些操作步骤依次串⾏执⾏, 增加了空闲单元电路的等待时间。

      RISC的特点包括使⽤简单的指令和减少微代码的使⽤。 当开发RISC CPU 时, 开发⼈员将花费⼤量时间将每个活动拆分为简单的指令。 这些简单的指令具有相同的⻓度, 并且⼤部分可以在⼀个时钟周期内执⾏。 此外, 处理器可以同时执⾏⼀系列指令。 因此, 如果使⽤相同的芯⽚技术和相同的运⾏时钟, RISC系统的运⾏速度将⽐CISC系统快2到4倍。 ⽽且90%的RISC指令直接由硬件完成, 只有10%的指令由软件组合完成, 因此RISC系统的指令执⾏时间将进⼀步缩短。

      当然,RISC体系结构也有其缺点。例如,它需要更多的内存来执⾏指令。

(2)x86 架构侧重于⾼性能, ⽽ ARM 架构侧重于降低功耗

       例如,x86 笔记本电脑芯⽚的功耗在15W到45W之间, ⽽Apple M1的功耗约为10W。

(3)x86 CPU⽐ARM CPU有更好的软件兼容性

x86 CPU VS ARM CPU 总结:

名称ARMx86
构建RISCCISC
电源效率⼀般来说更省电通常功率效率较低
指令流⽔线较多较少
指令系统精简指令集复杂指令集
市场占有率在移动设备和物联⽹领域占据主导地位。在台式机、笔记本电脑和服务器市场占据主导地位
指令译码指令解码很容易处理解码以复杂的⽅式处理
指令执⾏速度更快的指令执⾏减少了时间执⾏时间更⻓
指令执⾏效率多条指令从复杂指令⽣成并单独执⾏其架构能够同时管理复杂的语句执⾏
处理器操作管理编译器在管理操作中起着⾄关重要的作⽤微程序就完成了这个⼯作
寄存器和内存管理需要更少的寄存器但更多的内存使⽤更多的寄存器和更少的内存
性能优化⽅法使⽤以软件为中⼼的⽅法优化性能优化性能的硬件⽅法
内存使⽤和计算使⽤可⽤内存进⾏计算需要补充内存进⾏计算

参考:ARM 与 x86:有何区别?

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

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

相关文章

2.11、matlab中for循环,if else判断语句,break和continue用法以及switch case语句使用

1、前言 在MATLAB中,for循环用于迭代一个固定次数的循环。可以使用if else语句在循环中进行条件判断,根据条件的不同执行相应的代码块。break和continue可以用于控制循环的执行流程,break用于提前结束循环,而continue用于跳过当前循环迭代,继续下一次迭代。switch case语…

Android车载蓝牙音乐实例(附Demo源码):实现手机播放音乐后车机应用显示音乐名称,歌手,专辑名。且可控制上一曲下一曲,暂停播放功能

一、功能需求 功能需求是在Android10以上设备上实现蓝牙音乐功能,细分为两个功能点: 1、手机和车载设备实现蓝牙连接 (本Demo文只做监听蓝牙连接状态,需手动到设置中连接蓝牙) 2、连接蓝牙成功后手机播放音乐时车载…

Python常用内置函数(二)

Python 常用内置函数及示例(续) 在前面的基础上,我们将继续介绍另外50个常用的Python内置函数,并给出每个函数的简短说明和示例。 1. callable() 功能: 检查对象是否可调用。示例:def func(): pass print(callable(func)) # 输…

leetcode 递归(回溯)——java实现

递归算法与DFS类似,也与二叉树的先序遍历类似 以下摘自 leetcode回溯算法入门级详解 回溯法 采用试错的思想,它尝试分步的去解决一个问题。在分步解决问题的过程中,当它通过尝试发现现有的分步答案不能得到有效的正确的解答的时候&#xff…

了解蜜罐网络技术:网络安全中的诱捕与防御

在网络安全领域,攻击者和防御者之间的斗争日趋激烈。为了更好地识别、分析和抵御网络攻击,安全专家开发了一种称为蜜罐网络技术(Honeypot Network Technology)的防御策略。蜜罐网络不仅能够吸引攻击者进入虚假的环境,从…

MySQL笔记01: MySQL入门_1.2 MySQL下载安装与配置

2.2 MySQL下载安装与配置 2.2.1 MySQL下载 MySQL中文官网:https://www.mysql.com/cn/ MySQL英文官网:https://www.mysql.com/ MySQL官网下载地址:https://www.mysql.com/downloads/ (1)点击“MySQL Community (GPL) Do…

TinaSDKV2.0 自定义系统开发

TinaSDKV2.0 自定义系统开发 什么是自定义系统? TinaSDK Kconfig界面配置 Tina Linux采用 Kconfig 机制对 SDK 和内核进行配置。 Kconfig 是一种固定格式的配置文件。Linux 编译环境中的 menuconfig 程序可以识别这种格式的配置文件,并提取出有效信息…

catvod、TVBox源的解析过程分析和Spider参数覆盖问题解决

文章目录 TVBox官网源内容的结构 Spider参数覆盖问题Spider参数覆盖问题的解决脚本附录:核心代码分析首页详情页面播放界面获取播放信息源内容配置类Jar包解析类Js解析类Spider TVBox官网 TVBox项目索引:https://github.com/o0HalfLife0o/TVBoxOSC/ 完…

LibreWolf使用记录

之前一直使用Firefox作为个人主力浏览器,工作上由于有些网页兼容问题,一直使用的是Chrome。自从看了Eric Murphy 关于浏览器的分类之后, 出于对隐私的考虑,还是决定把chrome换成Brave,同时考虑对Firefox进行harden或者使用LibreWo…

从力扣中等+困难题+表白HTML测试 -- 文心快码(Baidu Comate)

0 写在前面 (通过如下链接/二维码进入官网注册,并在IDE使用三次及以上可以找我领计算机基础/ML/DL 面经/知识点一份~) 官网地址:Baidu Comate Step1 打开文心快码(Baidu Comate)官网,点击「免…

[Python可视化]空气污染物浓度地图可视化

[Python可视化]空气污染物浓度地图可视化,果然是路边浓度最大 在本篇文章中,我将展示如何使用 Python 结合 OSMnx、NetworkX 和 GeoPandas 等库,计算给定路径的最短路线,并基于该路径穿过的网格单元计算总污染量。最终&#xff0c…

【ORACLE】listagg() 函数

在Oracle数据库中,LISTAGG 函数是一个非常有用的聚合函数,它能够将多个行的字符串值连接成一个单独的字符串。这个函数在处理需要将多行数据合并为一行数据的场景中特别有用,比如生成报表或者构建复杂的字符串输出。 基本语法 LISTAGG 函数…

k8s - Secret实践练习

参考文档:https://kubernetes.io/zh-cn/docs/concepts/configuration/secret/ 这个和ConfigMap很相似,这里选两个做下测试,就不过多赘述了 简介 Secret 类似于 ConfigMap 但专门用于保存机密数据。 Secret 是一种包含少量敏感信息例如密码…

<数据集>鸟类识别数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:16287张 标注数量(xml文件个数):16287 标注数量(txt文件个数):16287 标注类别数:10 标注类别名称:[Chestnut Munia, Zebra Dove, Garden Sunbird, Collared Kingfish…

一篇文章入门Java虚拟机(JVM)

JVM全称是Java Virtual Machine,中文译名Java虚拟机。本质上是一个运行在计算机上的程序 一,JVM的功能 功能描述解释和运行对字节码文件中的指令,实时的解释成机器码,让计算机执行内存管理自动为对象、方法等分配内存&#xff1…

ChatGPT 3.5/4.0 新手使用手册

ChatGPT 3.5/4.0 新手使用手册 一、引言 ChatGPT 是由 OpenAI 开发的一种基于人工智能技术的聊天机器人,它能够自动生成自然语言的响应,与用户进行高质量的对话。ChatGPT 3.5 和 4.0 是该系列的最新版本,它们在自然语言处理、对话能力和知识…

海山数据库(He3DB)源码详解:CommitTransaction函数源码详解

文章目录 海山数据库(He3DB)源码详解:CommitTransaction函数1. 执行条件2. 执行过程2.1 获取当前节点状态:2.2 检查当前状态:2.3 预提交处理:2.4 提交处理:2.5 释放资源:2.6 提交事务: 作者介绍…

数据结构-线性表-了解循环链表

了解循环链表 循环链表是一种特殊的链表结构,其中最后一个节点的指针指向头节点,从而形成一个闭环。循环链表可以分为两种类型:单循环链表和双循环链表。 1. 单循环链表(Singly Circular Linked List) 定义&#xf…

Qt第十八章 XML和Json格式解析

文章目录 JSON格式解析Json生成案例 XML简介与HTML的区别格式XML解析流的方式DOM XML生成 JSON与XML的区别比较 JSON 格式 JSON是一个标记符的序列。这套标记符包含六个构造字符、字符串、数字和三个字面名 六个构造字符 开始和结束数组:[ ]开始和结束对象&#x…

基于HarmonyOS的宠物收养系统的设计与实现(一)

基于HarmonyOS的宠物收养系统的设计与实现(一) 本系统是简易的宠物收养系统,为了更加熟练地掌握HarmonyOS相关技术的使用。 项目创建 创建一个空项目取名为PetApp 首页实现(组件导航使用) 官方文档:组…