Konferans Bildirisi
BibTex RIS Kaynak Göster

Açık Kaynak Kodlu Gerçek Zamanlı İşletim Sistemlerinin İncelenmesi

Yıl 2021, Cilt: 3 Sayı: 1, 30 - 37, 30.04.2021
https://doi.org/10.47769/izufbed.877030

Öz

Yazılım geliştirme süreçleri için zaman, bir yazılım tasarlanırken, birden fazla değişkene bağlı olduğunda hesaplanması zor olan, süreçten sürece değişen ve durdurulamaz bir kavramdır. Özellikle çok hızlı veri toplanması ve buna bağlı olarak hesap yapılması gereken yazılım mimarilerinde zaman kavramı mimari için belirleyici bir parametre olarak ön plana çıkmaktadır. Hayati önem taşıyan birçok yazılım tasarımında, örneğin trafik kazalarında hava yastığının açılmasını sağlayan sistemlerin tasarımında, 100 milisaniyelik bir zamanlama hatası, çok ciddi sonuçlar doğurabilir. Günlük hayatta kullandığımız bilgisayarlarda genel amaçlı işletim sistemi (GPOS) adını verdiğimiz işletim sistemleri bulunur. Bu tip işletim sistemlerinin kendisinde ya da üzerinde çalışan uygulamalarda oluşan hatalar, bir sonraki görevin gerçekleşmesi konusunda aksaklık meydana getirebilirler. Yukarıda verdiğimiz örnekte ise bu tip bir sorun kesinlikle kabul edilebilir değildir. Bu gibi sorunların önüne geçmek için uygulama tasarlanırken, gerçek zamanlı olmasını isteriz. Gerçek zamanlı uygulamalarda, uygulama üzerindeki her bir sürecin başlama ve bitiş anları kesin olarak tanımlanır. Hata veren bir süreç sistem kaynaklarını erişilmez kılamaz ve görev süresi bittiğinde kesinlikle sonlandırılır. Bu sayede hata verse dahi kendisinden sonra gelecek bir görev işleme alınır ve sistem her zaman ayakta kalır. Bu şekilde bir uygulama tasarlayabilmek ve çalıştırabilmek için kaynak kodunu istediğimiz şekilde düzenleyebildiğimiz işletim sistemlerine ihtiyaç duyarız. Bunlar genellikle açık kaynak kodlu işletim sistemleridir ve yukarıda bahsedilen şekilde gerçek zamanlı çalışan tiplerine gerçek zamanlı işletim sistemi (RTOS) adı verilir. Bu çalışmada, Linux'un farklı dağıtımlarının gerçek zamanlı mimari alt yapıları incelenmiştir ve performansları karşılaştırılmıştır.

Teşekkür

Çalışmam sırasında desteklerini esirgemeyen Sayın Doç. Dr. Gökhan ERDEMİR hocama, Eşim Meltem CANBAZ'a ve aileme çok teşekkür ederim.

