• KernelScript 0.1: nytt språk vill göra eBPF enklare för Linuxutvecklare

    KernelScript 0.1 är ett nytt experimentellt programmeringsspråk som vill göra avancerad Linuxutveckling enklare. Genom att samla eBPF-program, användarprogram och kernelintegration i en och samma kodbas kan utvecklare slippa mycket av den manuella C-kod och libbpf-hantering som annars krävs. Resultatet är ett lovande, men ännu omoget, verktyg för den som vill arbeta närmare Linuxkärnan utan att fastna i all teknisk kringkod.

    Att skriva program som kör nära Linuxkärnan är kraftfullt – men också svårt. Med eBPF kan utvecklare skapa små program som körs i kernelmiljö utan att själva Linuxkärnan behöver byggas om. Tekniken används redan i dag för allt från nätverksfiltrering och prestandamätning till säkerhet, felsökning och övervakning av system.

    Nu har den första publika versionen av KernelScript 0.1 släppts. Det är ett nytt öppet programmeringsspråk som vill göra utveckling med eBPF mer lättillgänglig, säkrare och mindre beroende av stora mängder handskriven stödkod.

    Ett språk för flera världar

    Traditionellt kräver eBPF-utveckling ofta att man skriver flera olika delar separat. Själva eBPF-programmet skrivs ofta i C. Sedan behövs kod i användarrymden för att ladda programmet, hantera kartor, läsa data och kommunicera med kärnan. I vissa fall krävs även integration med kernelmoduler och särskilda byggfiler.

    KernelScript försöker samla detta i en enda källkod. Utvecklaren skriver programmet i KernelScripts eget språk, och verktyget genererar därefter den C-kod, de användarprogram, Makefiles och integrationsdelar som behövs.

    Tanken är alltså inte att ersätta Linuxkärnan eller eBPF, utan att lägga ett högre och mer lättanvänt lager ovanpå.

    Varför eBPF är kraftfullt – men svårt

    eBPF har blivit en av de mest intressanta teknikerna i moderna Linuxsystem. Den gör det möjligt att köra små verifierade program i kärnan, till exempel för att analysera nätverkspaket, mäta systemanrop eller samla in prestandadata.

    Men tekniken har en hög tröskel. Den som skriver eBPF-program måste förstå hur Linux verifierar programmen innan de får köras, vilka hjälpfunktioner som är tillåtna, hur minne får användas och hur eBPF-kartor fungerar. Dessutom krävs ofta kunskap om libbpf och hur användarrymd och kernelkod samverkar.

    KernelScript försöker minska den komplexiteten genom att erbjuda ett mer specialiserat språk, anpassat just för eBPF-flöden.

    Stöd för vanliga eBPF-program

    I den första versionen finns stöd för flera viktiga typer av eBPF-program. Det omfattar bland annat XDP, som används för snabb paketbehandling mycket tidigt i nätverksstacken, och TC, som används för trafikstyrning.

    Språket har också stöd för olika typer av probes, alltså program som kan kopplas till funktioner i kärnan för spårning och felsökning. Dessutom finns stöd för perf event-program, som används vid prestandamätning.

    Det gör KernelScript intressant för utvecklare som arbetar med nätverk, observability, felsökning, säkerhet eller låg nivå-prestanda i Linuxmiljöer.

    eBPF-kartor som vanliga variabler

    En central del av eBPF är så kallade maps, eller kartor. De fungerar som datastrukturer där eBPF-program kan spara och dela information. De kan exempelvis användas för räknare, statistik, tillståndstabeller eller kommunikation mellan kernelprogram och användarprogram.

    KernelScript gör dessa kartor till en del av språket. Det finns stöd för bland annat hash maps, per-CPU arrays, LRU maps och pinned maps. Genom att behandla dem som språkvariabler slipper utvecklaren en del av den vanliga libbpf-koden som annars krävs.

    Det kan göra enklare eBPF-projekt både kortare och lättare att förstå.

    Avancerade funktioner redan från början

    Trots att KernelScript 0.1 är en tidig version innehåller den stöd för flera avancerade eBPF-funktioner. Bland annat nämns automatisk hantering av tail calls, enklare dynptr-hantering, kontroll av programlivscykel, struct_ops och inbyggd integration med kfuncs.

    För den som redan arbetar med avancerad eBPF-utveckling kan detta vara särskilt intressant. Det visar att KernelScript inte bara är tänkt som ett pedagogiskt förenklingslager, utan som ett försök att bygga ett mer komplett utvecklingsverktyg för Linuxnära programmering.

    Inte redo för produktion

    Samtidigt är det viktigt att betona att KernelScript fortfarande är experimentellt. Projektet beskrivs som beta, och utvecklarna varnar för att syntax, API:er och funktioner kan ändras utan bakåtkompatibilitet.

    Det betyder att KernelScript i nuläget främst bör ses som något för testning, utvärdering och experiment. För produktionssystem är det fortfarande säkrare att använda etablerade verktyg och arbetsflöden kring eBPF, C och libbpf.

    Ett tecken på vart Linuxutveckling är på väg

    KernelScript 0.1 visar ändå en tydlig trend. eBPF har blivit så viktigt att det nu växer fram nya språk och verktyg som försöker göra tekniken mer tillgänglig. På samma sätt som högnivåspråk en gång gjorde vanlig systemutveckling enklare, försöker KernelScript göra kernel-nära programmering mer strukturerad och mindre felbenägen.

    Om projektet lyckas återstår att se. Men idén är intressant: ett enda språk som kan beskriva logiken för eBPF, användarrymd och kernelintegration på samma gång.

    För Linuxutvecklare som vill följa framtidens systemprogrammering är KernelScript därför ett projekt att hålla ögonen på – även om det än så länge hör hemma i labbmiljö snarare än i skarpa driftsystem.

    https://github.com/multikernel/kernelscript

    Teknisk faktaruta: KernelScript 0.1

    Typ: Experimentellt programmeringsspråk och DSL för Linuxutveckling.

    Fokus: eBPF, användarprogram och kernelintegration från en gemensam kodbas.

    Licens: Apache 2.0.

    Syfte: Att minska behovet av handskriven C-kod, libbpf-boilerplate, Makefiles och separat användarrymdskod vid eBPF-utveckling.

    Stöd: XDP, TC, probes, perf events, eBPF maps, tail calls, dynptr, struct_ops och kfunc-integration.

    Status: Beta/experimentell. Rekommenderas ännu inte för produktion.

  • AlmaLinux öppnar för 32-bitarsstöd i Kitten 10

    AlmaLinux har lagt till stöd för i686-användarmiljö i AlmaLinux OS Kitten 10. Det innebär att projektet nu erbjuder både 32-bitars paketförråd för x86 och officiella containerbilder för linux/386 — men utan att återinföra ett fullskaligt 32-bitars operativsystem.

    Det nya stödet gäller enbart användarrumsprogramvara och containrar. Någon installations-ISO för i686 finns inte, vilket betyder att AlmaLinux inte erbjuder en komplett 32-bitarsinstallation av systemet.

    Satsningen är främst riktad till verksamheter och utvecklare som fortfarande är beroende av 32-bitarskomponenter. Enligt AlmaLinux finns det fortfarande programvara som endast distribueras som i686, CI-miljöer som kräver en specifik 32-bitars glibc, samt containerarbetsflöden där en underhållen distributionsbas för linux/386 behövs.

    Projektet pekar också på att efterfrågan kommer från leverantörshåll. Nätverksföretaget Arista, som flyttat sin EOS-miljö från CentOS 7 till AlmaLinux 9, är ett exempel där verktygskedjan är beroende av att i686-paket finns tillgängliga parallellt med x86_64-paket.

    Begränsad påverkan för vanliga användare

    För användare som kör traditionella 64-bitarsinstallationer av AlmaLinux väntas förändringen få liten eller ingen praktisk betydelse. För företag, leverantörer och utvecklare med äldre 32-bitarsberoenden innebär stödet däremot en möjlighet att fortsätta använda AlmaLinux 10 utan att projektet behöver återgå till ett komplett 32-bitarsoperativsystem.

    Paketförråden görs tillgängliga via Kitten-valvet under 10-kitten-trädet, bland annat i sökvägar som 10-kitten/BaseOS/i686/os/ och närliggande arkiv för samma utgåva.

    Samtidigt har AlmaLinux publicerat en officiell 32-bitars containerbild. Den kan köras med kommandot:

    docker run -it --rm --platform linux/386 almalinux:10-kitten bash
    

    Samma modell planeras för stabila AlmaLinux 10

    AlmaLinux uppger också att samma modell ska införas i den stabila versionen av AlmaLinux 10. Det innebär att även den ordinarie utgåvan ska få i686-paketförråd och officiella containerbilder för 32-bitars x86.

    Enligt projektet kommer AlmaLinux 10 att supportas fram till 2035, och i686-användarmiljön ska underhållas under hela livscykeln, sida vid sida med övriga stödda arkitekturer.

    Det markerar en ovanlig men tydlig kompromiss: fullt stöd för äldre 32-bitarsarbetslaster i användarutrymmet, utan att återinföra ett komplett 32-bitarsoperativsystem.

    https://almalinux.org/blog/2026-04-16-almalinux-kitten-10-i686

    Teknisk faktaruta: AlmaLinux OS Kitten 10 i686

    Status: i686 userspace-stöd tillagt

    Arkitektur: 32-bitars x86 (i686)

    Omfattning: Paketförråd och officiella linux/386-containerbilder

    Installer ISO: Nej

    Full 32-bitarsinstallation: Stöds inte

    Användningsområde: Legacy-programvara, CI-miljöer, 32-bitars glibc, linux/386-containrar

    Repository: 10-kitten/BaseOS/i686/os/

    Container: almalinux:10-kitten

    Docker-kommando:

    docker run -it --rm --platform linux/386 almalinux:10-kitten bash
      

    Plan framåt: Samma i686 userspace-modell planeras för AlmaLinux 10 stable

    Supportperiod: AlmaLinux 10 väntas stödjas till 2035

Etikett: userspace

  • KernelScript 0.1: nytt språk vill göra eBPF enklare för Linuxutvecklare

    KernelScript 0.1 är ett nytt experimentellt programmeringsspråk som vill göra avancerad Linuxutveckling enklare. Genom att samla eBPF-program, användarprogram och kernelintegration i en och samma kodbas kan utvecklare slippa mycket av den manuella C-kod och libbpf-hantering som annars krävs. Resultatet är ett lovande, men ännu omoget, verktyg för den som vill arbeta närmare Linuxkärnan utan att…

  • AlmaLinux öppnar för 32-bitarsstöd i Kitten 10

    AlmaLinux har lagt till stöd för i686-användarmiljö i AlmaLinux OS Kitten 10. Det innebär att projektet nu erbjuder både 32-bitars paketförråd för x86 och officiella containerbilder för linux/386 — men utan att återinföra ett fullskaligt 32-bitars operativsystem. Det nya stödet gäller enbart användarrumsprogramvara och containrar. Någon installations-ISO för i686 finns inte, vilket betyder att AlmaLinux…