计算机程序分类与编程语言基础全解析
1. 软件系统的一般行为
软件系统具有两个主要特性,这极大地增加了系统的复杂性:时间限制和容错要求。
1.1 时间限制
不同的软件系统对时间的要求不同,可分为以下几类:
- 非实时要求 :批处理系统是这类软件系统的典型例子。它在完成任务时,先获取输入,然后进行计算,最后输出结果,没有时间限制。
- 弱实时要求 :对话系统属于此类,以人类作为交互环境。用户输入查询,系统需要及时响应。虽然长时间的响应会让用户感到烦躁,但通常不会造成严重后果。
- 硬实时要求 :硬实时系统必须严格遵守时间限制才能正常运行,如过程控制系统和通信系统。
1.2 通信系统
多个计算机可以连接成网络,通过发送和接收数据包进行通信。通信规则(通信协议)可能要求接收方返回确认包,以证明数据包已到达目的地。如果在特定时间内没有收到返回包,发送方会认为接收方未运行或数据包在网络中丢失。这体现了时间限制在通信系统中的重要性。
1.3 过程控制系统
当计算机系统控制技术过程(如装配线)时,计算机中的软件与技术系统相互交织,产生了两个重要的实时需求:
- 控制系统必须在特定时刻执行某些操作。
- 控制系统必须对技术过程中随机发生的事件做出反应。
系统需要为这两个需求提供特定的反应时间,否则可能会造成严重后果。
1.4 系统可靠性
系统可靠性与系统提供所需服务的能力有关。构建