Embedded Systems Fundamentals · Interview question

Why does an MCU boot so much faster than an MPU?

A strong answer

An MCU's program lives in on-chip flash, and the CPU can begin executing from it essentially immediately after reset, the startup code just initializes RAM sections and jumps to main, taking milliseconds. An MPU has no usable on-chip program memory, so its boot is a multi-stage process: a small ROM bootloader loads a second-stage bootloader from external storage, which initializes the external DRAM controller, loads the OS kernel and root filesystem from eMMC/flash into DRAM, and then the kernel brings up drivers and userspace, all of which takes seconds. So the difference is fundamentally about where the code runs from and how much must be loaded and initialized before the system is functional. This is why safety- or responsiveness-critical functions (an airbag controller, a power-sequencing supervisor) live on an MCU that's ready at power-on, not on an MPU that's still booting Linux.

What a weak answer sounds like

You know the answer. Do you know what gets you dinged?

Pro breaks down the answer most candidates actually give to this question — and the specific reason an interviewer marks it down. It’s the difference between sounding correct and sounding senior, on all 472 questions.

From the lesson

What Is an Embedded System?

A computer dedicated to one job inside a larger device, and the MCU-vs-MPU choice (everything-on-one-chip vs an application processor running Linux) that frames every design.

More What Is an Embedded System? questions

Browse all 472 interview questions
Why does an MCU boot so much faster than an MPU? | EmbeddedPrep.io