Tilck Projesi, Linux ile uyumlu basitleştirilmiş bir çekirdek

kene

Tilck, ikili düzeyde Linux ile uyumlu olacak şekilde tasarlanmış bir eğitim monolitik x86 çekirdeğidir.

Bir haber yayınlandı «Project Tilck» adını taşıyan yeni gelişme, bir VMware çalışanının geliştirdiği temelde Linux'tan farklı, ancak uyumlu olacak şekilde tasarlanmış yekpare bir çekirdek Linux ile ikili ve Linux için oluşturulmuş uygulamaları çalıştırabilir.

Gelişme gereken minimum özellikleri uygulamayı amaçlar, aşırı işlevsellikten kaçınma, basit ve anlaşılır mimari, maksimum kod basitleştirme, küçük boyutlu ikili dosyalar, öngörülebilir (deterministik) davranış, minimum gecikme sağlama, yüksek güvenilirlik elde etme ve geliştirme ve test süreçlerini basitleştirme.

Tilck, çok kullanıcılı sunucuları veya masaüstü bilgisayarları hedeflemediği için temelde Linux'tan farklıdır, bunun bir anlamı olmayacağı için değil: Linux, kötü uygulama nedeniyle büyük ve karmaşık değil, inanılmaz sayı nedeniyle. sahip olduğu özelliklerdendir. teklifler ve ihtiyaç duydukları içsel karmaşıklık. Başka bir deyişle, çözdüğü problem düşünüldüğünde Linux harikadır. Tilck karşılığında daha az özellik sunacak:

daha basit kod (farklı olarak)
en küçük ikili boyut
son derece deterministik davranış
ultra düşük gecikme
daha kolay geliştirme ve test etme
ek sağlamlık

proje çok kullanıcılı sunucu ortamlarında kullanım için tasarlanmamıştır veya masaüstü sistemler. Dosya sistemlerinden FAT16 ve FAT32, ramfs, devfs ve sysfs gibi okuma modunda desteklenir. Blok cihazları henüz uygulanmadı; her şey hafızada.

FS'nin işlemlerini soyutlamak için VFS sağlanmıştır. Mevcut geliştirme aşamasında çoklu kullanım yalnızca çekirdek düzeyinde mevcuttur (henüz kullanıcı alanında sağlanmamıştır).

Çekirdek, önleyici çoklu görevi destekler ve yaklaşık 100 temel çağrı gerçekleştirir. BusyBox, Vim, TinyCC, Micropython ve Lua gibi konsol uygulamalarını çalıştırmak için yeterli olan fork(), waitpid(), read(), write(), select() ve poll() gibi Linux sistemine, yanı sıra fbDOOM oyunu gibi çerçeve arabelleği tabanlı grafik uygulamaları. Tilck için programlar oluşturmak için Musl kitaplığına dayalı bir dizi araç sağlanır.

Bundan bahsediliyor önerilen sürücü seti, Tilck'in hem QEMU ortamında çalıştırılmasına izin verir bir USB sürücüden önyükleme yapan geleneksel sistemlerde olduğu gibi. Bunun yanı sıra SSE, AVX ve AVX2 genişletilmiş komut setleri için de desteğin bulunduğuna dikkat çekiliyor. BIOS ve UEFI sistemlerini destekleyen kendi etkileşimli önyükleyicisini sunar, ancak GRUB2 gibi üçüncü taraf önyükleyicileri kullanmak da mümkündür. Çekirdek, QEMU'ya yüklendiğinde 3 MB RAM'e sahip bir ortamda çalışabilir.

Şu anda, proje bir eğitim projesi olarak konumlandırılmıştır, ancak uzun vadede Tilck'in öngörülebilir davranış ve düşük gecikme süresi gerektiren gömülü sistemler için bir çekirdek olarak kullanılmaya uygun bir düzeye büyümesi mümkündür.

Tilck dahili olarak bir iş parçacığı kavramını kullanırken, çoklu iş parçacığı şu anda kullanıcı alanına açık değildir (elbette çekirdek iş parçacıkları mevcuttur). Hem fork() hem de vfork() doğru bir şekilde uygulanır ve çatallı işlemler için yazma sırasında kopya kullanılır. waitpid() sistem çağrısı tam olarak uygulandı (bu, işlem grupları vb. anlamına gelir).

Bu alandaki ilginç bir özellik özel olarak anılmayı hak ediyor: kullanıcı alanı çoklu kullanım eksikliğine rağmen Tilck, TLS için tam desteğe sahiptir.

Bu bekleniyor kene Linux çekirdeği tabanlı çözümler ile özel gerçek zamanlı işletim sistemleri arasındaki boşluğu doldurmak, FreeRTOS ve Zephyr gibi. Planlar, Tilck'i ARM'ye ve Bellek Yönetim Birimi (MMU) olmayan işlemcilere taşımayı, bir ağ alt sistemi eklemeyi, blok cihazlar için desteği ve ext2 gibi ek dosya sistemlerini içerir.

Kod C dilinde yazılmıştır ve BSD lisansı altında dağıtılmaktadır. Mevcut geliştirme aşamasında, çekirdek yalnızca x86 mimarisini destekler, ancak kod, diğer mimariler için gelecekteki destek için evrensellik ve uygulama göz önünde bulundurularak tasarlanmıştır.

sonunda sen varsan onun hakkında daha fazla bilgi edinmekle ilgileniyorayrıntıları kontrol edebilirsiniz Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.