Authors: Michael Bogner, Johannes Schütz, Franz Wiesinger
The importance of multi-core processors increases every day. So multi-threaded programming also becomes more important. Due to data consistency it is necessary to synchronize specific parts of the code. These synchronizing methods cause an overhead during program execution. This paper analyses this overhead based on time on different operating systems. On the one hand, the paper gives a short introduction to the most important synchronization methods, on the other hand a test application is introduced to determine the delay time of each of these methods. All tests are designed to give real world examples of how much overhead is produced. Following the given data of the test application, the delay times of different operating systems are compared to each other. The paper shows that some methods perform better on one system and others perform better on the other systems.