linux中,arch,processor和mach的关系

解读内核时,有很多近似的词需要区分。不能正确理解将会陷入一片混乱状态。这3个词,我们不给出中文。直接描述其含义。

arch:内核目录里面有专用的目录,代表了一种架构。arch是硬件里面最大的分类,那些硬件可以归到同一个arch里面呢?这个取决于指令集。 采用相同硬件指令集的处理器属于同一个arch。同时arch的种类决定了gcc的种类,不同的arch目录必须采用不同的gcc编译。编译arm架构, 采用arm-linux-gcc。编译ppc则需要ppc-linux-gcc。

processor:processor隶属于arch的一个分支,代表了一个处理器家族。即使采用相同的指令集,由于指令集存在版本的差异,这促生了处理器家族的概念。举例来说,x86代表了一种指令集,而286,386,486则分别使用了该指令集的不同版本,分别属于不同的处理器家族。arm 也代表了一种指令集,而arm7,arm9等等分别也是不同的处理器家族。

mach:他通常指某一款特定的处理器。属于processor的实体化。

 mach

 processor

 arch

 说明

 sa1100

 arm920

 arm

 

 s3c44b0

 arm7

 arm

 

 P4

 i686

 x86

 

 AMD_64

 althon_64

 x86_64

 

以上规则是在内核的组织中用到的。然而这些信息是如何传递给gcc的呢?

查看arch/xxx/Makefile march代表了arch -march=armv3 -march=armv4 -march=armv5 -march=pentium-mmx

mtune代表了processor -mtune=arm7tdmi -mtune=arm9tdmi -mtune=strongarm1100

mcpu代表了mach -mcpu=860 -mcpu=ev5 -mcpu=pentium-mmx

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Arch Linux和Ubuntu是两种不同的Linux发行版,它们有一些区别,包括以下方面: 1. 安装和包管理:Arch Linux采用了滚动更新的方式,用户可以通过Arch Linux的安装程序自定义安装系统,并使用其包管理器pacman来管理软件包。而Ubuntu则提供了一个易于使用的安装程序,并使用apt包管理器来管理软件包。 2. 软件库和软件更新:Arch Linux提供了一个庞大的软件库,其包含了大量的软件包,并且以滚动更新的方式持续提供最新的软件版本。Ubuntu也有广泛的软件库,但由于其发布周期,软件包的更新相对较慢。 3. 用户定制性:Arch Linux被认为是一种面向有经验的Linux用户的发行版,它提供了完全的定制性,用户可以根据自己的需求选择安装和配置软件。而Ubuntu更注重易用性和用户友好性,提供了更多的默认设置和图形化工具。 4. 社区支持和文档资源:Ubuntu拥有庞大的用户社区和开发者社区,提供了广泛的文档资源、教程和支持。Arch Linux的社区相对较小,但也有一些活跃的用户社区和文档资源,同时它鼓励用户自己解决问题并参与社区贡献。 总之,Arch Linux和Ubuntu在安装和包管理、软件库、用户定制性以及社区支持等方面存在一些区别。选择哪个发行版取决于个人的需求和技术水平。如果您喜欢更高度的定制性和滚动更新的软件,可以选择Arch Linux;如果您更注重易用性和广泛的社区支持,可以选择Ubuntu。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值