stm32没有mmu,不能跑linux操作系统

stm32能跑linux操作系统吗?

答案:想要运行linux,芯片需要MMU,STM32没有MMU,所以不能运行Linux,WinCE等;但是可以运行ucosii、freertos、uLinux、vxWorks等。

根本原因:linux系统是运行单位是进程,ucosii运行单位是线程。要实现进程芯片必须有MMU(存储管理单元)。crotex-M没有MMU。所以不能运行进程的操作系统。

有人总结为:

(1)操作系统有两种 用MMU的 和 不用MMU的

用MMU的是Windows MacOS Linux Android

不用MMU的是FreeRTOS VxWorks ucOS

(2)CPU有两种 带MMU的 和 不带MMU的

带MMU的有 Cortex-A系列 ARM9 ARM11系列

不带MMU的有 Cortex-M系列,stm32就是M系列;

MMU的作用:

MMU是一种硬件模块,它位于中央处理器(CPU)内部,负责在CPU和内存之间实现虚拟内存管理。在内存管理方面,MMU通过页面表实现虚拟内存管理,当CPU发出一个虚拟地址时,MMU会通过页面表查找并将其转换为对应的物理地址。此外,MMU还可以实现内存保护和共享等功能。

相关推荐
锻炼²11 小时前
stm32 HAL配置usb全速 自定义HID类详解
stm32·usb·usb枚举过程·全速传输
polarislove021418 小时前
10.1 [ADC] 逐次逼近型ADC-嵌入式铁头山羊STM32笔记
笔记·stm32·嵌入式硬件
qq_6725927518 小时前
STM32超声测距离的测量精度评估
stm32·硬件架构·硬件工程
单片机系统设计19 小时前
基于STM32的智能垃圾桶/语音分类/自动开盖/矩阵按键
stm32·矩阵·毕业设计·语音识别·智能垃圾桶
三品吉他手会点灯20 小时前
STM32F103 学习笔记-21-串口通信(第3节)-STM32串口初始化结构体和固件库讲解
笔记·stm32·单片机·嵌入式硬件·学习
TEC_INO21 小时前
STM32_5:I2C
stm32·单片机·嵌入式硬件
TEC_INO21 小时前
STM32_6:OLED屏幕开发
stm32·嵌入式硬件·mongodb
单片机系统设计1 天前
基于stm32的智能健康监测/老人摔倒/智能防摔
stm32·单片机·嵌入式硬件·毕业设计·健康系统
czhaii1 天前
STM32 F1 高级定时器TIM8 脉冲计数 计数器1模式 CH1通道
stm32·单片机·嵌入式硬件
polarislove02141 天前
9.7 [ 定时器 ] 从模式控制器-嵌入式铁头山羊STM32笔记
笔记·stm32·嵌入式硬件