资 源 简 介
When Software STInks (and What to Do About It)
本文是关于软件开发和嵌入式系统和实时应用程序编程的系列文章中的第一篇。以后的文章自然会参考XMOS技术的时间,所以在开始之前就看,XMOS融入软件世界。
软件是一件了不起的事情。编程语言表达能力强,编译速度快,有很多抽象和工具可供开发,而且更新设备功能方便快捷。这意味着软件驱动的系统中的任何部分都是系统中最灵活的部分——一个奇妙的部分。
然而,有一个软件非常糟糕的地方:快速实时处理。这是在某个任务必须在某些外部事件之前完成的处理,例如,在显示器的屏幕刷新之间操作图像数据,或者基于一些快时钟向外部I/O引脚提供数据。
当然,软件可以用于此,但所有的奇妙的易用性和灵活性似乎消失了。软件开发变得难以维护。
The problems
So, why does software have problems when faced with real-TIme or interface driven applicaTIons? The problems can be characterized into categories.
Problem 1: MulTI-tasking
Naturally, a processor is likely to be trying to do more than one task, even for the simplest problem. However, processors cannot generally do more than one thing at once. Even multi-core processors with traditional architectures may be able to do only two or four things at once in hardware.