Es va donar a conèixer la notícia d'un nou desenvolupament que té com a nom «Projecte Tilck», en el qual un empleat de VMware està desenvolupant un nucli monolític que és fonamentalment diferent de Linux, però dissenyat per ser compatible binàriament amb Linux i capaç d'executar aplicacions creades per a Linux.
el desenvolupament té com a objectiu la implementació de les característiques mínimes requerides, evitar la sobrecàrrega de funcionalitat, arquitectura simple i comprensible, màxima simplificació de codi, mida petita d'arxius binaris, comportament predictible (determinista), assegurant retards mínims, aconseguint alta fiabilitat i simplificant el desenvolupament i processos de prova.
Tilck és fonamentalment diferent de Linux, ja que no apunta a servidors multiusuari ni màquines descriptori, en absolut perquè això no tindria sentit: Linux no és gran i complex a causa duna implementació deficient , sinó a la increïble quantitat de característiques que té. ofereix i la complexitat intrínseca que requereixen. En altres paraules, Linux és genial atès el problema que resol. Tilck oferirà menys funcions a canvi de:
codi més simple (per molt)
mida binària més petita
comportament extremadament determinista
latència ultrabaixa
desenvolupament i proves més fàcils
robustesa addicional
El Projecte no pretén ser utilitzat en entorns de servidor multiusuari o sistemes descriptori. Dels sistemes de fitxers, FAT16 i FAT32 són compatibles en mode de lectura, així com ramfs, devfs i sysfs. Els dispositius de blocs encara no s'han implementat; tot és a la memòria.
Es proporciona VFS per abstreure les operacions de FS. Els subprocessos múltiples a l'etapa actual de desenvolupament només estan disponibles a nivell de kernel (encara no es proporcionen a l'espai de l'usuari).
El kernel admet la multitasca preventiva i implementa unes 100 trucades bàsiques al sistema Linux, com fork(), waitpid(), read(), write(), select() i poll(), que són suficients per executar aplicacions de consola com BusyBox, Vim, TinyCC, Micropython i Lua, així com aplicacions gràfiques basades en framebuffer com el joc fbDOOM. Per crear programes per a Tilck, s'ofereix un conjunt d'eines basat a la biblioteca Musl.
S'esmenta que el conjunt de controladors proposat permet executar Tilck tant a l'entorn QEMU com en sistemes convencionals arrencant des d'una unitat USB. A més, també es destaca que hi ha suport per a conjunts d'instruccions esteses SSE, AVX i AVX2. Ofereix el vostre propi carregador d'arrencada interactiva que admet sistemes amb BIOS i UEFI, però també és possible utilitzar carregadors d'arrencada de tercers com GRUB2. Quan es carrega a QEMU, el nucli es pot executar en un entorn amb 3 MB de RAM.
Actualment, el projecte es posiciona com un projecte educatiu, però a llarg termini és possible que Tilck creixi a un nivell adequat per al seu ús com a kernel per a sistemes integrats que requereixen un comportament predictible i baixa latència.
Si bé Tilck utilitza internament el concepte de subprocés, els subprocessos múltiples no estan actualment exposats a l'espai d'usuari (els subprocessos del nucli existeixen, és clar). Tots dos fork() i vfork() estan implementats correctament i la còpia en escriptura es fa servir per a processos bifurcats. La waitpid() anomenada al sistema està completament implementada (la qual cosa implica grups de processos, etc.).
Una característica interessant en aquesta àrea mereix una menció especial: malgrat la manca de subprocessos múltiples a l'espai d'usuari, Tilck té suport complet per a TLS
S'espera que Tilck ompliu el buit entre les solucions basades en el kernel de Linux i els sistemes operatius dedicats en temps real, com FreeRTOS i Zephyr. Els plans inclouen la migració de Tilck a ARM i processadors que no siguin unitats d'administració de memòria (MMU), l'addició d'un subsistema de xarxa, suport per a dispositius de bloc i sistemes de fitxers addicionals com a ext2.
El codi està escrit a C i es distribueix sota la llicència BSD. A l'etapa actual de desenvolupament, el nucli només admet l'arquitectura x86, però el codi està dissenyat tenint en compte la universalitat i la implementació del suport futur per a altres arquitectures.
Finalment si estàs interessat a poder conèixer més sobre això, Pots consultar els detalls en el següent enllaç.