保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

基于RT-Linux防危保障机制的实验模型



3 Linux平台的其它使用资源

通常,基于RT-Linux的应用程序由两部分组成:一部分运行在Real-Time下,另一部分运行在标准的Linux下。运行在Real-Time下的任务是实时任务,它作为Linu

x的内核模块(Module)被加载到Linux内核中,也就是它运行于Linux内核态,因此需要使用Linux内核态资源。本控制模型系统中的防危核正是作为实时任务运行于Linux内核态,而十字路口交通灯控制设备运行于标准Linux下。控制设备任务采用Linux的TCL/TK图形编程语言编程,以友好、形象、直观的界面模拟防危核对十字路口交通灯的控制。下面将分别介绍上述资源。

3.1 内核模块加载机制

Linux提供的可加载内核模块(Module)是Linux内核支持的动态可加载模块,它们是核心的一部分;但是并没有编译到核心里面去,只是一个目标文件,可根据需要在系统启动后动态地加载或卸载,Linux中大多数设备驱动程序或文件系统都做成这样的模块。超级用户可以通过insmod和rmmod命令分别载入和卸载模块。核心也可在需要时,请求守护进程(kerneld)载入和卸载模块。这种方式可以减小核心代码的规模,使核心配置更为灵活,并且用户不必每次修改后都重新编译核心代码和启动系统。

一旦Linux模块载入核心后,就成为核心代码的一部分。它与其它核心代码的地位是相同的。当模块载入系统核心时,系统修改核心中的符号表,将新裁入模块提供的资源和符号加载核心符号表中,新载入的模块可以访问已载入的模块提供的资源为自己服务。

3.2 TCL/TK图形编程语言

本系统中的图形用户界面采用TCL/TK图形编程语言,使界面友好、形象、直观。TCL是Tool Control Language(工具控制语言)的缩写。TK是TCL“图形工具箱”的扩展,它提供各种标准的GUL接口,以利于迅速进行高级应用程序开发。

TCL/TK是一种解释执行的脚本语言,应用中通常将嵌入到C程序中。“小巧、易学、高效、跨平台执行”是TCL语言特点的集中体现。实际上,TCL不仅仅在开发小的应用程序上有其快速、可维护性强等优势,在大型应用系统方面,如操作系统及网络管理、测试系统、自控、仿真、可视化应用及计算机辅助设计等方面都有丰富的应用成果。

4 防危核实验原型的设计与实现

图3为以交通灯控制为模型的防危核系统体系结构。

由图3可以看出,整个系统由四个部分组成:防危核、模拟设备、设备控制器、命令文件。防危核作为RT-Linux的实时任务,与模拟设备、设备控制器间的通信采用RT-Linux提供的实时FIFO;而模拟设备和设备控制器间的通信使用Linux提供的非实时命名管道。下面仔细分析各模拟所提供的功能。2⑤⑥⑦sΔδΛΔωω·αγβθθθ→→→→ττ 防危核模块的设计和实现

系统在运行时先通过命令insmod将防危核动态加载到Linux内核中,于是它便一直运行内核态。当不需要时再用命令rmmod手动卸载。这种方式下会对操作系统内核的基本功能产生任何影响,同时又可以保证demo系统的实时性。

    防危核分为主模块和命令检测模块。主模块负责接收设备控制器传来的设备命令和模拟设备发送的设备状态,然后根据命令参数的不同情况进行相应的处理。如果用户要求命令不需要通过防危核验证,则直接将命令发送到模拟设备;如果用户要求命令通过防危核验证,则主模块将调用命令检测模块进行命令的合法性检测,命令检测模块以函数形式存在并且按照交通灯的防危策略而设计。函数名为int SafetyDetect(DevState CurrentState,SourceCmdNewCom),函数返回值为命令判断结果。如果验证设备命令合法,则主模块将设备命令及返回值一起发送到模拟设备,模拟设备据此改变设备状态;如果验证设备

《基于RT-Linux防危保障机制的实验模型(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/140588.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。