SDV Media, SDV Core'a medya işlevselliği ekleyen hafif bir işletim sistemidir.
SDV Media referans uygulaması
Şekil 1. SDV Media mimarisi.
SDV Media, SDV Core'a dayanır ve GPU, video ve ses gibi donanım motorlarına erişim ekleyerek medya özellikleri sunar. Gelecekteki sürümlerde ek donanım motorları eklenebilir.
Referans uygulama, donanım soyutlamasını uygulamak için VirtIO'yu (özellikle virtio-gpu, virtio-media, virtio-snd ve virtio-input) kullanır.
Uygulama, OpenGL (ES), Vulkan, EGL, Video4Linux ve tinyalsa gibi medya özelliklerine erişmek için standart kullanıcı alanı kitaplıklarını kullanır. Bu nedenle, üretim uygulaması VirtIO sürücülerini değiştirebilir ve bu arayüzleri donanıma özgü çözümlerle uygulayabilir.
SDV Media, SDV Core'un tüm işlevlerini içerir. Bu nedenle SDV iletişim yığınını içerir, GKI kullanır ve SDV'nin diğer tüm özelliklerini barındırır.
Entegrasyon seçenekleri
Bu sayfanın geri kalanında SDV Media entegrasyonu için iki seçenek açıklanmaktadır.
1. seçenek: Ana makine tabanlı (önerilir)
Şekil 2. Ana makine tabanlı entegrasyon.
Ana makine tabanlı entegrasyon seçeneği, işlevselliği gerçek donanımdan bağımsız olarak uygulamak için konukta VirtIO'yu kullanır. Donanıma özgü sürücüler ana makine tarafına entegre edilir ve konukla iletişim kurmak için cihazları standartlaştırılmış VirtIO tabanlı arayüze göre uygular.
Performans, ana tarafındaki cihaz ve sürücü uygulamasına bağlıdır ancak testler, sistemin yüksek performans ve başlatma hızı elde edebildiğini göstermiştir.
Bu çözümün bir diğer avantajı da konuk, standart arayüzler kullandığı için altyapı ve donanımdaki görüntülerin çok benzer olabilmesidir. Bu durum, farklı cihazlarda çalıştırmak için minimum düzeyde değişiklik yapılmasını veya hiç değişiklik yapılmamasını sağlar. Donanım bağımlılığı, ana makineyle sınırlıdır.
2. seçenek: Kullanıcı alanı kitaplığı soyutlaması
Şekil 3. Kullanıcı alanı kitaplığı soyutlaması.
Bu entegrasyon seçeneğinde, standartlaştırılmış arayüzler düşük düzeyli kullanıcı alanı kitaplıkları OpenGL (ES), Vulkan, EGL, Video4Linux ve tinyalsa'dır. Konuk ve sunucu arasındaki bölünmeyi düzenlemekten iş ortağı, kullanıcı alanı kitaplığı arayüzleriyle uyumluluğu sağlamaktan ise uygulama geliştirici sorumludur.
Bu yaklaşım, altyapı ve donanım ortamlarında farklı sürücülere yol açar. Bu da davranışlarda büyük farklılıklara neden olabilir ve görüntüler farklı ortamlara uyarlanmadan aktarılamaz.
Bu yaklaşım, tam VirtIO desteği olmayan iş ortakları için tasarlanmıştır.
SDV Medya Şartları
SDV Media gereksinimleri, tüm SDV Core gereksinimlerinin karşılandığını varsayar. Bu, referans uygulaması kullanılarak veya önceki bölümlerde açıklandığı gibi sistem kitaplıkları satıcıya özel çözümlerle değiştirilerek yapılabilir.