1 / 9
文档名称:

基于 COP控制软件安全性研究方法.pdf

格式:pdf   大小:154KB   页数:9页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

文档介绍:基于 COP控制软件安全性研究方法

1 前言




导致软件失效的原因主要有两类,一类是程序的逻辑错误,如某个

公式的代码描述错误;另一类是对软件在不同环境中运行没有正确设计。

例如199

EventCJ等都可以实现。但是对于控制软件安全性升级,危险状态的触发很有可能需要改变执行器的行为,例如停止马达的转动,在危险消除以后

恢复执行器的原有执行状态。



从控制软件的角度来看,执行器是程序中的临界资源,软件的安全

相关部分对其访问和修改会影响到应用相关部分原来的运行结果,而目前

的 COP

支撑机制并没有对程序行为切换过程中临界资源的访问控制提供明确的支

持。针对上面的问题,我们对 EventCJ

做了一定的改进,对于程序行为切换过程所影响的临界资源提供对其上下

文保存和恢复的支持机制,并且在Lego NXT上实现了一个运行支撑机制。



本文第二部分介绍了一些相关工作,第三部分详细描述了我们的模

型,第四部分详细介绍了我们的运行支撑机制,第五部分给出了一个相关

的实验案例。.............


2 相关工作




软件的上下文正成为软件开发要面对的一个非常重要的问题,但是

主流编程语言几乎没有提供准确地描述上下文的能力,COP

编程方法的出现很好的弥补了这一不足。COP

中任何计算访问信息都被视为上下文信息。......COP 语言的一个设计问题就是对 layer

激活的控制,即什么时候、哪个 Layer

应该在程序执行过程的什么位置被激活或注销的问题。目前的研究提出主

要有两类方法,一种采用的是一种称为块结构体(block-

structured)的方法,如 ContextJ中的

with表达式。这种方法的特点是上下文环境的改变和对应行为的激活/注

销是在程序的同一处或者同一个线程内进行的,同时在退出表达式块后即

注销了对应的 Layer。另一种方法是针对 Appeltauer等人指出的很多

layer

的激活/注销是由外部事件所引发,而这类行为的激活不适宜采用块结构

体的方法来实现。为此 Tetsuo 等人设计了

EventCJ,采用的是一种称为事件驱动的方法(Event-based

ContextTransition),这种方法可以分离上下文环境的变化检测与行为的

激活。

目前大部分的 COP

语言采用的是块结构体的方法,这类方法多采用线程粒度的 layer

激活策略,虽然块语句可以很方便的表示在一个具体的方法调用中何时激



layer,但是对于那些由程序执行过程中随时发生的外部事件(如进入某座

建筑或者传感器数据发生变化)触发的上下文变化并不适用。



对于安全控制而言,危险状态是随机发生并且对其的响应处理需要非常及时,即任何线程的执行都有可能随时被打断。因此线程粒度的

layer 激活不适用于软件的安全性升级。

Even

分享好友

预览全文

基于 COP控制软件安全性研究方法.pdf

上传人:周瑞 8/10/2022 文件大小:154 KB

下载得到文件列表

基于 COP控制软件安全性研究方法.pdf

相关文档