TR2022021039A2 - PROVIDING 3D IMAGING ON A PLATFORM WITH A REAL-TIME OPERATING SYSTEM - Google Patents

PROVIDING 3D IMAGING ON A PLATFORM WITH A REAL-TIME OPERATING SYSTEM

Info

Publication number
TR2022021039A2
TR2022021039A2 TR2022/021039 TR2022021039A2 TR 2022021039 A2 TR2022021039 A2 TR 2022021039A2 TR 2022/021039 TR2022/021039 TR 2022/021039 TR 2022021039 A2 TR2022021039 A2 TR 2022021039A2
Authority
TR
Turkey
Prior art keywords
real
operating system
time operating
screen
user space
Prior art date
Application number
TR2022/021039
Other languages
Turkish (tr)
Inventor
Ozturk Fi̇kret
Yildirim Mehmet
Feyzi̇ Do Ruyol Hasan
Pak Mesut
Ahi̇n Gokhan
Original Assignee
Havelsan Hava Elektroni̇k Sanayi̇ Ve Ti̇caret Anoni̇m Şi̇rketi̇
Filing date
Publication date
Application filed by Havelsan Hava Elektroni̇k Sanayi̇ Ve Ti̇caret Anoni̇m Şi̇rketi̇ filed Critical Havelsan Hava Elektroni̇k Sanayi̇ Ve Ti̇caret Anoni̇m Şi̇rketi̇
Priority to PCT/TR2023/051007 priority Critical patent/WO2024144523A1/en
Publication of TR2022021039A2 publication Critical patent/TR2022021039A2/en

Links

Abstract

Buluş; Grafik İşlemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) elektronik donanımına ve gerçek zamanlı işletim sistemine (1) sahip platformlarda grafiksel arayüzün ekranda gösterilmesini sağlayan bir yöntem ile ilgilidir. Buluş konusu yöntemde, Mesa3D grafik kütüphanesi (6) ile tüm grafik işlemlerinin CPU üzerinde gerçekleştirilmesi ve Mesa3D grafik kütüphanesine (6) entegre edilen Online screen modülü (11) ve Ekran sürücü modülü (12) ile grafiklerin ekranda görüntülenmesi sağlanmaktadır.Meet; It relates to a method that enables the graphical interface to be displayed on the screen on platforms with Graphics Processor Unit (GPU)/Display Controller (DC) (15) electronic hardware and real-time operating system (1). In the method of the invention, all graphic operations are performed on the CPU with the Mesa3D graphics library (6) and the graphics are displayed on the screen with the Online screen module (11) and the Display driver module (12) integrated into the Mesa3D graphics library (6).

Description

