首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 203 毫秒
1.
为了提高传统资源安全分配算法效率,降低安全检查时的系统开销,提出了改进的资源安全分配算法。改进后的算法在每次安全检查时首先检查申请资源进程,一旦申请资源进程满足判定条件,便可以确定系统处于安全状态。不需要对系统中所有进程进行检查,缩小了安全检查范围,提高了系统效率。通过算法推理和实例验证,改进后的算法是可行且高效的,能更好地适应多任务系统中死锁避免的需要,实现资源的安全分配。  相似文献   

2.
死锁是操作系统、数据库系统以及通信网络中经常出现的现象.分析了使用资源分配图和进程等待图完成死锁检测的不足,提出了资源等待图的概念,并给出了基于资源等待图进行死锁检测的方法,该算法能够完成当资源类含有多个实例时的死锁检测.  相似文献   

3.
李涛  赵宏生 《控制与决策》2023,38(3):612-620
针对蚁群算法进行路径规划中出现的运行时间长、搜索效率低和容易出现死锁的问题,提出一种基于达尔文进化论思想的蚁群算法.首先,针对空白栅格搜索效率低的问题,提出一种蚁群算法简易模式;然后在启发函数中引入目标影响因子和障碍物影响因子以提高算法的全局搜索能力,避免陷入死锁;最后利用达尔文的进化论改进蚁群算法的信息素更新规则用于加快算法的迭代速度,缩小运行时间.在不同规模的栅格地图环境下的实验表明,所提出的进化蚁群算法能够加快迭代速度,提高搜索效率,实现最优路径并避免算法死锁问题.  相似文献   

4.
在求强规划解时,通过状态分层可以大幅减少问题规模,提高搜索效率,并能得到规划路径较短的强规划解。但现有分层算法本身有一定的复杂度,在状态较多时开销较大。为此,通过改进已有分层算法,设计一种适用于求强规划解的快速状态分层算法。采用链式双向图结构保存数据,在分层时修改已遍历的状态动作序偶,并根据修改结果直接进行分层判断,使得分层时只需要判断前一层状态而不是所有已分层状态,避免对非必要状态转移的搜索以及对必要状态转移的重复搜索。实验结果表明,该算法的分层速度优于已有的矩阵乘分层算法。  相似文献   

5.
为实现可重构计算中软硬件任务的自动划分,提出一种基于层次任务图模型和采用遗传算法作为搜索算法的任务划分算法.首先设计了一个层次任务图模型,其不同于基于有向非循环图(DAG)的模型,可以在任务划分时动态改变任务颗粒度,进而得到不同任务粒度下的最优解;其次设计了一个考虑了时间、功耗、资源和通信代价的适应度函数,并根据任务数量不固定的特点对遗传算法进行了改进.对文中算法在FPGA上进行实验验证和分析的结果表明,该算法的结果优于基于DAG任务图模型的任务划分.  相似文献   

6.
基于非线性共轭梯度法的混沌微粒群优化算法   总被引:1,自引:0,他引:1  
为了寻找多峰函数的全部极值点,提出一种基于非线性共轭梯度法的混沌微粒群算法.该算法引入混沌序列设置微粒群位置以提高种群的多样性;然后使用改进的微粒群认知模型对可行域内的所有极值点进行全局搜索;最后利用非线性共轭梯度法对混沌微粒群算法搜索到的较优解进行局部搜索以提高解的精度.仿真实验表明,该算法能准确、快速地找到连续可微多峰函数的全部极值点.  相似文献   

7.
针对资源个体与网络链路差异较大、广域互连的分布式系统下科学工作流的时间费用优化问题,提出改进的相对效比调度算法.利用任务配置图描述关联科学工作流过程模型的资源模型,利用任务-资源分配图作为科学工作流调度模型,采用相对效费比迭代调整任务-资源分配图,最终得到优化的工作流调度方案.算法能够避免共享资源访问冲突,合理地筛选候选资源、优化费用,能够很好地适用科学工作流的资源差异较大及任务间存在大量数据传输的特征,模拟实验表明算法性能有较大的提高.  相似文献   

8.
μC/OS-Ⅱ没有真正实现优先级继承协议解决优先级反转,也没有提供有效的死锁解决方法。对任务管理机制改进后,扩展了同优先级任务的时间片轮转调度算法,实现了真正的优先级继承协议;并且使用资源请求、分配矩阵来表示资源分配情况,在任务申请资源阻塞时进行死锁的检测与解除。通过性能分析与测试验证证明了改进算法的有效性和实时性。  相似文献   