Kaynakça

  • Spinellis, D. (2017). A repository of Unix history and evolution. Empirical Software Engineering, 22(3), 1372-1404.
  • Stallman, R. (1985). The GNU manifesto. https://www.gnu.org/gnu/manifesto.html adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • Engelfriet, A. (2009). Choosing an open source license. IEEE software, 27(1), 48-49.
  • Hasan, R. (2002). History of linux. https://bazaarmodel.net/ftp/Project-C/Bazaarmodel/Materiaal/Rechten-Law/History%20of%20Linux.doc adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • Tabassum, M., & Mathew, K. (2014, August). Software evolution analysis of linux (Ubuntu) OS. In 2014 International Conference on Computational Science and Technology (ICCST) (pp. 1-7). IEEE.
  • Claes, M., Mens, T., Di Cosmo, R., & Vouillon, J. (2015, May). A historical analysis of debian package incompatibilities. In 2015 IEEE/ACM 12th Working Conference on Mining Software Repositories (pp. 212-223). IEEE.
  • Ovadia, S. (2013). Linux for Academics, Part I. Behavioral & Social Sciences Librarian, 32(4), 252-256.
  • Tyler, C. (2006). Fedora Linux: A Complete Guide to Red Hat's Community Distribution. " O'Reilly Media, Inc.".
  • Karakoç, M. M., & Varol, A. (2016). National Distribution Project and Pardus Operating System. Turkish Journal of Science and Technology, 11(2), 25-34.
  • Cosmos Web Sitesi. (2021). https://www.gocosmos.org web sitesinden 10 Ocak 2021 tarihinde alıntılandı.
  • Villani, P. (1996). FreeDOS Kernel: An MS-DOS Emulator for Platform Independence & Embedded System Development. CRC Press.
  • Feske, N. (2015). Genode operating system framework.
  • Ghost Kernel Web Sitesi. (2021). https://ghostkernel.org/about web sitesinden 10 Ocak 2021 tarihinde alıntılandı.
  • Krajci, I., & Cummings, D. (2013). History and Evolution of the Android OS. In Android on x86 (pp. 1-8). Apress, Berkeley, CA.
  • Rani, N. U., & Krishna, Y. R. (2014). Overview of Android for User Applications. International Journal on Recent and Innovation Trends in Computing and Communication, 2(11), 3722-3725.
  • Wei, H., Shao, Z., Huang, Z., Chen, R., Guan, Y., Tan, J., & Shao, Z. (2016). RT-ROS: A real-time ROS architecture on multi-core processors. Future Generation Computer Systems, 56, 171-178.
  • Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., ... & Ng, A. Y. (2009, May). ROS: an open-source Robot Operating System. In ICRA workshop on open source software (Vol. 3, No. 3.2, p. 5).
  • Kotecha, K., & Shah, A. (2008, June). Adaptive scheduling algorithm for real-time operating system. In 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence) (pp. 2109-2112). IEEE.
  • Roch, B. & Wien T. (2004). Monolithic kernel vs. Microkernel.
  • Baskiyar, S., & Meghanathan, N. (2005). A Survey of Contemporary Real-time Operating Systems. Informatica, 29(2).
  • Shah, V. H., & Shah, A. (2016). An analysis and review on memory management algorithms for real time operating system. International Journal of Computer Science and Information Security, 14(5), 236.
  • Shalan, M. A. (2003). Dynamic memory management for embedded real-time multiprocessor system-on-a-chip (Doctoral dissertation, Georgia Institute of Technology).
  • Rhodes L. (2002). Real-time Scheduling. http://faculty.juniata.edu/rhodes/os/ch10b.htm adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • Redmon, J., & Farhadi, A. (2018). Yolov3: An incremental improvement. arXiv preprint arXiv:1804.02767.
  • İZÜ Mezunlarına Görkemli Tören. (2018) https://www.izu.edu.tr/haberler/2018/06/29/i-z%C3%BC-d%C3%B6rd%C3%BCnc%C3%BC-d%C3%B6nem-mezunlar%C4%B1n%C4%B1-co%C5%9Fkuyla-u%C4%9Furlad%C4%B1 adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • RTOS vs GPOS. (2021). https://github.com/seckincanbaz/RTOSvsGPOS/.
  • OSRTOS. (2021). https://www.osrtos.com/ adresinden 10 Ocak 2021 tarihinde alıntılandı.

Examination of Open Source Real Time Operating Systems

Yıl 2021, Cilt: 3 Sayı: 1, 30 - 37, 30.04.2021
https://doi.org/10.47769/izufbed.877030

Öz

For software development processes, time is an unstoppable concept that is difficult to calculate when a software is designed when it depends on more than one variable, it changes from process to process. Especially in software architectures where very fast data collection and calculations need to be made, the concept of time stands out as a determining parameter for the architecture. A timing error of 100 milliseconds can have serious consequences in many vital software designs, for example in the design of systems that enable the airbag to be deployed in traffic accidents. The computers we use in daily life have operating systems that we call general purpose operating system (GPOS). Errors that occur in such operating systems themselves or in applications running on them may cause problems in the performance of the next task. In the example we gave above, this type of problem is definitely not acceptable. While designing the application to avoid such problems, we want it to be in real time. In real time applications, the starting and ending moments of each process on the application are precisely defined. A faulty process cannot make system resources inaccessible and will definitely be terminated when the task time expires. In this way, even if it fails, a task that will come after it is processed and the system always remains standing. In order to design and run an application in this way, we need operating systems that we can edit the source code as we want. These are usually open source operating systems, and as mentioned above, the real time operating systems are called real-time operating systems (RTOS). In this study, real time architectural infrastructures of different distributions of Linux are examined and their performances are compared.

