Genode

Software screenshot:
Genode
Software ətraflı:
Version: 17.08 Yenil?nib
Tarixi Upload: 2 Oct 17
Geliştirici: Genode Labs
Lisenziya: Pulsuz
Məşhurluq: 83

Rating: 3.0/5 (Total Votes: 2)

Genode mövcud kernelləri (məsələn, mikrokernel və ya hypervisor) genişləndirən və ərizə üçün vahid bir API təmin edən açıq mənbə əməliyyat sistemi çərçivəsidir.

Hal-hazırda L4 / Fiasco və Linux dəstəklənir.

Bu sürümdə yeni nədir :

  • Intel Gen-8 GPU'lar üçün hardware-tezləşdirilmiş qrafiklər
  • ARM və 64-bit x86 hardware
  • üzrə seL4 çekirdeği
  • Əsas çərçivə və OS səviyyəsində infrastruktur:
  • Sadələşdirilmiş IOMMU əməliyyat sistemi
  • Fayllara hesabatların alınması üçün yeni hesabat server
  • Komponentləri ardıcıl olaraq başlamaq üçün yeni iş zamanı mühiti
  • Boot-time başlanğıc kvadrat tamponunun dəstəklənməsi
  • VFS genişlənməmiş əməliyyat
  • Blok sessiyalarını yalnız default olaraq oxumaq
  • Artıq vaxt işlənmə
  • FatFS-based VFS plugin
  • Ətraflı GUI primitives
  • C runtime
  • Kitabxanalar və tətbiqlər:
  • Mesa düzəlişləri
  • Paketin idarə edilməsi
  • Platformlar:
  • Xen Domu olaraq Genode
  • Çılpaq donanma (baz-hw) üzrə icra
  • Muen ayırma çekirdeği
  • NOVA microhypervisor

17.05 versiyasında yeni :

  • Əsas çərçivə:
  • Genode Foundations kitabının yeni versiyası
  • Müasir API keçid komponentinə keçid
  • İstisna növlərini düzəldin
  • İmtiyaz kotasının təyin edilməsi və satışı
  • Əsas komponentin birləşdiyi RAM və PD xidmətləri
  • Statik konstruktorların açıq şəkildə icrası
  • I / O siqnallarının tətbiqi səviyyəli siqnallardan ayrılması
  • OS səviyyəli kitabxanalar və komponentlər:
  • Dinamik resursların idarə edilməsi və xidmətlərin təşkili init
  • İstifadəçi səviyyəli vaxtı üçün yeni API
  • Fayl sistemi sessiyasında qrupda bildirişlər
  • Log-based CPU-yük ekranı
  • Şəbəkə trafikinin monitorinqi
  • Paylaşılan kitabxana kimi POSIX libc profili
  • Blok-cihaz səviyyəli komponentlərinin dövlət hesabatı
  • Çalışmalar və tətbiqlər:
  • VirtualBox 5-in NOVA-da xüsusiyyət tamlığı
  • Nim proqramlaşdırma dili
  • Qt5 5.8 versiyasına yeniləndi
  • Platformlar:
  • Çılpaq donanma (baz-hw) üzrə icra
  • Muen ayırma çekirdek yeniləməsi
  • Fiasco.OC kernel yeniləməsi
  • Tool zənciri:
  • Ada desteği daxil olmaqla GNU derleyici toplama (GCC) 6.3
  • Yapılmış yürütülebilirlərin ayrılmış debug versiyaları

13.11 versiyasında yeni :

  • Əsas çərçivə:
  • Dinamik qaynaq balansı
  • C ++ 11
  • default olaraq etkinleştirildi
  • Təkmilləşdirilmiş hadisə izləmə
  • Aşağı səviyyəli OS infrastrukturu:
  • Linux TCP / IP yığını istifadə edərək Gigabit şəbəkəsi
  • Təkmilləşdirilmiş nitpicker GUI server
  • Yeni terminal xidmətləri
  • Hibrid Genode / Linux sistemləri üçün yeni fayl sistemi server
  • Block Cihazlara giriş üçün yeni C-runtime plugin
  • Qurğu sürücüləri:
  • Raspberry Pi
  • üçün qrafika və USB HID
  • Samsung Exynos 5 üçün HDMI
  • Proqramlar və kitabxanalar:
  • OpenGL və QML dəstəyi ilə Qt5
  • FUSE
  • əsasında yeni fayl sistemləri
  • DosBox limanı
  • Runtime mühitləri:
  • Ətraflı GNU debugger xüsusiyyətləri
  • Freescale i.MX53 üzrə ARM TrustZone dəstəyi
  • Platformlar:
  • Dinamik iş yükləri üçün Base-HW effektivdir
  • NOVA üzrə çekirdek obyekti üçün ömür boyu idarə olunması
  • Fiasco.OC üzərində işləyən L4Linux üçün ballooning dəstəyi