9.
为了提高资源行为动态异构的云环境中工作流任务的调度效率,提出了一种基于动态关键路径的工作流调度算法CWS-DCP。算法将工作流任务结构定义为有向无循环图DAG模型,改进了传统关键路径的一次性搜索模式,结合云资源可用性动态可变的特征,以动态自适应方式搜索关键路径,并确定关键任务。同时,在关键任务调度后,局部DAG的关键路径搜索根据资源可用性再次迭代更新,从而动态决策任务与资源间的调度方案。通过仿真实验,构建了三种不同类型的工作流结构作为测试数据源,并与其他六种同类型的启发式和元启发式算法进行了性能比较。实验结果表明,在资源可用性动态改变和工作流规模不断增大的情况下,CWS-DCP算法在多数工作流结构中均能得到执行跨度更好的调度方案和更少的调度开销。  相似文献   

10.
针对水面无人艇路径规划问题,提出一种改进蚁群算法进行求解.该算法建立作用时效不同的局部禁忌表和全局禁忌表,实现对蚂蚁途经栅格的分类存储,在蚂蚁发生障碍死锁和自死锁时分别采取不同的死锁处理策略,从而降低无效蚂蚁产生的概率,提高解的多样性;引入当前蚂蚁所处栅格与终点栅格之间的欧式距离,设计自适应启发函数,以避免蚂蚁路径搜索的初期盲目性与后期单一性;适时采用历史最优路径替换本轮迭代中的最差路径,保证已搜索到的最优路径不会丢失.在不同规模、不同复杂度地图中的仿真结果表明,所提出改进算法能够大幅度提高搜索过程中有效蚂蚁的数量,其收敛速度与精度两方面性能均优于未改进算法.在规模较大、复杂度较高的地图中,更能体现应用改进算法的优越性.  相似文献   

11.
罗继亮  张奇 《控制与决策》2017,32(9):1628-1634
针对自动导引车系统中的协调控制问题,提出一种基于有向图的控制程序自动化设计方法.首先,根据自动导引车系统的结构建立基于区域控制的有向图模型;其次,在部分可观的条件下,定义扩充危险域的概念,给出一种估计危险域中车辆数目的方法,进而给出导引路径的防碰撞控制规范;最后,讨论系统发生死锁的两个条件,给出相应的死锁控制方法,并通过仿真实验验证了所提方法的有效性.  相似文献   

12.
分布式系统技术为采用低成本购建高性能系统提供了有效的途径,但是由于资源的分配与需求可能产生冲突,造成系统中发生死锁,导致系统运行陷入停滞.在不可靠的分布式系统中,故障会干扰正常的死锁检测,但现有的死锁检测算法不具有容错功能.对失效形式进行了归类,提出一个容错的死锁检测解除算法.算法建立在通用的AND-OR模型基础上,采用扩散计算和集中规约方式,不仅能够检测到死锁,而且能给出死锁环的全部成员.若死锁拓扑处于静态且为环状,算法的消息复杂度的上限为e n-1,时间复杂度为d,其中e为死锁等待图中边的个数,n和d为构成死锁环的节点的个数,分析表明算法性能等于或优于同类算法.  相似文献   

13.
Numerous algorithms on distributed deadlock detection in distributed systems have been proposed for various deadlock models such as the AND model, OR model, and AND/OR model. This paper describes a new distributed algorithm for the AND/OR model by two levels of deadlock detection procedures. In every deadlock model, the existence of a cycle in a wait-for graph is a necessary condition. At the first level of our algorithm, a wait-for cycle is detected with a very simple operation. If no cycle is found, a deadlock does not exist. In this level, deadlocks consisting of AND-requested nodes are detected, and for the cycle of AND- and OR-requested nodes, an initiator is elected and the second-level algorithm is initiated by the initiator. The second-level algorithm uses the deadlock detection method of Herman and Chandy, but the communication cost is reduced even in the worst case because the second-level operation can be initiated by only qualified initiators.  相似文献   

14.
Deadlock handling is an important component of transaction management in a database system. In this paper, we contribute to the development of techniques for transaction management by presenting an algorithm for detecting deadlocks in a distributed database system. The algorithm uses priorities for transactions to minimize the number of messages initiated for detecting deadlocks. It does not construct any wait-for graph but detects cycles by an edge-chasing method. It does not detect any phantom deadlock (in the absence of failures), and for the resolution of deadlocks it does not need any extra computation. The algorithm also incorporates a post-resolution computation that leaves information characterizing dependence relations of remaining transactions of the deadlock cycle in the system, and this will help in detecting and resolving deadlocks which may arise in the future. An interesting aspect of this algorithm is that it is possible to compute the exact number of messages generated for a given deadlock configuration. The complexity is comparable to the best algorithm reported. We first present a basic algorithm and then extend it to take into account shared and exclusive lock modes, simultaneous acquisition of multiple locks, and nested transactions.  相似文献   

15.
This paper descrbes two protocols for the detection of deadlocks in distributed data bases–a hierarchically organized one and a distributed one. A graph model which depicts the state of execution of all transactions in the system is used by both protocols. A cycle in this graph is a necessary and sufficient condition for a deadlock to exist. Nevertheless, neither protocol requires that the global graph be built and maintained in order for deadlocks to be detected. In the case of the hierarchical protocol, the communications cost can be optimized if the topology of the hierarachy is appropriately chosen.  相似文献   