Kaynakça

  • Spinellis, D. (2017). A repository of Unix history and evolution. Empirical Software Engineering, 22(3), 1372-1404.
  • Stallman, R. (1985). The GNU manifesto. https://www.gnu.org/gnu/manifesto.html adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • Engelfriet, A. (2009). Choosing an open source license. IEEE software, 27(1), 48-49.
  • Hasan, R. (2002). History of linux. https://bazaarmodel.net/ftp/Project-C/Bazaarmodel/Materiaal/Rechten-Law/History%20of%20Linux.doc adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • Tabassum, M., & Mathew, K. (2014, August). Software evolution analysis of linux (Ubuntu) OS. In 2014 International Conference on Computational Science and Technology (ICCST) (pp. 1-7). IEEE.
  • Claes, M., Mens, T., Di Cosmo, R., & Vouillon, J. (2015, May). A historical analysis of debian package incompatibilities. In 2015 IEEE/ACM 12th Working Conference on Mining Software Repositories (pp. 212-223). IEEE.
  • Ovadia, S. (2013). Linux for Academics, Part I. Behavioral & Social Sciences Librarian, 32(4), 252-256.
  • Tyler, C. (2006). Fedora Linux: A Complete Guide to Red Hat's Community Distribution. " O'Reilly Media, Inc.".
  • Karakoç, M. M., & Varol, A. (2016). National Distribution Project and Pardus Operating System. Turkish Journal of Science and Technology, 11(2), 25-34.
  • Cosmos Web Sitesi. (2021). https://www.gocosmos.org web sitesinden 10 Ocak 2021 tarihinde alıntılandı.
  • Villani, P. (1996). FreeDOS Kernel: An MS-DOS Emulator for Platform Independence & Embedded System Development. CRC Press.
  • Feske, N. (2015). Genode operating system framework.
  • Ghost Kernel Web Sitesi. (2021). https://ghostkernel.org/about web sitesinden 10 Ocak 2021 tarihinde alıntılandı.
  • Krajci, I., & Cummings, D. (2013). History and Evolution of the Android OS. In Android on x86 (pp. 1-8). Apress, Berkeley, CA.
  • Rani, N. U., & Krishna, Y. R. (2014). Overview of Android for User Applications. International Journal on Recent and Innovation Trends in Computing and Communication, 2(11), 3722-3725.
  • Wei, H., Shao, Z., Huang, Z., Chen, R., Guan, Y., Tan, J., & Shao, Z. (2016). RT-ROS: A real-time ROS architecture on multi-core processors. Future Generation Computer Systems, 56, 171-178.
  • Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., ... & Ng, A. Y. (2009, May). ROS: an open-source Robot Operating System. In ICRA workshop on open source software (Vol. 3, No. 3.2, p. 5).
  • Kotecha, K., & Shah, A. (2008, June). Adaptive scheduling algorithm for real-time operating system. In 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence) (pp. 2109-2112). IEEE.
  • Roch, B. & Wien T. (2004). Monolithic kernel vs. Microkernel.
  • Baskiyar, S., & Meghanathan, N. (2005). A Survey of Contemporary Real-time Operating Systems. Informatica, 29(2).
  • Shah, V. H., & Shah, A. (2016). An analysis and review on memory management algorithms for real time operating system. International Journal of Computer Science and Information Security, 14(5), 236.
  • Shalan, M. A. (2003). Dynamic memory management for embedded real-time multiprocessor system-on-a-chip (Doctoral dissertation, Georgia Institute of Technology).
  • Rhodes L. (2002). Real-time Scheduling. http://faculty.juniata.edu/rhodes/os/ch10b.htm adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • Redmon, J., & Farhadi, A. (2018). Yolov3: An incremental improvement. arXiv preprint arXiv:1804.02767.
  • İZÜ Mezunlarına Görkemli Tören. (2018) https://www.izu.edu.tr/haberler/2018/06/29/i-z%C3%BC-d%C3%B6rd%C3%BCnc%C3%BC-d%C3%B6nem-mezunlar%C4%B1n%C4%B1-co%C5%9Fkuyla-u%C4%9Furlad%C4%B1 adresinden 10 Ocak 2021 tarihinde alıntılandı.
  • RTOS vs GPOS. (2021). https://github.com/seckincanbaz/RTOSvsGPOS/.
  • OSRTOS. (2021). https://www.osrtos.com/ adresinden 10 Ocak 2021 tarihinde alıntılandı.
Toplam 27 adet kaynakça vardır.

Ayrıntılar

Birincil Dil Türkçe
Konular Mühendislik
Bölüm Makaleler
Yazarlar

Seçkin Canbaz 0000-0001-7289-016X

Gökhan Erdemir 0000-0003-4095-6333

Yayımlanma Tarihi 30 Nisan 2021
Gönderilme Tarihi 8 Şubat 2021
Kabul Tarihi 18 Şubat 2021
Yayımlandığı Sayı Yıl 2021 Cilt: 3 Sayı: 1

Kaynak Göster

APA Canbaz, S., & Erdemir, G. (2021). Açık Kaynak Kodlu Gerçek Zamanlı İşletim Sistemlerinin İncelenmesi. İstanbul Sabahattin Zaim Üniversitesi Fen Bilimleri Enstitüsü Dergisi, 3(1), 30-37. https://doi.org/10.47769/izufbed.877030

20503

Bu eser Creative Commons Atıf-GayriTicari 4.0 Uluslararası Lisansı ile lisanslanmıştır.