刘丹
(上海市贸易学校 计算机教研室,中国 上海200000)
在21世纪的今天,物联网技术发展迅速,并被广泛应用到工业控制的各个领域之中,正在成为工业革命和工业改造的主导技术力量。这都是在产生和发展了实时操作系统之后,才成为现实的。一台或几台计算机只有在实时操作系统的统一组织和合理调度之下,才能组成一个实时控制系统,才能实现对复杂的工业过程的实时控制。而它又是在一般操作系统(简称为OS)基础上发展起来的,要设计实时OS,应首先掌握OS的一般原理,运用设计OS的基本方法和技巧,结合实时OS的结构特点加以具体实现。
本文将在介绍OS有关概念的基础上,对实时OS进行详细分析,以使我们从实时OS出发,来解剖Z-80系统监控程序,掌握Z-80微机工业实时控制系统的实时OS的设计方法和技巧,并进一步展开系统应用程序设计的讨论。
实时系统是能及时响应外部发生的随机事件,并以足够快的速度完成对事件的处理的计算机应用系统。所谓外部事件是指与计算机相连接的设备(探测设备,控制对象,键盘等)提出的服务要求,如数据采集,情报检索,控制器输出等。
由此可见,实时系统具有如下特点:
例如,雇员上下班排队打卡时,计算机须在几秒钟内捕获卡片上的数据,如果在下一张卡片插入时未获取数据,该数据就会丢失。同样,要求的各种输出也须在一定时间完成。这一时间总和叫系统响应时间,范围一般从几毫秒到几秒,缩短响应时间是设计实时系统的关键。
一个实时系统的负荷可能很不均匀,但必须满足一定峰值负荷要求。例如,实时雇员考勤系统,早晚上下班时,该系统频繁工作,从打卡机捕获和处理数据的能力须满足雇员上下班记录出勤情况要求。
由于输入数据由系统本身捕获,因此,该数据只有在系统中才有效,而且只能通过系统来访问。因此实时系统的可靠性至关重要。
总之,设计实时系统要考虑:响应时间、吞吐率、暂存时间、多任务计算、优先级、运行时间、任务同步与关键任务计算、可靠性参数等。
计算机在发展初期,是没有OS的,计算机操作过程用人工来控制,程序员把编好的程序和数据,通过输入介质把程序一道道地输入到计算机中,每输入一道程序,便启动一次计算机运行,并在程序员控制下,不断干预计算机的执行过程,直到程序完成。这种操作过程显然不适于多道程序并行处理,自动,连续工作,且要求及时对瞬态过程做出反应的工业实时控制系统。
OS的出现,使计算机实现了操作过程管理的自动化,充分发挥了计算机的高效能和高速处理能力,使计算机的适应性愈来愈强,应用范围愈来愈广,其OS也随之愈来愈复杂。目前OS按其处理功能已分成三大分支,即批处理OS;分时OS和实时OS。同一台计算机,因配置的OS不同而具有不同的功能。因此,OS的出现,使我们在计算机硬件系统的基础上获得了一个功能更强,应用范围更广的计算机。这在物联网技术发展迅猛的时代尤其重要。
计算机系统的OS,因其资源的不同而有很大差异,人们根据OS的具体功能把他分为三类。
2.1.1 批处理OS:是指提高计算机效率和处理能力,操作实用方便,减少人工干预的一种OS。但他在用户对计算结果进行分析判断乃至反复修改方案的过程是十分不便的,因此,人们又提出了分时OS。
2.1.2 分时OS:为了即充分利用现代计算机的高速处理能力,依靠分时OS把计算机运行处理的时间分割成为各个终端作业服务的独立单元,计算机轮流为各个终端设备的作业服务,在计算机的数据处理和情报收集网络系统中主要是应用了上述的分时OS。
在上述的分时OS中,仅要求计算机在允许的时间内能及时响应终端的请求便可。但在工业实时控制系统中,要求必须对外来信息快速响应和处理,否则,就会出现信息丢失的后果。于是,人们又发展了实时OS。
OS是一组系统资源的管理程序,依靠它来实现对处理机的管理、存储管理、设备管理、信息管理、中断管理等五个功能。计算机的实时OS同样要具备这五个功能,现分述如下:
2.2.1 处理机管理:首先必须考虑如何来使用计算机,在工业实时控制系统中,计算机的控制对象不可能是单一的,例如一个车床控制系统中,要有两套驱动步进电机,要有键盘,显示器等外设,对于其中每一个具体的控制对象都存在着何时和怎样使用处理机的问题,所以处理机管理要解决调度问题。
2.2.2 存储管理:OS中的存储管理技术随着计算机系统功能的不断扩大,而不断提高,目前已由初期的简单的静态发展成动态分配,由实际存储发展为虚拟存储空间。其方法大致有静态、动态地址分配、动态页面内存管理这三种。
2.2.3 设备管理:设备管理是OS中所具有的基本功能。实时系统要及时地接受和处理实时信息,并在规定时间里对实时工作的设备发出控制信息,而不出现信息丢失的现象,就必须依靠OS来保证计算机和实时设备能在灵活的被控状态下并行工作。这就要求实时OS具有:对外设实施监督并记录其工作状态、对外设实行并行运行的管理、对使用外设信息(包括启动,中断,结束等)进行输入与输出操作的功能。
2.2.4 信息管理:计算机要处理大量的信息,那些暂时还未采集传送和处理操作的信息,就暂时存在便于检索的储存区域内,以备即时之需。因此,文件系统是实时OS质量的重要内容。
2.2.5 中断管理功能:是实时OS进行实时管理的具体手段和方法,因此,微机的工业实时控制系统是在中断管理下进行工作的。
中断管理系统要求硬件应设置中断监视和响应装置,软件应设置灵活的中断处理程序。一般地实时系统中的各种中断可按其优先级别由高到低分为机器中断、程序中断、时钟中断、外部设备中断这四种。
通过以上说明,计算机的工业实时控制系统依靠实时OS的管理才能实现,虽然实时OS因计算机不同而不同,但任何计算机的工业实时控制系统都不能缺少实时OS,而且,实时OS的功能愈强愈完善,该系统用户使用起来愈方便,愈可靠。下面结合Z-80系列微机系统监控程序分析如何建立微机工业实时控制系统的实时OS,并在此基础上,展开应用程序设计的讨论。
Z-80监控程序虽然较低级,但它们是一种OS。可在系统中用来对整个系统通电或复位后进行初始引导,以便系统进入运行状态;用来键入接受或保存机器编码的源程序;用来监控执行,调式或修改源程序,以及显示相应储存单元或缓冲寄存器的内容。Z-80监控程序这些具体作用是通过:RAM区和使用子程序块及表格、监控程序的地址表、监控程序总体结构出发及复位、初始引导程序、更新显示程序、键盘分析处理程序的管理程序来实现的
Z-80系统监控程序还具有处理保存用户程序的功能,依靠它来把用户程序转储于外部磁带或固化到EPROM中,使用时,便可顺序装入内存RAM进行运行。
因为Z-80单板机的工业实时控制系统和Z-80单板机系统有很大的差别。在进行系统管理程序的设计过程中,如何最大限度地开发系统的软件,硬件资源,是设计工作中必须认真考虑的一个重要问题,现有资源利用好,系统程序的工作量可相应减少,功能也可相应提高。
综上所述,首先设计实时系统一定要考虑响应时间、吞吐率、暂存时间、多任务计算、优先级、运行时间、任务同步与关键任务计算、可靠性参数等特征。其次明确计算机的实时OS也要具备OS的实现对处理机的管理,存储管理,设备管理、信息管理,中断管理这五个功能。最后讨论了一下将Z-80微型计算机应用到工业实时控制系统中去,组成一个以Z-80微机为核心的工业实时控制系统。
以上只是提出如何在深入了解实时多任务OS的基础上如何实现微机工业实时控制系统的一些想法,具体实现,本篇不再叙述。
[1]Y.柏克.多微机处理口系统[M].西安交通大学出版社,1986.
[2]袁由光.实时系统中的可靠性技术[M].清华大学出版社,1995.