Implementation of Multiprocessing and Multithreading for End Node Middleware Control on Internet of Things Devices
DOI:
https://doi.org/10.25139/inform.v6i1.3346Keywords:
Raspberry Pi, Internet of Things, Multiprocessing, Multithreading, Middleware, Educational robotAbstract
Previously, an educational robot system was built by incorporating Internet of Things (IoT) elements. Over time, this educational robot has been implanted with a middleware. Middleware has a role in receiving command data from the real-time database, access sensors, actuators, and sending feedback. Middleware contains protocols that translate commands between high-level programming and Raspberry Pi hardware. The focus of this research is to improve the performance of the middleware to pursue processing time efficiency. For this reason, it is necessary to implement multiprocessing and multithreading in handling several tasks. The division of tasks on the CPU has been adjusted automatically to not work on just one core or block of memory. Several program functions can run in parallel and reduce program execution time efficiently. The tasks handled are sensor reading and actuator control in the form of a motor. Testing has been carried out to perform multiprocessing and multithreading tasks to process six sensors and five actuators. Multiprocessing requires an average of 1.00% to 15.00% CPU usage and 2.70% memory usage. Meanwhile, multithreading involves an average of 1.00% to 71.00% CPU usage and 3.30% memory usage.References
[2] J. F. Nusairat, "Raspberry Pi," in Rust for the IoT, Berkeley, CA: Apress, 2020, pp. 391–427.
[3] A. Jalil, “Pemanfaatan Middleware Robot Operating System (ROS) Dalam Menjawab Tantangan Revolusi Industri 4.0,†Ilk. J. Ilm., 2019, doi: 10.33096/ilkom.v11i1.412.45-52.
[4] M. R. Rizqullah, A. R. Anom Besari, I. Kurnianto Wibowo, R. Setiawan, and D. Agata, "Design and Implementation of Middleware System for IoT Devices based on Raspberry Pi," in 2018 International Electronics Symposium on Knowledge Creation and Intelligent Computing (IES-KCIC), Oct. 2018, pp. 229–234, DOI: 10.1109/KCIC.2018.8628528.
[5] A. H. H. Ngu, M. Gutierrez, V. Metsis, S. Nepal, and M. Z. Sheng, "IoT Middleware: A Survey on Issues and Enabling technologies," IEEE Internet Things J., pp. 1–1, 2016, DOI: 10.1109/JIOT.2016.2615180.
[6] Y. Nakamura, H. Suwa, Y. Arakawa, H. Yamaguchi, and K. Yasumoto, "Design and Implementation of Middleware for IoT Devices toward Real-Time Flow Processing," 2016, DOI: 10.1109/ICDCSW.2016.37.
[7] N. S. Arora, R. D. Blumofe, and C. G. Plaxton, "Thread Scheduling for Multi programmed Multiprocessors," Theory Comput. Syst., vol. 34, no. 2, pp. 115–144, Jan. 2001, DOI: 10.1007/s002240011004.
[8] F. Menczer, S. Fortunato, and C. A. Davis, "Python Tutorial," in A First Course in Network Science, Cambridge University Press, 2020, pp. 221–237.
[9] R. Odaira, J. G. Castanos, and H. Tomari, "Eliminating global interpreter locks in ruby through hardware transactional memory," ACM SIGPLAN Not., 2014, DOI: 10.1145/2692916.2555247.
[10] L. Moroney and L. Moroney, "The Firebase Realtime Database," in The Definitive Guide to Firebase, 2017.
[11] W. J. Li, C. Yen, Y. S. Lin, S. C. Tung, and S. M. Huang, "JustIoT Internet of Things based on the Firebase real-time database," 2018, DOI: 10.1109/SMILE.2018.8353979.
[12] J. Devietti, B. Lucia, L. Ceze, and M. Oskin, "DMP: Deterministic Shared-Memory Multiprocessing," IEEE Micro, vol. 30, no. 1, pp. 40–49, Jan. 2010, DOI: 10.1109/MM.2010.14.
Downloads
Additional Files
Published
How to Cite
Issue
Section
License
Authors who publish with Inform: Jurnal Ilmiah Bidang Teknologi Informasi dan Komunikasi agree to the following terms:
-
Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License (CC BY-SA 4.0) that allows others to share the work with an acknowledgment of the work's authorship and initial publication in this journal.
-
Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgment of its initial publication in this journal.
-
Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work.


