eBPF ile Linux çekirdeğinde, yama yapmadan DOOM çalıştı
BPF Capsule projesi, standart Linux eBPF doğrulayıcısı ve JIT'i ile hiç çekirdek yaması olmadan DOOM'u çekirdek içinde çalıştırmayı başarıyor.
BPF Capsule adlı proje, standart Linux çekirdeğinin eBPF doğrulayıcısını ve JIT'ini hiç değiştirmeden DOOM gibi karmaşık C programlarını çekirdek içinde çalıştırmayı başarıyor. Oyun döngüsünün tamamı—başlatma, oyun mantığı ve render—tek bir BPF çağrısında tamamlanıyor; kullanıcı alanı sadece WAD dosyasını ve klavye girdisini veriyor, karşılığında bitmiş framebuffer'a bir işaretçi alıyor.
eBPF doğrulayıcısı, her programın bellek erişiminin güvenli ve her döngünün sonlu olduğunu kanıtlamayı zorunlu kılar: 512 baytlık yığın, beş argüman yazmacı, döngüsüz çağrı grafiği ve yaklaşık bir milyon komutluk analiz bütçesi gibi katı kısıtlar var. İşaretçiler bir haritada saklanıp sonradan yüklendiğinde doğrulayıcı bunların kökenini kaybediyor; LLVM optimizasyonu bile aynı mantığı doğrulayıcının anlayamayacağı bir forma dönüştürebiliyor. Yazar bu engeli aşmak için önce kullanıcı alanında sanal bir makinede (uBPF) doğrulayıcısız test etti, sonra el ile sadeleştirilmiş kod, ardından eBPF içinde bir yorumlayıcı, son olarak da "bölge ve fiber" tabanlı bir yazılım yığını yaklaşımı geliştirdi.
Aynı teknik bugün Lua, QuickJS, SQLite, zlib, wasm3, llama2.c ve CPython 3.14 gibi programları da çekirdek içinde çalıştırıyor; Lua ve Python XDP üzerinden canlı paketleri inceleyebiliyor. Bu, karmaşık C/C++/Rust mantığını elle basitleştirmeden eBPF'e taşımanın genel bir yolunu gösteriyor ve paket işleme, gözlemlenebilirlik gibi çekirdek içi uygulamalar için önemli bir emsal oluşturuyor.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz