Cortex-M可以跑Linux操作系统吗?

Cortex-M7仍然没有内存管理单元MMU,而linux的内存管理机制高度依赖MMU;还是只能运行采用实存储器管理策略​的uCLinux,不支持完整的linux但是可以支持uclinux

uClinux从Linux 2.0/2.4内核派生而来 [1] ,沿袭了Linux的绝大部分特性。它是专门针对没有MMU(内存管理单元)的CPU,并且为嵌入式系统做了许多小型化的工作。它通常用于具有很少内存或Flash的嵌入式操作系统。在GNU通用许可证的保证下,运行uClinux操作系统的用户可以使用几乎所有的Linux API函数。由于经过了裁剪和优化,它形成了一个高度优化,代码紧凑的嵌入式Linux。它具有体积小、稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持,以及丰富的API函数等优点。uClinux与Linux在兼容性方面表现出色,uClinux除了不能实现fork()外,其余uClinux的API函数与标准Linux完全相同。

ARM Cortex-A系列处理器广为认知,严格来说它属于应用处理器,针对高性能移动应用。Cortex-M、Cortex-R则是ARM旗下的另外两个主力产品,都针对嵌入式,前者属于微型控制器(M),后者属于实时处理器(R)。

Cortex-A、Cortex-M/R最大的不同就是后两者没有内存管理单元(MMU)(M/R带有大空间片上的RAM,内核直接操作片上RAM。A系列则有MMU内存管理单元,能管理外部的DDR,EMMC,SD卡等存储器,带有很小的片上RAM,一般还不对用户开放)。它的主要任务是在处理器、内存之间架起一座桥梁,执行物理地址、虚拟地址转换,Linux(Android)、Windows、Mac OS X、iOS等通用目的操作系统都需要它才能正常工作。
Cortex-M/R搭配的则是实时操作系统(RTOS)。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值