16.
When an application is running on a network-on-chip (NoC)-based multiprocessor system-on-chip (MPSoC), two types of deadlocks may occur: (i) the routing-dependent deadlocks, and (ii) the message-dependent deadlocks. The former type of deadlocks can be avoided by removing any cyclic paths on the application’s channel dependency graph. The message-dependent deadlocks, caused by mutual dependency of different control and/or data messages, on the other hand, are very complicated to deal with. In this paper, we focus our study on the request–request type message-dependent deadlocks which may appear in a peer-to-peer streaming system. This type of deadlocks can have devastating effects on applications using streaming protocols that often demands real-time processing over continuous data streams. We show that request–request type of deadlocks can be avoided by proper inclusion of virtual channels (VCs) for the links along the selected routing path. These VCs are not bounded to a particular communication path. Instead, they can be shared among multiple existing communication flows. In this paper, we have formally proved a sufficient condition that determines the minimum number of VCs actually needed for each link of a communication flow such that, request–request type message-dependent deadlocks can be completely avoided. Following this sufficient condition, we propose a path selection and minimum VC allocation (PSMV) algorithm to help determine the minimum number of non-uniform VCs for each link. The PSMV algorithm consists of two major steps. In the first step, we attempt to minimize the maximum number of VCs among all the links. This problem is NP-complete in nature, and it is solved using the proposed mixed integral linear programming (MILP)-based algorithm. In the second step, based on the solution suggested in the first step, the minimum number of VCs for each link is finally determined. The PSMV algorithm can literally be integrated with any existing application mapping algorithm to provide deadlock-free mapping results. One such deadlock-free mapping algorithm is suggested in this paper. Our experiments also show that, compared to an existing flow control based deadlock avoidance method (CTC) and a deadlock recovery method (DR), increase of buffers size in PSMV is within 5% compared to a baseline network configuration. The message latency of PSMV is the lowest among all three designs.  相似文献   

17.
In distributed databases, deadlocks may occur due to conflicts in data file lockings A system is in a deadlock if and only if there is a directed cycle in its demand graph. However, due to the inherent communication delay in a distributed system, it is not easy to construct a consistent demand graph for a distributed system. In this paper, three deadlock detection protocols are discussed. The first protocol uses two communication phases. The second protocol uses a single communication phase. Based on the second protocol, a one-phase hierarchical deadlock detection protocol is developed.  相似文献   

18.
This paper proposes a distributed algorithm for resolving deadlocks under the OR request model. The algorithm builds a distributed spanning tree by propagating probes. An encoding scheme is devised to deduce the ancestor–descendant relationship between tree nodes, so that the initiator of the algorithm collects only non-tree edge information to detect deadlock, whereas the current algorithms require all the edge information for deadlock detection. The proposed algorithm resolves all deadlocks reachable from the initiator. Its performance in terms of number of messages and execution time is better than or comparable to that of the existing algorithms. We further showed through analytic evaluation that the suggested algorithm substantially shortens deadlock detection time.  相似文献   

19.
On Siphon Computation for Deadlock Control in a Class of Petri Nets   总被引:3,自引:0,他引:3  
As a structural object, siphons are well recognized in the analysis and control of deadlocks in resource allocation systems modeled with Petri nets. Many deadlock prevention policies characterize the deadlock behavior of the systems in terms of siphons and utilize this characterization to avoid deadlocks. This paper develops a novel methodology to find interesting siphons for deadlock control purposes in a class of Petri nets, i.e., a system of simple sequential processes with resources . Resource circuits in an are first detected, from which, in general, a small portion of emptiable minimal siphons can be derived. The remaining emptiable ones can be found by their composition. A polynomial-time algorithm for finding the set of elementary siphons is proposed, which avoids complete siphon enumeration. It is shown that a dependent siphon can always be controlled by properly supervising its elementary siphons. A computationally efficient deadlock control policy is accordingly developed. Experimental study shows the efficiency of the proposed siphon computation approach.  相似文献   

20.
This paper deals with the problem of deadlock detection in asynchronous message passing systems in a system model that covers unspecified receptions and non-FIFO channels. It presents a hierarchy of deadlock models and deadlock detection problems. It abstracts deadlocks by a general deadlock model that has the same modeling power as the OR-AND model; however, it has much concise expressive power. An abstract general definition of deadlocks in distributed systems is presented that defines deadlocks independently of the underlying deadlock model. This formulation can be used to design a single distributed deadlock detection algorithm which uniformly addresses all deadlocks in the context of various request models such as AND, OR, AND-OR, and k-out-of-n requests. A simple generalized deadlock detection algorithm that uses a circulating token is presented to illustrate the concept. The algorithm is formally described and proven correct. Moreover, possible refinements of the basic solution concerning improvements of token routing and parallel implementation are outlined and evaluated. Extensions to individual and global termination issues are also addressed. Since the proposed deadlock detection algorithm is designed around the abstract definition of deadlocks, it has some very favorable features.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号