13.08 versiyasında yeni :

  • 13.08 versiyasını buraxma Genode OS sisteminin 5 illiyini qeyd edir. Bu ildönümünü çox istəkli olan üç əsas xüsusiyyəti əlavə edirik: Qt5 limanına Genod, dərin çox prosessor dəstəyi və yüngül hadisə izləmə çərçivəsi. Bundan əlavə, yeni versiya SATA 3.0 üçün yeni qurğu sürücüləri və Exynos-5 SoC üçün güc idarəetmə sistemi, x86-da NOVA-da təkmilləşdirilmiş virtuallaşdırma dəstəyi, yenilənən çekirdeklər və yüklənmiş 3-cü tərəfin qaynaq kodunun bütöv yoxlamaları ilə gəlir.
  • Son beş il ərzində Genodun inkişafı, əsasən, çərçivəni mümkün qədər çox tətbiq sahəsinə uyğunlaşdırmaq üçün xüsusiyyətləri əlavə etmək və inkişaf etdirməklə əsaslandırdı. İndi kritik xüsusiyyətlərə sahib olduğumuz üçün, sadəcə funksionallığa diqqət yetirilmir. Genodun nəyin nəticəsiylə nəticələnə biləcəyi sualına, Genodun bir şey edə biləcəyi sualına çevrilir: Müəyyən bir iş yükü nə qədər sabitdir? Şəbəkə necə həyata keçirir? Bu, çox prosessor sistemlərinə necə miqyasla gəlir? Bu cür suallara qısa cavab vermədiyimiz üçün araşdırmalıyıq.
  • Sabitlik haqqında danışarkən, yaxın zamanda tətbiq olunan avtomatik test infrastrukturu bizi daha da inandırıcı edir. Hər gecə 200-dən çox avtomatlaşdırılmış test keçirilir, müxtəlif çekirdekləri və bir neçə hardware platformasını əhatə edir. Bütün bu testlər, qaçış scripts şəklində ictimaiyyətə açıqdır və inkişafı davam edir.
  • Performans araşdırmalarına gəldikdə, son zamanlarda tətbiq performansını şəbəkə effektivliyinə yönəldərək tətbiq edilməyə başlamışıq. Maraqlıdır ki, bizim ölçülərimiz istifadə olunan yadellərlər arasında əhəmiyyətli fərqlər göstərir, həm də bizim proqram yığımımızdakı çatışmazlıqlardır. Məsələn, hazırda lwIP versiyamızın gigabit şəbəkəsi ilə zəif çıxış etdiyini görürük. Bu cür performans məsələlərini hərtərəfli araşdırmaq üçün, mövcud versiya Genode komponentlərinin davranışını izləmək üçün dəstək verir. Bu, kompleks tətbiqi səviyyəli iş yüklərinin icrası üçün kritik yolda olan bütün komponentlərarası qarşılıqlı təsirləri dərindən öyrənməyə imkan verir. Genod memarlığı sayəsində, axtarış qurğusu üçün təəccüblü sadə, lakin güclü bir dizaynla çıxış edə bilərik. Bölmə Yüngül hadisələrin izlənməsi necə işlədiyini izah edir.
  • Çoklu prosessor ölçeklenebilirliğine gəldikdə, biz bu cür sorğulamalardan utanmaq üçün istifadə etdik, çünki, dürüstcə, bunun üçün çox diqqət etməmişik. Bu görünüş indi də dəyişdi. Cari azad edildikdə CPU affinities rəhbərliyini çərçivənin ürəyinə, yəni, Genodun iclas konsepsiyasına tətbiq etdik. Bundan əlavə, biz NOVA hypervisor üzərində birdən çox CPU istifadə etmək üçün Genode bir lanet sabit qoz çatlamışdır. Bu çekirdek x86 arxitekturası üçün ən inkişaf etmiş açıq mənbə mikrokernelidir. Bununla belə, NOVA-nın MP modelləri Genodun API dizaynına zidd olaraq baxırdılar. Xoşbəxtlikdən, biz irəli getmək üçün kifayət qədər zərif bir yol tapdıq və biz canavarı ala bilərik. Bölmə Təkmilləşdirilmiş çox prosessor dəstəyi daha ətraflı şəkildə gedir.
  • İşlevsellik baxımından, biz həmişə Qt-nin Genod üzərində mövcudluğunu böyük bir aktiv kimi qiymətləndiririk. Cari azad ilə, nəhayət Qt4-dən Qt5-ə keçid etdiyimizi bildirməyi xoşbəxt edirik. Bütün çekirdeklerde mövcud Qt5 bölümü, taşıma esnasında karşılaştığımız zorluklara fikir verir.
  • Bu məqamlara əlavə olaraq, yeni versiya bütün yerlərdə təkmilləşdirilmişdir. Bir neçə ad üçün, POSIX iş parçaları, təkmilləşdirilmiş qurğu sürücüləri, Fiasco.OC çekirdek və L4Linux'un yenilənmiş versiyası və Exynos-5 üçün yeni cihaz sürücüləri üçün təkmilləşdirilmiş dəstək var. Nəhayət, nazil olunan 3-cü tərəfin qaynaq kodlarının bütövlüyünü yoxlamaq problemi həll edilmişdir.

