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.
Ç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.
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.
Primary Language | Turkish |
---|---|
Subjects | Engineering |
Journal Section | Articles |
Authors | |
Publication Date | April 30, 2021 |
Submission Date | February 8, 2021 |
Acceptance Date | February 18, 2021 |
Published in Issue | Year 2021 |
Bu eser Creative Commons Atıf-GayriTicari 4.0 Uluslararası Lisansı ile lisanslanmıştır.