GRAPHICAL REPRESENTATIONS OF MULTITHREADED APPLICATIONS
Damian GIEBAS
damian.giebas@gmail.comFaculty of Electronics and Computer Science, Koszalin University of Technology, 75-453 Koszalin, Śniadeckich 2 (Poland)
Rafał WOJSZCZYK
Faculty of Electronics and Computer Science, Koszalin University of Technology, 75-453 Koszalin, Śniadeckich 2 (Poland)
Abstract
This article contains a brief description of existing graphical methods for presenting multithreaded applications, i.e. Control Flow Graph and Petri nets. These methods will be discussed, and then a way to represent multithreaded applications using the concurrent process system model will be presented. All these methods will be used to present the idea of a multithreaded application that includes the race condition phenomenon. In the summary, all three methods will be compared and subjected to the evaluation, which will depend on whether the given representation will allow to find the mentioned phenomenon.
Keywords:
graphical representations, Petri nets, Control Flow Graph, Concurrent Process Systems, multithreaded applicationsReferences
A Brief History of Cilk. (n.d.). Retrieved September 16, 2017, from https://www.cilkplus.org/cilkhistory
Google Scholar
Aiken, A. (October 28, 2017). Charm++. Retrieved from https://web.stanford.edu/class/cs315b/lectures/lecture11.pdf
Google Scholar
Allen, F. E. (1970). Control Flow Analisys. Retrieved July 5, 2017, from http://sumanj.info/secure_sw_devel/p1-allen.pdf
DOI: https://doi.org/10.1145/800028.808479
Google Scholar
Banaszak, Z., Majdzik, P., & Wójcik, R. (2008). Procesy współbieżne. Modele efektywności funkcjonowania. Koszalin: Wydawnictwo Uczelniane Politechniki Koszalińskiej.
Google Scholar
Bocewicz, G. (2013). Modele multimodalnych procesów cyklicznych. Koszalin: Wydawnictwo Uczelniane Politechniki Koszalińskiej.
Google Scholar
Bocewicz, G., Wójcik, R., & Banaszak, Z. (2006). Harmonogramowane pracy wózków samojezdnych w warunkach ograniczonego dostępu do współdzielonych zasobów ESW (Model logicznoalgebraiczny). In Postępy robotyki: Systemy i współdziałanie robotów. Warszawa: WKiŁ.
Google Scholar
Bull, J. M., Reid, F., & McDonnell, N. (2012). A Microbenchmark Suite for OpenMP Tasks. In: B. M. Chapman, F. Massaioli, M.S. Müller, M. Rorro (Eds), OpenMP in a Heterogeneous World. IWOMP 2012. Lecture Notes in Computer Science (271–274). Berlin, Heidelberg: Springer.
DOI: https://doi.org/10.1007/978-3-642-30961-8_24
Google Scholar
Engler, D., & Ashcraft, K. (2003). RacerX: effective, static detection of race conditions and deadlocks. ACM SIGOPS Operating Systems Review, 37(5), 237–252. doi:10.1145/1165389.945468
DOI: https://doi.org/10.1145/1165389.945468
Google Scholar
Hinnant, H. E., Dawes, B., Crowl, L., Garland, J., & Williams, A. (June 24, 2007). Multi-threading Library for Standard C++. Retrieved from http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2320.html
Google Scholar
Intel Threading Building Blocks Documentation. (n.d.). Retrieved September 16, 2017, from https://software.intel.com/en-us/tbb-documentation
Google Scholar
Introduction to Charm++ Concepts (n.d.). Retrieved September 16, 2017, from http://charmplusplus.org/tutorial/CharmConcepts.html ISO/IEC. (2003). Information technology - Portable Operating System Interface (POSIX) – Part 1: Base Definitions (9945-1:2003).
Google Scholar
Lu, S., Park, S., Seo, E., & Zhou, Y. (2008). Learning from mistakes: a comprehensive study on real world concurrency bug characteristics. In Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-XIII) (pp. 329–339). New York: ACM.
DOI: https://doi.org/10.1145/1346281.1346323
Google Scholar
Peterson, J. L. (1977). Petrie Nets. ACM Computing Surveys (CSUR), 9(3), 223-252.
DOI: https://doi.org/10.1145/356698.356702
Google Scholar
Silberschatz, A., Galvin, P. B., & Gagne, G. (2005). Operating System Concepts. USA: John Wiley & Sons
Google Scholar
Torp, K. (November 19, 2001). Multithreading. Retrieved from http://people.cs.aau.dk/~torp/
Google Scholar
Teaching/E02/OOP/handouts/multithreading.pdf
Google Scholar
Voung, J. W., Jhala, R., & Lerner, S. (2007). RELAY: static race detection on millions of lines of code. In Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering (pp. 205–214). New York: ACM.
DOI: https://doi.org/10.1145/1287624.1287654
Google Scholar
Authors
Damian GIEBASdamian.giebas@gmail.com
Faculty of Electronics and Computer Science, Koszalin University of Technology, 75-453 Koszalin, Śniadeckich 2 Poland
Authors
Rafał WOJSZCZYKFaculty of Electronics and Computer Science, Koszalin University of Technology, 75-453 Koszalin, Śniadeckich 2 Poland
Statistics
Abstract views: 98PDF downloads: 51
License
This work is licensed under a Creative Commons Attribution 4.0 International License.
All articles published in Applied Computer Science are open-access and distributed under the terms of the Creative Commons Attribution 4.0 International License.
Most read articles by the same author(s)
- Rafał WOJSZCZYK, VERIFICATION OF ACCURACY AND COST OF USE METHODS OF QUALITY ASSESSMENT OF IMPLEMENTATION OF DESIGN PATTERNS , Applied Computer Science: Vol. 15 No. 1 (2019)
- Damian GIEBAS, Rafał WOJSZCZYK, ORDER VIOLATION IN MULTITHREADED APPLICATIONS AND ITS DETECTION IN STATIC CODE ANALYSIS PROCESS , Applied Computer Science: Vol. 16 No. 4 (2020)
Similar Articles
- Bartosz CIEŚLA, Grzegorz GUNIA, DEVELOPMENT OF INTEGRATED MANAGEMENT INFORMATION SYSTEMS IN THE CONTEXT OF INDUSTRY 4.0 , Applied Computer Science: Vol. 15 No. 4 (2019)
- Marcin Topczak, Małgorzata Śliwa, ASSESSMENT OF THE POSSIBILITY OF USING BAYESIAN NETS AND PETRI NETS IN THE PROCESS OF SELECTING ADDITIVE MANUFACTURING TECHNOLOGY IN A MANUFACTURING COMPANY , Applied Computer Science: Vol. 17 No. 1 (2021)
- Jarosław ZUBRZYCKI, Antoni ŚWIĆ, Łukasz SOBASZEK, Juraj KOVAC, Ruzena KRALIKOVA, Robert JENCIK, Natalia SMIDOVA, Polyxeni ARAPI, Peter DULENCIN, Jozef HOMZA, CYBER-PHYSICAL SYSTEMS TECHNOLOGIES AS A KEY FACTOR IN THE PROCESS OF INDUSTRY 4.0 AND SMART MANUFACTURING DEVELOPMENT , Applied Computer Science: Vol. 17 No. 4 (2021)
- Grzegorz SUCHANEK, Roman FILIPEK, COMPUTATIONAL FLUID DYNAMICS (CFD) AIDED DESIGN OF A MULTI-ROTOR FLYING ROBOT FOR LOCATING SOURCES OF PARTICULATE MATTER POLLUTION , Applied Computer Science: Vol. 18 No. 3 (2022)
- Nataliya SHABLIY, Serhii LUPENKO, Nadiia LUTSYK, Oleh YASNIY, Olha MALYSHEVSKA, KEYSTROKE DYNAMICS ANALYSIS USING MACHINE LEARNING METHODS , Applied Computer Science: Vol. 17 No. 4 (2021)
- Arkadiusz GOLA, Łukasz WIECHETEK, MODELLING AND SIMULATION OF PRODUCTION FLOW IN JOB-SHOP PRODUCTION SYSTEM WITH ENTERPRISE DYNAMICS SOFTWARE , Applied Computer Science: Vol. 13 No. 4 (2017)
- Damian GIEBAS, Rafał WOJSZCZYK, ORDER VIOLATION IN MULTITHREADED APPLICATIONS AND ITS DETECTION IN STATIC CODE ANALYSIS PROCESS , Applied Computer Science: Vol. 16 No. 4 (2020)
- Ziadeddine MAKHLOUF, Abdallah MERAOUMIA , Laimeche LAKHDAR, Mohamed Yassine HAOUAM , ENHANCING MEDICAL DATA SECURITY IN E-HEALTH SYSTEMS USING BIOMETRIC-BASED WATERMARKING , Applied Computer Science: Vol. 20 No. 1 (2024)
- Konrad PIETRYKOWSKI, Paweł KARPIŃSKI, SIMULATION STUDY OF HYDRODYNAMIC CAVITATION IN THE ORIFICE FLOW , Applied Computer Science: Vol. 18 No. 3 (2022)
- Elizabeth Perez, Juan A. Araiza, Dreysy Pozos, Edmundo Bonilla, Jose C. Hernandez, Jesus A. Cortes, APPLICATION FOR FUNCTIONALITY AND REGISTRATION IN THE CLOUD OF A MICROCONTROLLER DEVELOPMENT BOARD FOR IOT IN AWS , Applied Computer Science: Vol. 17 No. 2 (2021)
You may also start an advanced similarity search for this article.