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还可以实现内存保护和共享等功能。

相关推荐
yongui478343 小时前
基于STM32的Lora SX1278程序设计与实现
stm32·单片机·嵌入式硬件
永霖光电_UVLED8 小时前
意法半导体:华虹40nm代工生产的STM32 MCU开启交付
stm32·单片机·嵌入式硬件
羽获飞10 小时前
从零开始学嵌入式之STM32——30.使用触发输入和从模式测量PWM信号的占空比
stm32·单片机·嵌入式硬件
技术民工之路11 小时前
Keil MDK 5.40:STM32 工程编译 + 调试完整教程
stm32·单片机·嵌入式硬件
LCG元12 小时前
STM32嵌入式开发:基于STM32F103的智能语音识别系统
stm32·嵌入式硬件·语音识别
安庆平.Я13 小时前
STM32——FreeRTOS - 任务创建和删除 ~ 静态方法
stm32·单片机·嵌入式硬件
蒙塔基的钢蛋儿13 小时前
告别内存泄露与空指针:用C#与.NET 10开启STM32H7高性能单片机开发新纪元
stm32·c#·.net
学嵌入式的小杨同学13 小时前
STM32 进阶封神之路(二十七):MQTT 深度解析 —— 从协议原理到 OneNET 云平台接入(底层逻辑 + AT 指令开发)
stm32·单片机·嵌入式硬件·mcu·硬件架构·pcb·嵌入式实时数据库
DLGXY14 小时前
STM32(二十九)——读写、擦除FLASH
前端·stm32·嵌入式硬件
風清掦14 小时前
【江科大STM32学习笔记-09】USART串口协议 - 9.2 USART串口数据包
笔记·stm32·单片机·嵌入式硬件·学习