A KernelScript 0.1 most már elérhető, mint az első nyilvános kiadása egy új nyílt forráskódú programozási nyelvnek, amely az eBPF-re összpontosító Linux kernel fejlesztéshez készült, az Apache 2.0 licenc alatt közzétéve.
Az kernelScript egy típusbiztos, domain-specifikus nyelv, amely egyesíti az eBPF, a felhasználói tér és a kernel tér fejlesztését egyetlen koherens keretben. Ahelyett, hogy kézzel írnának eBPF programokat C nyelven, felhasználói tér betöltőket és kernel modulokat, az kernelScript generálja a szükséges C kódot, felhasználói tér programokat, Makefile-okat és kernel modul integrációt egyetlen forrásfájlból.
A célcsoportot az eBPF fejlesztők alkotják, amely egy Linux kernel technológia, lehetővé téve, hogy kis, ellenőrzött programok fussanak a kernel kontextusában anélkül, hogy módosítanák a kernel-t. Az eBPF széles körben használatos hálózatkezelésre, nyomkövetésre, megfigyelésre, biztonságra és teljesítmény-elemzésre, de a fejlesztése általában mélyreható ismereteket igényel a verifikáló korlátokkal, BPF segédprogramokkal, térképekkel, programbetöltéssel és libbpf-alapú felhasználói tér koordinációval kapcsolatban.
Az kernelScript ezt a komplexitást egy magasabb szintű szintaxissal kezeli, amely az eBPF munkafolyamatokhoz van optimalizálva. Támogatja a fő eBPF programtípusokat, beleértve az XDP-t csomagfeldolgozásra, a TC-t forgalomirányításra, a probe-okat a kernel függvények nyomkövetésére, és a perf eseményprogramokat a teljesítményszámlálókhoz.
Továbbá, az kernelScript beépített támogatást nyújt az eBPF térképekhez, beleértve a hash térképeket, CPU-specifikus tömböket, LRU térképeket és rögzített térképeket. Ezek nyelvi szintű változókként érhetők el, lehetővé téve az eBPF programok és a felhasználói tér kód számára, hogy megosszák az állapotot anélkül, hogy kézzel kellene libbpf boilerplate-t írniuk.
Az kernelScript emellett támogatja az eBPF fejlett funkcióit, beleértve az automatikus tail call orchestrációt, a transzparens dynptr kezelést, a program életciklus ellenőrzéseket, a struct_ops támogatást és a beépített kfunc integrációt.
Fontos megjegyezni, hogy ez a kiadás kísérleti jellegű. A tároló az kernelScriptet béta szoftverként jelöli, és figyelmeztet, hogy a szintaxis, az API-k és a funkciók változhatnak visszafelé kompatibilitás nélkül. Jelenleg a fejlesztők nem ajánlják a termelési használatot.
További részletekért lásd a projekt GitHub tárolóját.

