Gli sviluppatori di FreeBSD hanno pubblicato un rapporto sullo sviluppo per il quarto trimestre del 2024, in cui viene menzionato il progetto bsd-user-4-linux, che sviluppa strumenti per eseguire in Linux applicazioni compilate per FreeBSD. L'obiettivo del progetto è raggiungere la possibilità di una compilazione autonoma, utilizzando gli strumenti di FreeBSD in Linux, e anche la possibilità di compilare pacchetti per FreeBSD in Linux, utilizzando l'ambiente di compilazione nativo di FreeBSD.
Per eseguire i file eseguibili di FreeBSD è stato utilizzato un fork dell'emulatore QEMU, che opera in modalità di emulazione user mode, progettato per eseguire processi compilati per altre CPU e sistemi operativi. In questa modalità, QEMU esegue la traduzione delle chiamate di sistema e la gestione dei segnali. Per eseguire le applicazioni è necessario il deployment di librerie e impostazioni dal sistema di base FreeBSD in una directory locale. Il progetto può essere considerato un equivalente inverso di BSDlator - Linuxulator.
Nella fase attuale dello sviluppo, sono in esecuzione le principali utilità di sistema (sh, bash, find, grep, git, clang, ecc.), è supportato il linking dinamico e le librerie condivise, e sono disponibili le funzioni di rete. Ad esempio, è già possibile ricompilare FreeBSD con il comando "make -j80 buildworld" mentre ci si trova in Linux. Tra le funzionalità mancanti, si segnala l'impossibilità di eseguire il debugger GDB, la mancanza di IPC, delle funzioni kevent/kqueue e di alcuni sysctl (ad esempio, name2oid).
In aggiunta, il progetto si occupa della preparazione di immagini di container con l'ambiente di lavoro FreeBSD per diverse architetture (linux/386, linux/amd64, linux/arm/v5 e linux/arm64/v8) e della fornitura di GitHub Actions per la creazione di tali immagini.
Altri eventi dal rapporto trimestrale di FreeBSD includono:
- L'utilità mdo per eseguire comandi come un altro utente, simile all'utilità su, ma che utilizza al posto di setuid il modulo del kernel mac_do e la chiamata di sistema setcred.
- Sviluppo del driver AMD IOMMU per FreeBSD.
- Progetto per migliorare le prestazioni di FreeBSD sui laptop.
- Progetto di modernizzazione dell'infrastruttura.
- Lavoro di supporto per le modalità a basso consumo S0ix e s2idle (Suspend-To-Idle).
- Miglioramento del funzionamento della piattaforma OpenStack su FreeBSD.
- Miglioramento dello stack audio di FreeBSD.
- Miglioramento del funzionamento di OpenJDK su FreeBSD.
- Modernizzazione del gestore pacchetti pkg per il progetto PkgBase (formattazione dei componenti del sistema di base in un formato idoneo per la gestione e l'aggiornamento tramite il gestore pacchetti pkg).
- Ripristino del lavoro sul driver umb per modem MBIM USB 4G/5G.
- Porting del driver iwx da OpenBSD per chip Wi-Fi Intel.
- Continuazione del lavoro sull'interfaccia LinuxKPI per l'esecuzione di driver Linux su chip wireless.
- Il numero di porte è diminuito da 36504 a 36332. Le porte sono state aggiornate a Xfce 4.20, LXQt 2.1.0, PHP 8.3, KDE Plasma 6.2.4, Qt 6.8.1, Python 3.9.21 Python 3.11.11, Ruby 3.3.6, Rust 1.83.0, SDL 3.1.6, Sway 1.10, Tor Browser 14.0.3.
- È stata effettuata un'audit della sicurezza del codice delle sottosistemi bhyve e Capsicum.
- Collaborando con Framework, si sta lavorando al supporto dei laptop Framework in FreeBSD (già dichiarato supportato il Framework Laptop 13 basato su AMD Ryzen 7040).
- Si sta lavorando per aggiungere nel programma di installazione modalità di recupero e aggiornamento del sistema, oltre alla possibilità di installare pacchetti in ambienti Live.
- Continua il porting di FreeBSD su smartphone Pinephone Pro.
- Si stanno sviluppando gli strumenti AppJail, Director e LittleJet per la gestione di contenitori compatibili con OCI in FreeBSD, utilizzando il meccanismo di isolamento jail di FreeBSD.
- Si sta sviluppando lo strumento Pot per la gestione di contenitori basati su ambienti jail, ZFS, pf e rctl, che supporta l'integrazione con la piattaforma di orchestrazione di contenitori nomad. Viene offerto un catalogo di immagini di contenitori Potluck, equivalente a Dockerhub per FreeBSD.
- È in fase di sviluppo un'interfaccia grafica per la gestione del sistema di virtualizzazione basato su hypervisor Bhyve. Per lo sviluppo, si utilizza Freepascal/Lazarus.
Fonte: opennet.ru