Yeni nə versiyası 12.11:

  • Genode OS Çərçivəsinin 12.11 versiyasının əsas mövzusu Genode Genodunu özünə yerləşdirməkdir. Self-hosting ilə, Genode quruluş sisteminin Genode mühitində icrasını başa düşürük. Bu iş istiqamətini aparmaq üçün iki motivasiya var. Birincisi, Genodun inkişaf etdiricilərinin Gündəlik OS kimi istifadə etmək üçün hərəkət etməsi üçün əsas bir şərtdir. Əlbəttə, bu ön şərt mövcud virtualizasiya həllərindən biri ilə həyata keçirilə bilər. Məsələn, L4Linux'u Fiasco.OC çekirdeğinin Genode üstüne çalıştırabilir ve bir L4Linux örneğinden Genode qurma sistemini istifadə edə bilərik. Buna baxmayaraq, bu, sistemin mürəkkəbliyini azaltmaq üçün Genodun əsas stimulunu məğlub edir. Şəkil içərisində hər iki Genod və L4Linux olmağımızla sistemin konfiqurasiyasında, saxlanılmasında və istifadə olunmasında ümumi mürəkkəbliyi artıracağıq. Buna görə, biz əsasən kompleks Linux istifadəçi torpağını şəkildən çıxarmaq istəyirik. İkinci motivasiya çərçivəsində və əsas platformaların real istifadə üçün kifayət qədər uyğun və sabit olduğunu sübut etməkdir.Sistem quruluş sistemi kimi iş yükünü idarə edə bilmirsə, GNU / Linux kimi mövcud əmtəə əməliyyat sistemləri üzərində mikrokernel bazlı bir sistemə əlavə dəyər haqqında mübahisə etmək çox azdır.
  • Genoz quruluş sistemini bir microkerneldə çalışan Genode üzərinə tətbiq edə biləcəyimiz dövlətə çatdığımız üçün xoşbəxtik. Quruluş sistemi GNU kommunal və GNU kompilyatorları kolleksiyasına əsaslandığından, bu vasitələrlə Genode API arasında yapışqan bir çox səy göstərdi. Genod üzərindəki Bölmə Bina Genotu, hədəf və mövcud vəziyyətin necə əldə edildiyinə dair fikirlər verir.
  • Quruluş sistemini Genotoya gətirməklə yanaşı, yer üzərində bütün sabitlik təkmilləşdirmələri və optimallaşdırılaraq, C işləmə müddəti, fayl sisteminin tətbiqləri, yaddaş ayırıcıları, faktiki proqramlar alət zəncirindən ibarətdir. Qurğunun zəncirindən danışarkən, rəsmi Genod alət zənciri GCC versiyası 4.6.1-dən 4.7.2-ə qədər yeniləndi. Beləliklə, bütün 3-cü tərəf kod paketləri sınaq və təyinat fəaliyyətinə məruz qaldı.
  • Quruluş sistemini idarə etmək üçün layihə hazırda NOVA və Fiasco.OC platformalarına əsaslanır. Ancaq ARM arxitekturası üçün xüsusi çekirdek platformumuz da əhəmiyyətli inkişaflar etmişdir. Freescale i.MX və Texas Instruments OMAP4-ə əlavə dəstəyi ilə, bu platforma yeni SoCs üçün çox yaxşı uyğunlaşdıqlarını sübut etdi, yeni cache işləmələri isə xoşagəlməz performans təkmilləşdirmələri gətirir. Bundan əlavə, biz ARM TrustZone texnologiyası üçün təcrübə dəstəyi əlavə etmişik. Bu əsasən, normal dünyada "Linux" işləyərkən TrustZone adlı təhlükəsiz dünyadakı Genodun icrasına imkan verir.
  • Linux'ta bir ara proqram çözümü olaraq Genode'yi kullanmaya olan artan ilgiyi keşfettikçe, bu çekirdek platforma desteğini büyük ölçüde gözden geçirdik ve Linux çekirdeğinin sağladığı mekanizmalarla Genode konsepti uyğunlaşması üçün inanılmaz yeni yollar keşfettik. Bölmə Linux bu platforma dəstək verən yeni yanaşmaların bir xülasəsini təqdim edir.
  • İşlevsellik baxımından yeni versiya Open Sound Sisteminin audio sürücülərinə, yeni OMAP4 GPIO sürücüsünə, qrafik terminalın təkmilləşdirilməsinə və bir SSH müştərinin başlanğıc limanına dəstək verir.

12.08 versiyasında yeni :

  • Genot 12.08 ilə, layihə platforma dəstəklədi. OMAP4-based ARM platformalarına dünyaya girir, NOVA hipervizorunun dəstəkləndiyini canlandırır və genişləndirir və əsas kernelə ehtiyac olmadan birbaşa ARM platformalarında işləyə bilir.
  • Yeni baza-hw platformu, istifadəçi torpaq infrastrukturu ilə mövcud olan çekirdekleri tamamlamaq üçün Genodun ənənəvi yanaşmasından sapmadır. Ayrı-ayrı çekirdekleri şəkil xaricindən tamamilə tərk edir və bununla Genode-based sistemlərin etibarlı hesablama bazasının əsas xəttini təxminən yarıya qədər azaldır. Yeni əsas platform çıplak ARM donanımında Bölmə Genodunda təsvir edilmişdir.
  • Əsas platformalar haqqında danışarkən, NOVA hipervizorunu əsas platformalar arasında birinci dərəcəli bir vətəndaşa təbliğ etdiyimiz üçün xoşbəxtik. Son aylarda, bu kernel, inkişaf rejimi və xüsusiyyətləri ilə əlaqədar fundamental dəyişikliklərə məruz qalmışdır. Bu, Genodun bu platforma dəstək verməsini və unikal xüsusiyyətlərindən istifadə etmək üçün bizi istədi. Genomun x86 əsaslı hardware üzərində istifadəsini nəzərə alsaq, NOVA çox cəlbedici bir təməl halına gəldi. Bölmə NOVA Hypervisor-nu emal edən NOVA-nın xüsusi dəyişikliklərini təsvir edir.
  • Mövcud sürüşmə ilə platform dəstəkinin yaxşılaşdırılması yalnız əsas platformalara gətirib çıxarmayıb, xüsusilə də məşhur Pandaboard-da istifadə edilən ARM-based OMAP4 SoC üçün qurğu sürücülərinin dərin əlavələrinə qədər uzanır.
    Bu platforma çıxış üçün HDMI çıxışı, SD-kart, USB HID və şəbəkə üçün cihaz sürücülərinin mövcudluğunu elan etməkdən qürur duyuruq.
  • Aşağı səviyyəli platform təkmilləşdirmələri ilə yanaşı, yeni versiya bir neçə yeni xidmətlər, mövcud komponentlərin optimallaşdırılması və yeni portativ kitabxanalar ilə gəlir. Xüsusilə, Noux iş müddəti əsasən Genode üzrə Lynx veb brauzeri kimi ciddi şəbəkə tətbiqlərini həyata keçirə biləcəyimiz bir nöqtəyə çatdı. Digər bir nümunə, yeni FFAT-based fayl sistemi xidmətidir və bu, Genodun fayl sistemi interfeysi vasitəsi ilə davamlı saxlama təmin edir. Bu yeni xidmətin bölmə xidməti, Noux və ya libc fayl sistemi plugin kimi mövcud komponentlərlə birləşməsi ilə bir çox yeni tətbiq ssenariləri mövcuddur. Bu yeni komponentlər sayəsində çərçivə Noux-də çalışan GDB vasitəsilə on-hədəf ayıklama əməliyyatları yerinə yetirmiş və ya lightode web server vasitəsilə genode.org veb saytına malik olmuşdur.

