如何正确理解单片机开发和arm linux 嵌入式开发
主要是经济基础决定上层建筑
单片机的资源受限,只有几M的主频,几K的内存ram, 和几十K的flash, 硬件上决定了单片机的开发难度上限。
对于arm来说,无非是主频升到了GHz, DDR达到了GB, emmc也很大,以及多核的加持,这么一来可玩的花样就多了。
按照单片机的玩法开发arm可以吗,肯定可以,没有问题,但是这样绝对发挥不了arm的所有性能和功能。
实际上,bootloader就是一段裸机开发代码,但是bootloader是为了后面启动linux做准备的
想要发挥arm的性能,就需要一个操作系统,在这个操作系统上,我们有着成熟稳健的任务调度,资源管理,硬件驱动等。
也就是说,丰富的linux软件栈会帮助我们大大简化开发流程,加速我们的开发,同时背靠linux这个庞大的开源社区,我们有充分的
信心保证项目的质量和迭代。
当然, 单片机也有操作系统,比如FreeRTOS, 比如ucos等,但这些RTOS无论是规模还是功能是都无法与linux相比,因此,arm linux才会如此深入人心。