TARIFNAME GERÇEK ZAMANLI ISLETIM SISTEMI OLAN BIR PLATFORMDA 3D GÖRÜNTÜLEMENIN SAGLANMASI Teknik Alan Bulus; Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) elektronik donanimina ve gerçek zamanli isletim sistemine sahip platformlarda grafiksel arayüzün ekranda gösterilmesini saglayan bir yöntem ile ilgilidir. Bulus konusu yöntemde, Mesa3D kütüphanesi ile tüm grafik islemlerinin CPU üzerinde gerçeklestirilmesi ve Mesa3D kütüphanesine entegre edilen Online-Screen ve Ekran Sürücü katmanlari ile grafiklerin ekranda görüntülenmesi saglanmaktadir. Önceki Teknik Mevcut gerçek zamanli isletim sistemleri platformlarinda, GPU ve CPU tabanli 3D çizim islemleri gerçeklestirilmektedir. GPU tabanli çizim islemlerinde farkli gerçek zamanli isletim sistemleri için yazilmis farkli pencereleme ve GPU sürücüsü yazilimlari gerekmektedir. CPU tabanli yapilan 3D çizim islemlerinde ise olusturulan görüntü ekrana pencereleme alt yapisini saglayan bir kütüphane ile iletilmektedir. GPU tabanli uygulamalarda, donanimsal 3D grafik çizim islemi için hem GPU donanimina hem de isletim sistemine özgü ekran sürücü ihtiyaci ortaya çikmaktadir. Mevcut gerçek zamanli isletim sistemlerinde, bütün GPU’lara hitap edecek genel bir ekran sürücü yazilimi mevcut degildir. Mevcut gerçek zamanli isletim sistemlerinde, her GPU için farkli ekran sürücü yazilimlarinin gerçeklestirilmesi gerekmektedir. CPU tabanli uygulamalarda ise, yazilimsal 3D grafik çizim islemi için gerçek zamanli isletim sistemine bagimli bir pencereleme alt yapisini saglayan bir kütüphanenin kullanilmasi gerekmektedir. Bu da pencereleme sistemine sahip 2 olmayan gerçek zamanli isletim sistemlerinde 3D grafik çiziminin yapilmasinin önüne geçmektedir. Teknigin bilinen durumunda yer alan WO2020135721A1 sayili Uluslararasi Patent dokümaninda, bulut masaüstü sanal makinesinin 3B yetenegini uygulamaya koymasi için gelistirilmis bir yöntem ve sistemden bahsedilmektedir. Teknigin bilinen durumunda yer alan CN114116227A sayili Çin Patent dokümaninda, GPU destegi olmayan ve Wayland protokolüne dayali bir görüntüleme yöntemi, cihaz ve ekipmanindan bahsedilmektedir. Teknikte var olan yöntemler incelendiginde, Mesa3D kütüphanesi ile tüm grafik islemlerinin CPU üzerinde gerçeklestirilmesi ve Mesa3D kütüphanesine entegre edilen Online-Screen ve Ekran Sürücü katmanlari ile grafiklerin ekranda görüntülenmesinin saglandigi bulus konusu yöntemin gerçeklestirilmesi ihtiyaci duyulmustur. Bulusun Amaçlari Bu bulusun amaci, Mesa3D kütüphanesi ile tüm grafik islemlerinin CPU üzerinde gerçeklestirilmesi ve Mesa3D kütüphanesine entegre edilen Online-Screen ve Ekran Sürücü katmanlari ile grafiklerin ekranda görüntülenmesinin saglandigi bir yöntemin gerçeklestirilmesidir. Bu bulusun bir baska amaci, gerçek zamanli isletim sistemlerinde CPU tabanli yazilimsal grafik çizim islemlerinin gerçeklestirilmesini saglayan bir yöntemin gerçeklestirilmesidir. Bu bulusun bir baska amaci, gerçek zamanli isletim sistemleri için tasarlanan ekran sürücü yazilimi ile donanim üretici bagimsiz tüm grafik islem birimlerini kullanarak ekran görüntüsünün saglandigi bir yöntemin gerçeklestirilmesidir. 3 Bu bulusun bir baska amaci, farkli donanim birimleri için farkli ekran sürücü gereksinimini ortadan kaldiran ve buna bagli olarak proje gelistirme sürecini hizlandiran bir yöntemin gerçeklestirilmesidir. Bulusun Ayrintili Açiklamasi Bu bulusun amaçlarina ulasmak için gerçeklestirilen yöntemin örnek bir yapilanmasi ekli sekillerde gösterilmistir. Bu sekiller; Sekil 1: Bulus konusu yöntemin uygulandigi örnek bir yapilanmanin sematik görünümüdür. Sekil 2: Bulus konusu yöntemin akis semasinin görünümüdür. Sekillerde yer alan parçalar tek tek numaralandirilmis olup, bu numaralarin karsiliklari asagida verilmistir. 1. Gerçek Zamanli Isletim Sistemi (RTOS) 2. Kullanici Uzayi (User Space) 3. Çekirdek Uzayi (Kernel Space) 4. Donanim (Hardware) Katmani . OpenGL Kütüphanesi 6. Mesa3D Grafik Kütüphanesi 7. Durum Izleyici (State Tracker) 8. Gallium3D Katmani 9. Softpipe Sürücü Katmani . Winsys Katmani 11. Çevrimiçi Ekran (Online Screen) Modülü 12. Ekran Sürücüsü Modülü 13. Yazilim Olusturma (Software Rendering) 14. Gerçek Zamanli Isletim Sistemi Katmani (GIS) . Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) 4 Bulus, Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) elektronik donanimina ve gerçek zamanli isletim sistemine (1) sahip platformlarda grafiksel arayüzün ekranda gösterilmesini saglayan bir yöntem ile ilgili olup, - Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) aygitinin gerçek zamanli isletim sistemi (1) için kullanima açilmasi (100), - Görüntü yapilacak ekran çözünürlügü, renk formati tanimlamalarinin yapilmasi (110), - Gerçek zamanli isletim sisteminde (1) sürücü fonksiyon çagrisi ile istenilen çözünürlük ve renk formati bilgisinin ekran sürücü modülüne (12) iletilmesi (120), - Fiziksel bellek bölgesinde tahsis edilen çizim alani bellek bölgesi adresinin, gerçek zamanli isletim sisteminde (1) sürücü fonksiyon çagrisi ile kullanici uzayindaki (2) bir adres ile eslestirilmesi (130), - Eslestirilen kullanici uzayindaki (2) çizim alani adresinin Gallium 3D katmani (8) ve Softpipe sürücü katmaninda (9) yer alan çözünürlük, renk formati ve kullanici uzayindaki çizim yapilacak adres bilgilerinin OpenGL kütüphanesinin (5) çizim alanina set edilmesi (140), - Grafik çizim çagrilari ile Gallium 3D katmani (8) ve Softpipe sürücü katmaninin (9) kullanici uzayindaki çizim alanina grafik çizimlerini gerçeklestirmesi (150) adimlarini içermektedir. Bulus konusu yöntemde, yöntem gerçeklestirilirken ayni zamanda; - Gerçek zamanli isletim sisteminin (1) ilklendirilmesi zamaninda ekran sürücü modülünün (12) kullanici uzayindan (2) kullanilmasini saglayan kontrol fonksiyonlarinin tanimlanmasi ve sistem aygitlarina kaydedilmesi (160), - Kullanici uzayi (2) tarafindan ekran aygitinin kullanima açilmasi (170), - Ekran Sürücü modülünün (12), Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) aygitina ait fiziksel bellek bölgesinde çözünürlük bilgisine göre çizim alanini (frame buffer) olusturacak bellek alanini gerçek zamanli isletim sistemi (1) dinamik bellek fonksiyonu ile tahsis etmesi (180) adimlari da gerçeklestirilmesidir. Gerçek zamanli isletim sistemi (RTOS) (1); belirli bir zaman kisitlamasi içinde bir yetenegi veya dis olaylara yanit verebilmeyi garanti eden bir isletim sistemidir. Sistemin davranislarinin dogrulugu, hesaplamalarin sonuçlari ve bu sonuçlarin üretildigi zamana baglidir. Bir RTOS (1) için temel karakteristik özellikler; uzun süre çalisabilirlik, desteklenen standartlar, performans, bellek tüketimi, modülerlik, farkli ölçekli projeler için uygunluk olarak sayilabilir. Bulus konusu yöntemde yer alan ve Mesa3D grafik kütüphanesi (6) OpenGL kütüphanesinin (5), software rendering (13) yöntemiyle entegre edildigi gerçek zamanli isletim sistemi (1); açik kaynak kodlu olmayan, POSIX standardina bagli olan ve PSE 51-52-53 profillerini tam olarak destekleyen bir isletim sistemidir. POSIX standardina uygunlugu, resmi POSIX uygunluk test paketi tarafindan tam olarak dogrulanmistir. Özellikle gerçek zamanli güvenlik kritik aviyonik uygulamalari için gelistirilmis gerçek zamanli bir isletim sistemidir. Ancak diger alanlardaki gömülü gerçek zamanli uygulamalar için de ölçeklenebilir ve uyarlanabilir. Aviyonik uygulamalar için ARINC 653 spesifikasyonuna baglidir, ARINC 653 Part-1 gerekli servisleri ve çoklu modül takvimi, Part-2 opsiyonel servislerden servis erisim noktalari gibi özellikleri tam olarak desteklemektedir. Ayrica farkli islemci mimarilerine ve donanim konfigürasyonlarina uyarlanabilecek sekilde gelistirilmistir. Memory manager, device manager modülleri ile mimari destek paketi (ASP) ve board destek paketi (BSP) gibi donanim soyutlama katmanlarini, farkli mimarilere ve donanim konfigürasyonlarina uyarlayarak, birçok platforma kolayca tasinabilmesi için katmanli bir yapiya sahiptir. Kullanici uzayi (2), kullanici uygulamalarinin yürütüldügü sanal hafiza bölümüdür. Çekirdek uzayi (3), aygit sürücülerini, isletim sistemi çekirdegini ve diger tüm çekirdek uzantilarini çalistirmak için ayrilan yerdir. 6 Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15), elektronik donanimi ve ekrandan olusan donanim katmanidir. Donanim katmani (4), Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) ve ekran birimlerini içeren katmandir. OpenGL kütüphanesi (5), gelismis donanim destegi kullanarak veya yazilim yoluyla hem iki hem de üç boyutlu grafikleri ekrana çizmek için kullanilan bir grafik uygulama-gelistirme arabirimidir. Birçok isletim sisteminde yaygin olarak kullanilir ve desteklenir. Mesa3D grafik kütüphanesi (6), 3D grafikler olusturmak için kullanilan OpenGL kütüphanesi (5), OpenGL ES, Vulkan gibi grafik API özelliklerinin açik kaynak kodlu bir uygulamasidir. Ilk olarak Linux sistemlerinde gelistirilmis ve kullanilmistir. Bulus konusu yöntemin, mevcut uygulamalardan ayrildigi nokta da Mesa3D grafik kütüphanesinin (6) port edildigi gerçek zamanli isletim sistemi (1) platformunun özellikleri ve port edilme yöntemidir. Durum izleyici (State Tracker) (7); Mesa3D grafik kütüphanesini (6), Gallium3D katmanina (8) baglayan parçadir. Grafik islem birimi tarafindan dogrudan desteklenmeyen herhangi bir grafik isleme islemini, donanim dostu bir forma dönüstürür. Uygulama programindan Mesa Main’e gelen istekleri alir ve ilgili Rasterizer’in yönetilmesini saglar. Gallium3D katmani (8), birden çok isletim sistemi için aygit sürücülerinin programlanmasini kolaylastirmayi amaçlayan bir dizi arabirim ve destekleyici niteliginde aygit sürücüsü yazilimidir. Açik kaynak kodlu bir sekilde Mesa3D grafik kütüphanesinin (6) bir parçasi olarak yer alir. Sürücü gelistirmeyi kolaylastirmak ve birkaç farkli sürücünün çogaltilmis kodunu tek bir noktada toplamak için kullanilmistir. 7 Softpipe sürücü katmani (9), Gallium3D katmaninin (8) bir yazilim uygulamasidir. Sistemde bir donanim sürücüsü mevcut olmadigindan, CPU (Central Process Unit) üzerinden grafik islemlerini yapabilmek için kullanilmistir. Winsys katmani (10) ve çevrimiçi ekran (Online screen) modülü (11), herhangi bir pencereleme sistemi veya isletim sistemi bagimliligi olmaksizin, kullanici tarafindan ayrilan bellege çizim yapilmasini saglamak için kullanilir. Software rendering (13), bilgisayar yazilimi kullanilarak görüntü olusturma yöntemidir. Grafik çiziminde, grafik karti gibi donanim birimlerine bagli olmayan bir olusturma sürecini ifade eder. Islem tamamen GPU (Graphics Processing Unit)’dan bagimsiz olarak CPU (Central Process Unit)’da gerçeklesir. Bulus konusu yöntemde, bu yöntem kullanilarak, gerçek zamanli isletim sistemi (1) üzerinde harici bir donanim olan grafik islem biriminden bagimsiz olarak grafik çizdirme islemi gerçeklestirilmektedir. Gerçek Zamanli Isletim Sistemi Katmani (GIS) (14), online screen modülü (11) ve ekran sürücü modülünden (12) olusur. Ekran sürücü modülü (12), GPU çesitlerinden bagimsiz bir sekilde bütün GPU’lar için çizim yapilabilmesini saglar. Bulus konusu yöntemin bilinen sistemlerden farkli oldugu noktalar; Mesa3D grafik kütüphanesi (6) ve OpenGL kütüphanesinin (5) port edildigi isletim sisteminin, gerçek zamanli isletim sistemi (1) özelligini tasimasi ve gerçek zamanli isletim sisteminin (1) ihtiyaç duydugu grafik çizim gereksinimini, CPU tabanli software rendering (13) yöntemi ile harici grafik birimlerinden bagimsiz bir sekilde yerine getirebiliyor olmasidir. Bulus konusu yöntem; gerçek zamanli isletim sistemlerinde (1) GPU/Görüntü kontrolör (15) modellerinden bagimsiz çalisabilen ekran sürücü modülü (12) ve online screen modülü (11) içermektedir. Ekran sürücü modülü (12), gerçek zamanli isletim sistemleri (1) için donanim üretici bagimsiz tüm grafik islem birimlerini kullanarak ekran görüntüsünü saglar. Online screen modülü (11) ise herhangi bir pencereleme sistemi olmadan Ekran sürücü modülü (12) ile iletisime geçerek 8 OpenGL kütüphanesi (5) çagrilari sonucu gerçeklestirilen çizimlerin ekrana gönderilmesini saglar. Ayrica bulus konusu yöntemde, Linux DRM yapisi Mesa3D grafik kütüphanesinden (6) çikartilmistir. Windowing sistem modülünde yer alan pencereleme kütüphaneleri Mesa3D grafik kütüphanesinden (6) çikartilarak yerine online screen modülü (11) eklenmistir. Online screen modülü (11) katmanina çekirdek uzayi (3) tarafinda cevap verecek ekran sürücü modülü (12) katmani eklenmistir. GPU/Görüntü kontrolör (15) modülü ile model bagimsiz ekran sürücüsü saglanmistir. Online screen modülü (11) ile pencereleme sistemi olmadan 3D çizim ortami saglanmistir. Grafik islem birimi olmadan da ekran görüntüsü saglanabilmekte, harici GPU donanimina ihtiyaç duyulmamakta ve proje maliyeti düsürülmüstür. Sertifikasyon için gerekli olan dokümantasyon isçilik maliyeti düsürülmüstür. Çözünürlügü düsük olan ekran görüntüleme projelerinde donanimsal grafik isleme birimi seviyesinden daha yüksek performans saglanmaktadir. Bulus konusu yöntem, uçus kontrol sistemleri, navigasyon sistemleri, elektronik harp sistemleri, uzaktan kumandali silah sistemleri, otomotiv ve rayli ulasim sistemlerinde kullanilabilecektir. TR TR TR TR TR TRDESCRIPTION PROVIDING 3D VISUALIZATION ON A PLATFORM WITH A REAL-TIME OPERATING SYSTEM Technical Field The invention relates to a method that provides display of graphical interface on the screen on platforms having Graphics Processor Unit (GPU)/Display Controller (DC) electronic hardware and real-time operating system. In the method in question, all graphic operations are performed on the CPU with the Mesa3D library and graphics are displayed on the screen with the Online-Screen and Screen Driver layers integrated into the Mesa3D library. Previous Art On existing real-time operating system platforms, GPU and CPU based 3D drawing operations are performed. In GPU based drawing operations, different windowing and GPU driver software written for different real-time operating systems are required. In CPU-based 3D drawing operations, the created image is transmitted to the screen with a library that provides the windowing infrastructure. In GPU-based applications, hardware 3D graphics drawing requires a display driver specific to both the GPU hardware and the operating system. In current real-time operating systems, there is no general display driver software that will appeal to all GPUs. In current real-time operating systems, different display driver software must be implemented for each GPU. In CPU-based applications, a library that provides a windowing infrastructure dependent on the real-time operating system must be used for software 3D graphics drawing operations. This prevents 3D graphics drawing in real-time operating systems that do not have a windowing system. In the international patent document numbered WO2020135721A1, which is in the state of the art, a method and system developed for implementing the 3D capability of the cloud desktop virtual machine is mentioned. In the Chinese patent document numbered CN114116227A, which is in the state of the art, a display method, device and equipment based on the Wayland protocol without GPU support is mentioned. When the existing methods in the art are examined, it has been felt that the method in question is needed to be implemented, where all graphic operations are performed on the CPU with the Mesa3D library and the graphics are displayed on the screen with the Online-Screen and Display Driver layers integrated into the Mesa3D library. Purposes of the Invention The purpose of this invention is to realize a method in which all graphic operations are performed on the CPU with the Mesa3D library and graphics are displayed on the screen with the Online-Screen and Screen Driver layers integrated into the Mesa3D library. Another purpose of this invention is to realize a method that provides CPU-based software graphic drawing operations in real-time operating systems. Another purpose of this invention is to realize a method in which the screen image is provided using all graphics processing units independent of the hardware manufacturer with the screen driver software designed for real-time operating systems. 3 Another purpose of this invention is to realize a method that eliminates the need for different screen drivers for different hardware units and accelerates the project development process accordingly. Detailed Description of the Invention An exemplary embodiment of the method implemented to achieve the objectives of this invention is shown in the attached figures. These figures; Figure 1: Schematic view of an exemplary embodiment in which the method which is the subject of the invention is applied. Figure 2: View of the flow diagram of the method which is the subject of the invention. The parts in the figures are numbered one by one and the correspondences of these numbers are given below. 1. Real-Time Operating System (RTOS) 2. User Space 3. Kernel Space 4. Hardware Layer. OpenGL Library 6. Mesa3D Graphics Library 7. State Tracker 8. Gallium3D Layer 9. Softpipe Driver Layer. Winsys Layer 11. Online Screen Module 12. Display Driver Module 13. Software Rendering 14. Real Time Operating System Layer (GIS) . Graphics Processing Unit (GPU)/Display Controller (DC) 4 The invention relates to a method that enables the graphical interface to be displayed on the screen on platforms with Graphics Processing Unit (GPU)/Display Controller (DC) (15) electronic hardware and a real-time operating system (1), - enabling the Graphics Processing Unit (GPU)/Display Controller (DC) (15) device to be used for the real-time operating system (1) (100), - defining the screen resolution and color format to be displayed (110), - transmitting the desired resolution and color format information to the screen driver module (12) with a driver function call in the real-time operating system (1) (120), - connecting the drawing area memory area address allocated in the physical memory area to an address in the user space (2) with a driver function call in the real-time operating system (1). - Mapping (130), - Setting the resolution, color format and user space address information to be drawn in the Gallium 3D layer (8) and Softpipe driver layer (9) of the mapped user space (2) drawing area address to the drawing area of the OpenGL library (5) (140), - Performing graphic drawings in the user space drawing area of the Gallium 3D layer (8) and Softpipe driver layer (9) with graphic drawing calls (150). In the method that is the subject of the invention, while the method is being performed; - Defining control functions that enable the display driver module (12) to be used from user space (2) at the time of initialization of the real-time operating system (1) and registering them in the system devices (160), - Opening the display device for use by the user space (2) (170), - Allocating the memory area that will create the drawing area (frame buffer) according to the resolution information in the physical memory area of the Graphics Processing Unit (GPU)/Display Controller (DC) (15) device of the Display Driver module (12) with the dynamic memory function of the real-time operating system (1) (180) are also carried out. A real-time operating system (RTOS) (1); is an operating system that guarantees a capability or the ability to respond to external events within a certain time constraint. The correctness of the system's behavior depends on the results of the calculations and the time at which these results are produced. The basic characteristics for an RTOS (1) are; long-term operability, supported standards, performance, memory consumption, modularity, suitability for different scale projects. The real-time operating system (1) in the method of the invention, which integrates the Mesa3D graphics library (6) and the OpenGL library (5) with the software rendering (13) method, is an operating system that is not open source, is subject to the POSIX standard and fully supports PSE 51-52-53 profiles. Its conformity to the POSIX standard has been fully verified by the official POSIX conformance test suite. It is a real-time operating system developed especially for real-time safety-critical avionics applications. However, it can also be scaled and adapted for embedded real-time applications in other areas. It is based on ARINC 653 specification for avionic applications, fully supports ARINC 653 Part-1 required services and features such as multi-module schedule, Part-2 optional services and service access points. It has also been developed to be adaptable to different processor architectures and hardware configurations. It has a layered structure that allows it to be easily ported to many platforms by adapting hardware abstraction layers such as memory manager, device manager modules and architecture support package (ASP) and board support package (BSP) to different architectures and hardware configurations. User space (2) is the virtual memory section where user applications are executed. Kernel space (3) is the place reserved for running device drivers, operating system kernel and all other kernel extensions. 6 The GPU/Display Controller (DC) (15) is the hardware layer consisting of the electronic hardware and the display. The hardware layer (4) is the layer containing the GPU/Display Controller (DC) (15) and the display units. The OpenGL library (5) is a graphics application-development interface used to draw both two-dimensional and three-dimensional graphics on the screen using advanced hardware support or through software. It is widely used and supported in many operating systems. The Mesa3D graphics library (6) is an open source implementation of the OpenGL library (5), OpenGL ES, Vulkan, and other graphics API features used to create 3D graphics. It was first developed and used on Linux systems. The point where the method in question differs from existing applications is the features of the real-time operating system (1) platform to which the Mesa3D graphics library (6) is ported and the porting method. State Tracker (7); is the part that connects the Mesa3D graphics library (6) to the Gallium3D layer (8). It converts any graphics processing operation that is not directly supported by the graphics processing unit into a hardware-friendly form. It receives requests from the application program to Mesa Main and manages the relevant Rasterizer. The Gallium3D layer (8) is a set of interfaces and supporting device driver software that aims to facilitate the programming of device drivers for multiple operating systems. It is included as a part of the Mesa3D graphics library (6) in an open source form. It is used to simplify driver development and to collect duplicate code from several different drivers in one place. 7 Softpipe driver layer (9) is a software implementation of Gallium3D layer (8). Since there is no hardware driver in the system, it is used to perform graphics operations via CPU (Central Process Unit). Winsys layer (10) and Online screen module (11) are used to provide drawing to the memory allocated by the user without any windowing system or operating system dependency. Software rendering (13) is a method of creating images using computer software. In graphic drawing, it refers to a rendering process that is not dependent on hardware units such as graphics cards. The process is completely independent of GPU (Graphics Processing Unit) and is performed on CPU (Central Process Unit). In the method of the invention, by using this method, graphics drawing process is performed independently from the graphics processing unit, which is an external hardware, on the real-time operating system (1). Real-Time Operating System Layer (GIS) (14) consists of online screen module (11) and screen driver module (12). Screen driver module (12) enables drawing to be done for all GPUs independently of GPU types. The points where the method of the invention differs from known systems are that the operating system to which Mesa3D graphics library (6) and OpenGL library (5) are ported has the feature of a real-time operating system (1) and can fulfill the graphic drawing requirement required by the real-time operating system (1) independently of external graphics units with the CPU-based software rendering (13) method. The method of the invention; It includes a screen driver module (12) and an online screen module (11) that can operate independently of GPU/Image controller (15) models in real-time operating systems (1). The screen driver module (12) provides the screen display using all graphics processing units independent of the hardware manufacturer for real-time operating systems (1). The online screen module (11) communicates with the screen driver module (12) without any windowing system and ensures that the drawings created as a result of 8 OpenGL library (5) calls are sent to the screen. In addition, in the method in question, the Linux DRM structure has been removed from the Mesa3D graphics library (6). The windowing libraries in the windowing system module have been removed from the Mesa3D graphics library (6) and replaced by the online screen module (11). The screen driver module (12) layer, which will respond to the online screen module (11) layer on the kernel space (3) side, has been added. The GPU/Image controller (15) module provides a model-independent display driver. The online screen module (11) provides a 3D drawing environment without a windowing system. Screen display can be provided without a graphics processing unit, no external GPU hardware is needed, and the project cost is reduced. The documentation labor cost required for certification is reduced. Higher performance is provided than the hardware graphics processing unit level in low-resolution screen display projects. The method in question can be used in flight control systems, navigation systems, electronic warfare systems, remote-controlled weapon systems, automotive and rail transportation systems. TR TR TR TR TR TR