12.02 versiyasında yeni nə :

  • Genode 12.02-nin buraxılması layihənin tarixində həyəcan verici bir nöqtədir, çünki Genode Labs-in kameralarından deyil, açıq şəkildə hazırlanmış ilk versiyasıdır. Beləliklə, biz GitHub-ı müzakirə və mənbə-kod idarə edilməsi üçün mərkəzi qurum kimi qəbul etdik. Bu dəyişiklik, istifadəçilərin və eyni zamanda çərçivənin inkişaf etdiricilərinin faydalarına malikdir. İstifadəçilər üçün ən son inkişafları rəsmi genodelabs / master şöbəsindən istifadə etmək və mövcud tədbirləri müzakirə etməklə məşğul olmaq mümkün olmuşdur. Müntəzəm Genode developers üçün, ictimai Git deposu ictimai Subversion və şirkət daxili Mercurial depolarında köhnə bir qarışığı əvəz edərək həyatın daha asan olmasını təmin edir. Bölmədə inkişaf prosesinin azadlığı, biz bu dəyişikliyin motivasiyasını təsvir edirik və yeni resurslara göstəricilər veririk.
  • Baz sisteminə əsas yeni əlavələr yaddaşda eşlenen I / O resurslarına çıxış üçün yeni bir çərçivə API, Genodu Linux-da istifadəçi səviyyəli komponentlər bazası kimi istifadə etmək üçün xüsusi dəstək və mövcud komponentlərin yenidən istifadə edilməsi üçün API dəstəkidir. sandboxed kitabxanaların forması. Bu dəyişikliklər cihaz sürücüsü idarəçisinin yeni versiyası və yeni ACPI parser kimi yeni cihaz sürücüsü infrastrukturu ilə müşayiət olunur.
  • Xüsusilə, cari azad, 2012-ci il üçün Yol xəritəsinin məqsədi istiqamətində ilk addımları atır və Genodu inkişaf etdiricilər tərəfindən gündəlik istifadə üçün hazır olan ümumi təyinatlı OS-yə çevirir. Yol xəritəsinə əsasən, Noux işləmə müddətini fork semantikası ilə genişləndirdik, beləliklə, müxtəlif növ mikrokernellərdə dəyişilməyən və yerli olaraq bash qabığı və coreutils kimi komuta əsaslı GNU proqramlarını idarə edə bilərik. Bundan əlavə, kitabxana infrastrukturu Qt 4.7.4 və MuPDF PDF göstərilməsi mühərriki kimi kitabxanaların köçürülməsi və yenilənməsi ilə artırılmışdır.

