裸机(前后台系统)
1.实时性差,程序轮流执行
2.delay:空等待,CPU不执行其他代码
3.结构臃肿:实现功能放在无限循环,对不同程序不进行分类,无优先级顺序
RTOS系统(Real Time OS / 实时操作系统)
低优先级任务可被高优先级打断,每个任务都是一个无限循环,优先级高的嵌套在优先级低的里,每个任务都是独立且互不影响的。如果高优先级任务一直运行,则次优先级一直等待,除非在高优先级中加入延时,才能运行低优先级任务。
1.功能划分:实现功能划分为多个任务
2.延时函数:任务调度,让出CPU给优先级高的程序先执行,执行完成后调度给次高优先级的任务执行。
3.抢占式:高优先级任务抢占低优先级任务的执行
4.任务堆栈:每个任务都有自己的栈空间,保存被打断的低优先级任务寄存器中的值、局部变量等 ,执行完高优先级任务后将值恢复到寄存器里,然后从断点继续执行下去