嵌入式实时系统的几个关键点
1. 信号量一般用于共享变量的控制和任务间的同步,然而在某些情况下,使用信号量是不必要的,如处理简单的共享变量,请求和释放信号量花费的时间要远多于开关中断的时间,在这种情况下,使用开关中断比使用信号量是个更好的选择。
2. 处理死锁的一个简单方法是在申请信号量时设定一个等待时间,当超过这个时间,就报告系统错误。
3. 对于裸机系统和不可剥夺型内核系统,中断处理完就返回执行被中断任务,而对于可剥夺性内核,中断处理完后要判断是否有更高优先级的任务被加入任务队列,如果有就转去执行该任务,而对于原来被中断的任务,只有重新成为最高优先级的任务才能被执行。