Implementation of reader-writer locks based on multimedia DSP

With the structure of Digital Signal Processor (DSP) application program getting more complex, there is a rise in the need for concurrent access to shared resources under a multitasking environment. However, the task scheduling and synchronization provided by most of the DSP operating systems is quite limited, which can barely meet the requirement of the control of concurrent access. At present, reader-writer (RW) locks have been in wide-spread use for many POSIX-compliant real-time operating systems to provide currency control, but they can not be applied to DSP operating systems without any change. In this paper, a locking system is proposed as a realization form of RW locks, which provides control of concurrent access based on the Application Programming Interface (API) in DSP operating systems. Meanwhile, to avoid the occurrence of priority inversion and livelock, an enhanced compatibility matrix working with priority inheritance protocol is introduced in this system. The experimental result shows that the locking system can function properly under a multitasking environment, and its performance is superior to that of the traditional one using strict mutual exclusive (mutex) matrix.

[1]  Giorgio C. Buttazzo,et al.  Schedulability analysis of periodic fixed priority systems , 2004, IEEE Transactions on Computers.

[2]  James H. Anderson,et al.  A Comparison of the M-PCP, D-PCP, and FMLPon LITMUSRT , 2008, OPODIS.

[3]  Hennadiy Leontyev,et al.  LITMUS^RT : A Testbed for Empirically Comparing Real-Time Multiprocessor Schedulers , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[4]  Mark J. Clement,et al.  Livelock avoidance for Meta-schedulers , 2001, Proceedings 10th IEEE International Symposium on High Performance Distributed Computing.

[5]  Ivica Crnkovic Component-based software engineering for embedded systems , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[6]  James H. Anderson,et al.  On the Scalability of Real-Time Scheduling Algorithms on Multicore Platforms: A Case Study , 2008, 2008 Real-Time Systems Symposium.

[7]  W. Doyle,et al.  Magnetization reversal in films with biaxial anisotropy , 1966 .

[8]  James H. Anderson,et al.  Efficient pure-buffer algorithms for real-time systems , 2000, Proceedings Seventh International Conference on Real-Time Computing Systems and Applications.

[9]  Lui Sha,et al.  Priority Inheritance Protocols: An Approach to Real-Time Synchronization , 1990, IEEE Trans. Computers.

[10]  I. Cmkovic Component-based software engineering for embedded systems , 2005, ICSE 2005.

[11]  Won-jong Kim,et al.  Real-time operating environment for networked control systems , 2005, Proceedings of the 2005, American Control Conference, 2005..

[12]  Victor Yodaiken,et al.  A Real-Time Linux , 2000 .

[13]  Jonghun Park A deadlock and livelock free protocol for decentralized Internet resource coallocation , 2004, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[14]  Mihai V. Micea,et al.  Inter-task communication and synchronization in the hard real-time compact kernel HARETICK , 2008, 2008 International Workshop on Robotic and Sensors Environments.

[15]  Zhen Wang,et al.  A new DSP real-time operating system , 2010, The 2nd International Conference on Information Science and Engineering.