Yeni nə versiyası 11.11:

  • Virtualization Düzeyləri Bir Plethora:
  • Vancouver VMM tərəfindən sadiq sadiq x86 PC Virtualization
  • Android paravirtualized
  • Noux runtime mühitindən istifadə edərək OS səviyyəsində Virtualization
  • tətbiq səviyyəli virtualizasiya yolu ilə GDB ayıklama
  • Əsas çərçivə, aşağı səviyyəli OS infrastrukturu:
  • Istifadəçi səviyyəsində CPU istisnalarını idarə
  • Mövzu vəziyyətinə uzaqdan giriş
  • Təkmilləşdirilmiş siqnalizasiya gecikməsi
  • Böyük yaddaş yaddaşı ölçüsü üçün optimallaşdırma
  • Standart C + + kitabxana
  • Terminal-sessiya interfeysi
  • Dinamik bağlayıcı
  • Kitabxanalar və tətbiqlər:
  • C runtime
  • Vancouver virtual maşın monitoru
  • TCP terminalı
  • Framebuffer-based virtual terminal və ncurses
  • Noux
  • GDB monitoru
  • L4Linux / L4Android:
  • Çekirdek versiyasını 3.0 güncelleyin
  • Çubuq sürücüsü dəstəyi
  • L4Android
  • Qurğu sürücüləri:
  • iPXE şəbəkə sürücüləri üçün qurğu-sürücü mühiti
  • PL110 ekran sürücüsü
  • UART sürücüsü
  • Platform dəstək:
  • NOVA Microhypervisor versiyası 0.4
  • Fiasco.OC mikrokerneli
  • 38 versiyasına yeniləyin
  • Uzaq mövzuları sorgulama ve manipulyasiya
  • Çox yönlü Express Cortex-A9x4
  • Linux
  • UNIX domain sockets əsasında yeni IPC tətbiqi
  • Yerli alt ünvan boşluğunu əl ilə idarə etmək üçün dəstək
  • Hibrid Linux / Genode proqramlarının yaxşılaşdırılması
  • L4ka :: Püstə mikrokerneli
  • Sistem və alətlər yaradın:
  • GCC 4.6.1 əsasında yeni alət zənciri
  • Kitabxana-asılılığın inkişaf mərhələsinin optimallaşdırılması
  • Geliştirilmiş libports və port paketinin işlənməsi

Nə yeni versiyası 11.05:

  • Təhlükəsiz inter-proses əlaqə üçün yeni API
  • Genişləndirilmiş Fiasco.OC platforma dəstəyi
  • Paylaşılan kitabxanalar
  • Sinyal çərçivəsi
  • ARM RealView PBX-A9 dəstəyi
  • x86 64-bit dəstək
  • L4Linux (IA32 və ARM)
  • Yeni eksperimental GDB dəstəyi
  • MicroBlaze platforma qurğu-I / O dəstəyi
  • Giriş, ekran, şəbəkə və sdcard üçün ARM RealView PBX qurğu sürücüləri
  • Qt4, lwIP, Noux, L4Linux, GDB kimi müxtəlif Genod xüsusiyyətlərinin asan test sürüşməsi üçün yeni hazır skriptlər.

Yeni versiya 10.02:

  • Platforma bağlı müxtəlif dəyişikliklər arasında 10.02 versiyası NOVA və Codezero çekirgələri üçün dəstək verir və real vaxt prioritetlərini idarə etmək üçün yeni bir konsepsiya təqdim edir.
  • Bir əvvəlki xüsusiyyət zəngin sərbəst buraxılan Genod layihəsi, çərçivənin əsas platforma dəstəkini genişləndirməyə diqqət yetirmişdir. Genova, artıq 2009-cu ildə ilk dəfə nümayiş olunan NOVA və Codezero adlı iki yeni müasir mikrokernel tərəfindən artıq dəstəklənən kernelləri genişləndirə bildiklərini bildiririk. Beləliklə, Genode birbaşa istifadə olunan səviyyəli infrastrukturu təmin edir ki, Linux (32 bit və 64 bit), OKL4v2 (x86 və ARMv4), L4 / Fiasco və L4ka :: Pistachio. Mikrokernel əsaslı tətbiqlər yaratan developers üçün çərçivə müvafiq kernelin incəliklərini gizlədir. Ancaq həm də istifadəçi üçün əlçatan olan hər bir platformanın nadir imkanlarını yaratmağa çalışır. Məsələn, yeni versiya ilə OKL4 və L4ka :: Püstə Genoyu tətbiqlərinə mövcud olan real vaxt planlaşdırma etdik.

Yeni versiyası 9.05:

  • Proqramlar:
  • Qt4 inteqrasiyası
  • Qt4 əsaslı launchpad
  • OS xidmətləri və sürücüləri:
  • Nitpicker performans tweaks
  • VESA sürücüsü üçün virtuallaşdırılmış PCI avtobusu
  • USB seansı və cihaz interfeysi
  • USB dəstəyi:
  • USB HID sürücüsü
  • UHCI, OHCI və EHCI üçün host nəzarətçi sürücüləri
  • OKL4 yeni platforma
  • 64-bit Linux platforma dəstəyi
  • Base framework refinements

Oxşar proqram

Şərh Genode

Şərhlər tapılmadı
Şərh əlavə
Images yandırın!