Claims (2)

ISTEMLER 1. Bulus, Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) elektronik donanimina ve gerçek zamanli isletim sistemine (1) sahip platformlarda grafiksel arayüzün ekranda gösterilmesini saglayan bir 5 yöntem ile ilgili olup, - Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) aygitinin gerçek zamanli isletim sistemi (1) için kullanima açilmasi (100), - Görüntü yapilacak ekran çözünürlügü, renk formati tanimlamalarinin yapilmasi (110), 10 - Gerçek zamanli isletim sisteminde (1) sürücü fonksiyon çagrisi ile istenilen çözünürlük ve renk formati bilgisinin ekran sürücü modülüne (12) iletilmesi (120), - Fiziksel bellek bölgesinde tahsis edilen çizim alani bellek bölgesi adresinin, gerçek zamanli isletim sisteminde (1) sürücü fonksiyon 15 çagrisi ile kullanici uzayindaki (2) bir adres ile eslestirilmesi (130), - Eslestirilen kullanici uzayindaki (2) çizim alani adresinin Gallium 3D katmani (8) ve Softpipe sürücü katmaninda (9) yer alan çözünürlük, renk formati ve kullanici uzayindaki çizim yapilacak adres bilgilerinin OpenGL kütüphanesinin (5) çizim alanina set 20 edilmesi (140), - Grafik çizim çagrilari ile Gallium 3D katmani (8) ve Softpipe sürücü katmaninin (9) kullanici uzayindaki çizim alanina grafik çizimlerini gerçeklestirmesi (150) adimlarini içermesi ile karakterize edilmektedir. 251. The invention relates to a method that enables the graphical interface to be displayed on the screen on platforms with Graphics Processor Unit (GPU)/Display Controller (DC) (15) electronic hardware and real-time operating system (1), - Graphics Processor Unit (GPU) /Making the Display Controller (DC) (15) device available for use in the real-time operating system (1) (100), - Defining the screen resolution and color format to be displayed (110), 10 - Calling the driver function in the real-time operating system (1) - Transmitting the desired resolution and color format information to the display driver module (12) with (120), - The address of the drawing area memory region allocated in the physical memory region is transferred to an address in the user space (2) with the call of driver function 15 in the real-time operating system (1). matching (130), - The resolution, color format and drawing address information in the user space in the Gallium 3D layer (8) and Softpipe driver layer (9) of the drawing area address in the matched user space (2) are set to the drawing area of the OpenGL library (5). It is characterized by the steps of (140), - Graphic drawing calls and the Gallium 3D layer (8) and Softpipe driver layer (9) performing graphic drawings to the drawing area in the user space (150). 25 2. Bulus istem 1’deki gibi bir yöntem ile ilgili olup, yöntem gerçeklestirilirken ayni zamanda; - Gerçek zamanli isletim sisteminin (1) ilklendirilmesi zamaninda ekran sürücü modülünün (12) kullanici uzayindan (2) kullanilmasini saglayan kontrol fonksiyonlarinin tanimlanmasi ve sistem aygitlarina kaydedilmesi (160), - Kullanici uzayi (2) tarafindan ekran aygitinin kullanima açilmasi (170), 5 - Ekran Sürücü modülünün (12), Grafik Islemci Birimi (GPU)/Görüntü Kontrolör (DC) (15) aygitina ait fiziksel bellek bölgesinde çözünürlük bilgisine göre çizim alanini (frame buffer) olusturacak bellek alanini, gerçek zamanli isletim sistemi (1) dinamik bellek fonksiyonu ile tahsis etmesi (180) 10 adimlarinin da gerçeklestirilmesi ile karakterize edilmektedir.2. The invention is related to a method as in claim 1, and while the method is carried out, at the same time; - Defining the control functions that enable the display driver module (12) to be used from the user space (2) at the time of initialization of the real-time operating system (1) and recording them to the system devices (160), - Making the display device available for use by the user space (2) (170), 5 - In the physical memory region of the Display Driver module (12), Graphics Processor Unit (GPU)/Display Controller (DC) (15) device, the memory area that will create the drawing area (frame buffer) according to the resolution information, is dynamic memory of the real-time operating system (1). It is characterized by performing 10 steps of allocation with the function (180).
TR2022/021039 2022-12-28 2022-12-28 PROVIDING 3D IMAGING ON A PLATFORM WITH A REAL-TIME OPERATING SYSTEM TR2022021039A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/TR2023/051007 WO2024144523A1 (en) 2022-12-28 2023-09-21 Providing 3d imaging on a platform with a real-time operating system

