Identyfikatory
Warianty tytułu
Języki publikacji
Abstrakty
Artykuł zawiera zestawienie reprezentacji graficznych, do których możliwa jest transformacja kodu źródłowego aplikacji wielowątkowych. Zestawienie powszechnie wykorzystywanych reprezentacji, jakimi są Control Flow Graph i Sieci Petriego, pozwoliło na analizę tych reprezentacji, pod kątem przydatności do znajdywania popularnych i niepożądanych zjawisk w aplikacjach wielowątkowych. Jako alternatywa dla Control Flow Graph i Sieci Petriego przedstawiono reprezentację Systemów Współbieżnych Procesów. Wszystkie trzy reprezentacje zostały wykorzystane do reprezentacji przykładowej aplikacji napisanej w języku C, zawierającej zjawisko race condition. W podsumowaniu dokonana została ocena, która zależała od tego czy dana reprezentacja pozwoli odnaleźć wspomniane zjawisko.
The article contains a list of graphical representations to which it is possible to transform the source code of multithreaded applications. Comparison of commonly used representations, such as Control Flow Graph and Petri Network, allowed to analyze these representations in terms of their usefulness in finding popular and undesirable phenomena in multithreaded applications. As an alternative to Control Flow Graph and Petri Network, the representation of Concurrent Processing Systems is presented. All three representations were used to represent a sample Clanguage application containing race condition. In conclusion, an assessment was made, which depended on whether the representation would allow to find the phenomenon.
Rocznik
Tom
Strony
5--25
Opis fizyczny
Bibliogr. 17 poz., rys.
Twórcy
autor
- Wydział Elektroniki i Informatyki, Politechnika Koszalińska, ul. J. J. Śniadeckich 2, 75-453 Koszalin
autor
- Wydział Elektroniki i Informatyki, Politechnika Koszalińska, ul. J. J. Śniadeckich 2, 75-453 Koszalin
Bibliografia
- 1. „A Brief History of Cilk”. b.d. https://www.cilkplus.org/cilk-history.
- 2. Aiken, Alex. b.d. „Charm++”. Udostępniono 28 październik 2017. https://web.stanford.edu/class/cs315b/lectures/lecture11.pdf.
- 3. Allen, Frances E. 1970. „Control Flow Analisys”. http://sumanj.info/secure_sw_devel/p1-allen.pdf.
- 4. Banaszak, Zbigniew, Paweł Majdzik, i Robert Wójcik. 2008. Procesy współbieżne. Modele efektywności funkcjonowania.
- 5. Bocewicz, Grzegorz. 2013. Modele multimodalnych procesów cyklicznych.
- 6. Bocewicz, Grzegorz, Zbigniew Banaszak, i Robert Wójcik. b.d. „Harmonogramowanie pracy wózków samojezdnych w warunkach ograniczonego dostępu do współdzielonych zasobów ESW”. Udostępniono 28 październik 2017.https://s3.amazonaws.com/academia.edu.documents/40428772/Harmonogramowane_pracy_wzkw_samojezdnych20151127-13023-1hjyvu1.pdf?AWSAccessKeyId=AKIAIWOWYYGZ2Y53UL3A&Expires=1509226185&Signature=dw0FK%2FEGMwDVjXYuoovI%2FpsG%2F9Q%3D&response-contentdisposition=inline%3B%20filename%3DHarmonogramowane_pracy_wozkow_samojezdny.pdf.
- 7. Bull, J. Mark, Fiona Reid, i Nicola McDonnell. 2012. „OpenMP Application Programming Interface Examples”. W International Workshop on OpenMP, 271–274. Springer. https://link.springer.com/chapter/10.1007/978-3-642-30961-8_24.
- 8. Engler, Dawson, i Ken Ashcraft. 2003. „RacerX: effective, static detection of race conditions and deadlocks”. W ACM SIGOPS Operating Systems Review, 37:237–252. ACM. http://dl.acm.org/citation.cfm?id=945468.
- 9. Hinnant, Howard E., Beman Dawes, Lawrence Crowl, Jeff Garland, i Anthony Williams. 2007. „Multi-threading Library for Standard C++”. 24 czerwiec 2007. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2320.html.
- 10. „Intel Threading Building Blocks Documentation”. b.d. https://software.intel.com/en-us/tbb-documentation.
- 11. „Introduction to Charm++ Concepts”. b.d. http://charmplusplus.org/tutorial/CharmConcepts.html.
- 12. „ISO/IEC 9945-1:2003 - Information technology -- Portable Operating System Interface (POSIX) -- Part 1: Base Definitions”. b.d. Udostępniono 10 wrzesień 2017. https://www.iso.org/standard/38789.html.
- 13. Lu, Shan, Soyeon Park, Eunsoo Seo, i Yuanyuan Zhou. 2016. „Concurrency Testing Topics”. kwiecień 6. http://www.it.uu.se/edu/course/homepage/conctest/vt16/testing-module1-lecture3.pdf.
- 14. Peterson, James L. 1977. „Petrie Nets”. http://cs.rpi.edu/academics/courses/spring04/dci/peterson.pdf.
- 15. Silberschatz, Abraham, Piter B. Galvin, i Greg Gagne. 2005. Postawy systemów operacyjnych.
- 16. Torp, Kristian. 2002. „Multithreading in Java”. listopad 19. http://people.cs.aau.dk/~torp/Teaching/E02/OOP/handouts/multithreading.pdf.
- 17. Voung, Jan Wen, Ranjit Jhala, i Sorin Lerner. 2007. „RELAY: static race detection on millions of lines of code”. W Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, 205–214. ACM. http://dl.acm.org/citation.cfm?id=1287654.
Uwagi
PL
Opracowanie rekordu w ramach umowy 509/P-DUN/2018 ze środków MNiSW przeznaczonych na działalność upowszechniającą naukę (2019).
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-942268db-348e-4c92-915d-512fa354edce