Published: September 12, 2026 | Category: Technical | QSCompute
A driver expects a reversing camera to show an image before the car moves. A factory operator expects the HMI on an 嵌入式 panel to be live before the shift starts. An autonomous mobile robot expects its perception stack to be running before the motor controller leaves its safe state. In each case the user's tolerance is measured in seconds, and a stock embedded Linux image — kernel, systemd, a container runtime and an application — takes 25 to 45 seconds from power-on to useful work. Closing that gap is not one trick; it is a budget you divide across the boot stages and defend stage by stage.
This guide breaks a typical ARM64 嵌入式 boot into its stages with realistic timings, then gives the specific levers that pull each one down, and the flash-storage choice that quietly sets the floor for all of them.
| Stage | Typical Time | What Happens | Main Lever |
|---|---|---|---|
| ROM code + SPL | 0.1–0.5 s | Boot ROM loads the secondary program loader; DDR training | Boot source, DDR training mode, SPL size |
| U-Boot proper | 0.5–3 s | Full bootloader, device probing, network/USB init, delay counters | Silent boot, trimmed drivers, no boot delay |
| Kernel | 1–4 s | Decompress, probe, driver init, rootfs mount | Smaller kernel, built-in vs modules, deferred probes |
| init / userspace | 4–20 s | systemd targets, udev, network, containers | Drop targets, parallelize, replace init |
| Application ready | 2–15 s | Python/node startup, model load, GPU context | Pre-warm, snapshots, model caching |
The surprise for most teams is that the kernel is rarely the problem. On a modern Cortex-A board the kernel is up in two to four seconds; the userspace is where 10 to 25 seconds disappear, usually into systemd units nobody specified and a container runtime that starts before the workload it exists to serve.
| Boot Storage | Read Behaviour | Realistic Boot Floor | Fit |
|---|---|---|---|
| QSPI NOR | XIP-capable, microsecond latency | Sub-1 s to U-Boot, sub-2 s to app | Bootloader + tiny kernel; the fastest option |
| eMMC 5.1 | Good sequential, weak random at small queue depth | 3–8 s to app | Mainstream 嵌入式 default; tune read-ahead |
| UFS 2.2/3.1 | Command queueing, much better random reads | 2–5 s to app | Higher-end devices needing Android-class boot |
| NVMe (PCIe) | High IOPS, driver init cost on cold boot | 2–4 s to app | Data-heavy edge nodes; driver adds a little boot time |
| SBC with SD card | Variable, controller-dependent | 8–20 s, hard to guarantee | Prototypes only — never a shipping instant-on product |
This is where hardware selection and software tuning meet. If sub-two-second boot is a hard requirement, pick a board that can boot the SPL and kernel from NOR flash with the rootfs on eMMC or NVMe. If you choose an SD-card reference board for cost and then ask the software team for instant-on, you have set them an impossible task — the card itself decides the answer.
You cannot optimize 嵌入式 boot without a stopwatch on the real hardware. Timestamp the serial console output from the first ROM character, use the kernel's initcall and bootgraph traces to see which driver eats the milliseconds, and use the init system's own analyzer to find the slow units. Tune one stage at a time and re-measure; boot regressions hide easily, so add the boot-time number to your CI so it fails loudly when a dependency creeps in.
QSCompute supplies 嵌入式 boards, modules and industrial computers with documented boot paths — NOR, eMMC, UFS and NVMe variants — plus BSP and boot-time engineering support. Tell us your target boot time and the workload you need ready, and we will help you pick the platform that can actually reach it.
Need a board that can boot in under three seconds?
QSCompute supplies 嵌入式 platforms, modules and industrial computers with documented boot paths and BSP support — NOR, eMMC, UFS and NVMe options with wide-temperature and long-lifecycle commitments. Send us your boot-time target and workload.
Contact: +86 137-1464-6179 | info@qscompute.com