Publications (1)

Publication Number Publication Date
TR2022021039A2 true TR2022021039A2 (en) 2024-01-22

Family

ID=

Similar Documents

Publication Publication Date Title
CN100570562C (en) Video card, the dummy machine system of using this video card and display processing method
US9146762B2 (en) Specialized virtual machine to virtualize hardware resource for guest virtual machines
US7864185B1 (en) Register based queuing for texture requests
US5185599A (en) Local display bus architecture and communications method for Raster display
US7400322B1 (en) Viewport-based desktop rendering engine
US7644407B2 (en) Method, apparatus and system for seamlessly sharing a graphics device amongst virtual machines
US6323875B1 (en) Method for rendering display blocks on display device
US20170236244A1 (en) Graphics processing systems
US7475197B1 (en) Cross process memory management
US20090002263A1 (en) Providing a Composite Display
KR100882842B1 (en) Apparatus to use a fifo as a post-vertex cache and method thereof
US20050134585A1 (en) Method and apparatus for high-performance rendering and hit testing of a window tree
JPH0727571B2 (en) Raster scan display device and graphic data transfer method
US9384583B2 (en) Network distributed physics computations
EP2631784A3 (en) System for providing transparent access to hardware graphic layers
KR20170132404A (en) Screen controlling method and electronic device supporting the same
CN108733602B (en) Data processing
US9058759B2 (en) Virtual display device drivers compatible with windows display driver model
CN110941408B (en) KVM virtual machine graphical interface output method and device
TR2022021039A2 (en) PROVIDING 3D IMAGING ON A PLATFORM WITH A REAL-TIME OPERATING SYSTEM
JPH11353495A (en) Graphics device and graphic method
CN114924837A (en) Data processing method, electronic device and readable storage medium
WO2024144523A1 (en) Providing 3d imaging on a platform with a real-time operating system
CN106547505B (en) Method and system for real-time sliding display of scanned image
Giatsintov et al. Architecture of the graphics system for embedded real-time operating systems