| J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 92--105, 1996. |
....latter inherently does not because correct synchronisation is a key part of the functionality. The design of concurrent data structures is a topic, and an art, unto itself. The interested reader is referred to articles on wait free and lock free synchronisation by Herlihy [Her91] and others [And95, And96, Mic96, Sim97a, Sim97b]. 3.2.6 Exclusion Goals for a Concurrent Object System Based on this discussion we identify the following high level exclusion goals for a concurrent object system: the system should support enforcement of the natural exclusion matrix of an object . the system should allow instances of such ....
Anderson J. H. and Ramamurthy S., "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems", Proceedings of the 17 th IEEE Real-Time Systems Symposium, IEEE Computer Society Press, pp94-105, December 1996
....being used in the real time research area because of its strong theoretical ground. For example, it is used to bound the worst case execution time of a task [20] to bound the interference of program execution by DMA operation [21] and to bound the number of retries in lock free real time systems [22]. III. Overall Approach One problem with Lee et al. s technique is that the preemption cost of a task is fixed regardless of which tasks execute during the task s preemption. This may result in severe overestimation of cache related preemption delay when only a few cache blocks are shared among ....
J. H. Anderson and S. Ramamurthy, "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems," in Proceedings of the Seventeenth Real-Time Systems Symposium, pp. 94--105, Dec. 1996.
....available in many modern microprocessors. For those systems in which hardware support of the required operation is not available, the operation may be synthesized by using other primitives or system support. Recently, there have been a number of solutions to this issue, for examples see [7] [4], and [28] Since the mechanism imposes no effect upon timing behaviours as well as schedulability of tasks, it helps real time applications in reducing the priority inversion and blocking problems incurred by the commonly used lock based synchronization . Reader . n 1) Reader Writer 1 . ....
Anderson, J., and Ramamurthy, S. A Framework for Implementing Objects and Scheduling Tasks Lock-Free Real-Time Systems. In Proc. of the 17th IEEE Real-Time Systems Symposium (1996), pp. 94--105.
....2: Summary of our results. P denotes the number of processors in a system. W denotes the number of words accessed by a MWCAS operation. T is the worst case time for a list operation. The constant 2 is used in the Q notation to more accurately reflect the cost of helping. Anderson and Ramamurthy [3]. Anderson and Ramamurthy s implementation is not strictly faithful to the semantics of MWCAS. In particular, it allows a MWCAS operation to fail if it is overlapped by another MWCAS operation that accesses a common word. For the case in which the overlapping operation itself fails, it may be ....
....In particular, it allows a MWCAS operation to fail if it is overlapped by another MWCAS operation that accesses a common word. For the case in which the overlapping operation itself fails, it may be impossible to correctly linearize the operations in accordance with the semantics of MWCAS (see [3] for details) 2 In the implementation presented here, this problem is corrected. After considering MWCAS, we present an implementation of linked lists for priority based uniprocessor systems. Our list implementation is based on a novel technique, which we call incremental helping. This ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy, "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems", Proc. of the 17th IEEE Real-Time Systems Symposium, 1996, pp. 94-105.
....being used in the real time research area because of its strong theoretical ground. For example, it is used to bound the worst case execution time of a task [19] to bound the interference of program execution by DMA operation [9] and to bound the number of retries in lock free real time systems [2]. 3. Overall Approach One problem with Lee et al. s technique is that the preemption cost of a task is fixed regardless of which tasks execute during the task s preemption. This may result in severe overestimation of cache related preemption delay when only a few cache blocks are shared among ....
J. H. Anderson and S. Ramamurthy. A Framework for Implementing Objects and Scheduling Tasks in Lock-Free RealTime Systems. In Proceedings of the Seventeenth Real-Time Systems Symposium, pages 94--105, Dec. 1996.
....of the largest such loop, which is reasonable if retry loop costs are fairly uniform. For cases in which large variations in loop costs exist, Anderson and Ramamurthy have shown that linear programming can be applied to obtain a much better estimate of the cost associated with failed loop tries [3]. In this approach, the total cost of failed loop tries in i and higher priority tasks over an interval I is first expressed as a linear expression involving a set of variables. Each variable in the expression represents the number of interferences in each lock free operation due to ....
.... is based on universal lock free constructions by Anderson and Moir for implementing large objects and for implementing multi object operations [1, 2] The implementation is based on a multi word compare and swap (MWCAS) primitive for real time systems proposed by Anderson and Ramamurthy [3]. 3.1 Transaction Routines Our transaction implementation consists of three procedures, Read , Write, and Trans, which are depicted in Figure 5. These procedures support the illusion of a contiguous shared array MEM of memory words. In reality, data is not stored in this fashion, but to the ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy, "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems", to be presented at the 17th IEEE Real-Time Systems Symposium, December 1996. Available at the URL "http://www.cs.unc.edu/¸anderson/papers.html".
....being used in the real time research area because of its strong theoretical ground. For example, it is used to bound the worst case execution time of a task [21] to bound the interference of program execution by DMA operation [12] and to bound the number of retries in lock free real time systems [2]. 3 Overall Approach One problem with Lee et al. s technique is that the preemption cost of a task is fixed regardless of which tasks execute during the task s preemption. This may result in severe overestimation of cache related preemption delay when only a few cache blocks are shared among ....
J. H. Anderson and S. Ramamurthy. A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems. In Proceedings of the Seventeenth Real-Time Systems Symposium, pages 94--105, Dec. 1996.
No context found.
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 92--105, 1996.
....that access an object are contained in the same supertask. Uniprocessor implementations tend to be structurally simpler than their multiprocessor counterparts and hence more e#cient. In addition, strong synchronization primitives can often be e#ciently implemented in software on a uniprocessor [1], which avoids the need for hardware support. Evaluating the supertasking trade o#. Unfortunately, supertasking s benefits may be counterbalanced by the schedulability loss due to reweighting. To determine whether supertasking is a viable tool for reducing lock free overhead, Holman and Anderson ....
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pp. 92--105, December 1996.
No context found.
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 92--105. December 1996.
....Experimental results that compare and contrast the behavior of lock free and lock based schemes are presented in Chapter 6. Finally, conclusions and a discussion of future directions for this research appear in Chapter 7. This dissertation includes work that is based on previously published work [9, 11, 12, 13, 14, 70]. Background and Related Work In this chapter, weprovide background material on real time systems and lock free objects. First, we present scheduling conditions for various real time scheduling schemes. Then, wedescribevarious lock based object sharing schemes used in conventional real time ....
J. H. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE RealTime Systems Symposium, pages 92--105. IEEE, December 1996.
....(#) respectively, Q T (#) times within a single job (quantum) of task T . Further, assume that each access to # has a base cost of b(#) and a retry cost of r(#) Let B [M ] #) and R [M ] #) denote the the base and retry costs, respectively, for an M processor implementation of #. Then, B [1] (#) and R [1] #) denote the costs associated with a uniprocessor implementation. As we shall see, b(#) will be defined to be either B [M ] #) or B [1] #) depending on how tasks are assigned to supertasks (and similarly for r(#) Note that we are assuming that the costs of all ....
....Q T (#) times within a single job (quantum) of task T . Further, assume that each access to # has a base cost of b(#) and a retry cost of r(#) Let B [M ] #) and R [M ] #) denote the the base and retry costs, respectively, for an M processor implementation of #. Then, B [1] #) and R [1] (#) denote the costs associated with a uniprocessor implementation. As we shall see, b(#) will be defined to be either B [M ] #) or B [1] #) depending on how tasks are assigned to supertasks (and similarly for r(#) Note that we are assuming that the costs of all operations of # are the ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 92--105. December 1996.
....can be prohibitively large. In recent years, several researchers have investigated the use of wait free shared object algorithms as an alternative to lock based mechanisms in object 1 Work supported by NSF grants CCR 9732916, CCR 9972211, CCR 9988327, and ITR 0082866. based real time systems [3, 4, 5, 6, 9, 10, 15]. In a waitfree object implementation, operations must be implemented using bounded, sequential code fragments, with no blocking synchronization constructs. Thus, a process never blocks while accessing a wait free object, and hence priority inversions cannot arise due to object accesses. In this ....
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. Proceedings of the 17th IEEE RealTime Systems Symposium, pp. 92-105. Dec. 1996.
No context found.
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 92-105. December 1996.
....under EDF#DDM scheduling. Even without kernel support for disabling preemptions, it is possible to e#ciently simulate synchronization primitives like CAS and CAS2. This follows from recentwork on wait free implementations for priority based real time uniprocessor systems #Ramamurthy et al. 1996; Anderson and Ramamurthy 1996; Anderson et al. 1997#. This work shows that in such systems needed primitives can be simulated in a wait free manner from other instructions #even reads and writes# entirely at the user level. One advantage of lock based schemes is that they allow critical sections to be arbitrarily nested. It ....
....This is reasonable if all access times are comparable. Recentwork by the #rst two authors has shown that when large variations in retry loop costs exist, tighter scheduling conditions can be obtained by using linear programming to obtain a better estimate of the cost associated with interferences #Anderson and Ramamurthy 1996#. In this approach, the total cost of interferences in T i and higher priority tasks over an interval I is #rst expressed as a linear expression E involving a set of variables. Eachvariable represents the numberofinterferences of a particular lock free loop in I. The variables are constrained by ....
[Article contains additional citation context not shown here]
Anderson, J. H. and Ramamurthy, S. 1996. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium #December 1996#, pp. 92#105. IEEE.
....variable to implement an object. In contrast, helping schemes for asynchronous systems typically require one announce variable per task [1, 2, 8] In addition, 1 The first and third author and colleagues have done much recent work on the use of lock free shared objects in real time systems [3, 4, 6]. Lockfree and wait free objects are related, but different, notions. As explainedin [3, 4, 6] lock free algorithms constitute an optimistic notion of nonblocking user level synchronization. Uniprocessor Schemes Multiprocessor Schemes IHI: Incremental helping with inheritance. IHC: ....
....typically require one announce variable per task [1, 2, 8] In addition, 1 The first and third author and colleagues have done much recent work on the use of lock free shared objects in real time systems [3, 4, 6] Lockfree and wait free objects are related, but different, notions. As explainedin [3, 4, 6], lock free algorithms constitute an optimistic notion of nonblocking user level synchronization. Uniprocessor Schemes Multiprocessor Schemes IHI: Incremental helping with inheritance. IHC: Incremental helping with ceilings. CH1: Cyclic helping with one helping ring. CHN: Cyclic helping with ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy, "A Framework for Implementing Objects and Scheduling Tasks in LockFree Real-Time Systems", Proc. of the 17th IEEE RealTime Systems Symp., 1996, pp. 94-105.
....of short to medium duration allowed (the case we most expect and optimize for) but also calls that are quite long, approaching the length of an entire quantum. Our work builds upon recent research by us and others on using lock free and wait free shared object algorithms in real time systems [3, 4, 5, 6, 15, 19]. Operations on lockfree objects are optimistically performed using a user level retry loop. Such an operation is atomically validated and committed by invoking a synchronization primitive such as compare and swap (CAS) The retry loop is executed repeatedly until this validation step succeeds. ....
....for preemptive EDF scheduling [16] when Q = 0. Bounding interference costs using linear programming. Anderson and Ramamurthy showed that when lock free objects are used in a uniprocessor system, object interference costs due to preemptions can be more accurately bounded using linear programming [4]. Given the Preemption Axiom, we show that it is possible to obtain bounds that are tighter than those of Anderson and Ramamurthy. Our linear programming conditions make use of a bit of additional notation. If a job of T j interferes with the v th 4 In [14] it is assumed that timer interrupts ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lockfree real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symp., pp. 92--105. 1996.
....duration allowed (the case we most expect and optimize for) but also calls that are quite long, approaching the length of an entire quantum. Our work has been heavily influenced by recent research by us and others on using lock free and wait free shared object algorithms in real time systems [2, 3, 4, 5, 6, 15, 17, 22]. Operations on lock free objects are optimistically performed using a user level retry loop. Such an operation is atomically validated and committed by invoking a synchronization primitive such as compare and swap (CAS) Figure 1 depicts a lock free enqueue operation that is implemented in this ....
....techniques for implementing objects, we also show how to account for object sharing costs in scheduling analysis. In previous work, Anderson and Ramamurthy showed that when using lock free shared objects under RM or EDF scheduling, retry costs can be bounded by solving a linear programming problem [3]. We show that a slightly different linear programming must be solved to bound retries when the proposed object implementations are used in a quantum based uniprocessor system. We also show that, when analyzing such a system, the techniques we present result in better retry cost estimates and a ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 92--105. IEEE, December 1996.
....systems. We begin by presenting a wait free implementation of MWCAS. In this implementation, a W word MWCAS operation is executed in Theta(W ) time, which is asymptotically optimal. The MWCAS implementation presented here is based on one presented previously by Anderson and Ramamurthy [4]. Anderson and Ramamurthy s implementation is not strictly faithful to the semantics of MWCAS. In particular, it allows a MWCAS operation to fail if it is overlapped by another MWCAS operation that accesses a common word. For the case in which the overlapping operation itself fails, it may be ....
....In particular, it allows a MWCAS operation to fail if it is overlapped by another MWCAS operation that accesses a common word. For the case in which the overlapping operation itself fails, it may be impossible to correctly linearize the operations in accordance with the semantics of MWCAS (see [4] for details) 1 In the implementation presented here, this problem is corrected. After considering MWCAS, we present an implementation of linked lists for priority based uniprocessor systems. Our list implementation is based on a novel technique, which we call incremental helping. This ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy, "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems", Proc. of the 17th IEEE Real-Time Systems Symposium, 1996, pp. 94-105.
....sections, because if a task stops taking steps while within a critical section, then other tasks are prevented from accessing that critical section. In several related papers, we have presented general techniques that can be used to implement lock free objects in real time uniprocessor systems [3, 18] and to schedule tasks that share such objects [3, 4] Related research includes work on techniques for implementing specific lock free objects (such as read write buffers) 13, 19, 20] and work on synchronization mechanisms that are similar to lock free objects but are implemented using kernel ....
....within a critical section, then other tasks are prevented from accessing that critical section. In several related papers, we have presented general techniques that can be used to implement lock free objects in real time uniprocessor systems [3, 18] and to schedule tasks that share such objects [3, 4]. Related research includes work on techniques for implementing specific lock free objects (such as read write buffers) 13, 19, 20] and work on synchronization mechanisms that are similar to lock free objects but are implemented using kernel support [12, 19, 20] Operations on lock free objects ....
[Article contains additional citation context not shown here]
J. Anderson and S. Ramamurthy, "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems", to be presented at the 17th IEEE Real-Time Systems Symposium, December 1996. Available at the URL "http://www.cs.unc.edu/¸anderson/papers.html".
....EDF DDM scheduling. Even without kernel support for disabling preemptions, it is possible to efficiently simulate synchronization primitives like CAS and CAS2. This follows from recent work on wait free implementations for priority based real time uniprocessor systems [Ramamurthy et al. 1996; Anderson and Ramamurthy 1996; Anderson et al. 1997] This work shows that in such systems needed primitives can be simulated in a wait free manner from other instructions (even reads and writes) entirely at the user level. One advantage of lock based schemes is that they allow critical sections to be arbitrarily nested. It ....
....is reasonable if all access times are comparable. Recent work by the first two authors has shown that when large variations in retry loop costs exist, tighter scheduling conditions can be obtained by using linear programming to obtain a better estimate of the cost associated with interferences [Anderson and Ramamurthy 1996]. In this approach, the total cost of interferences in T i and higher priority tasks over an interval I is first expressed as a linear expression E involving a set of variables. Each variable represents the number of interferences of a particular lock free loop in I. The variables are constrained ....
[Article contains additional citation context not shown here]
Anderson, J. H. and Ramamurthy, S. 1996. A framework for implementing objects and scheduling tasks in lock-free real-time systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium (December 1996), pp. 92--105. IEEE.
No context found.
Anderson J. H. and Ramamurthy S., "A Framework for Implementing Objects and Scheduling Tasks in Lock-Free Real-Time Systems", Proceedings of the 17 th IEEE Real-Time Systems Symposium, IEEE Computer Society Press, pp94-105, December 1996
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC