本周热门 · 2026-08-24#19
fzakaria/selfdb
Python40593 issues
创建于 2026-08-23最近推送 2026-08-25
项目说明
selfdb
SELF — the Structured Executable & Linkable Format: a program that is a SQLite database instead of an ELF file, and the machinery to actually run it on Linux/NixOS.
sqlelf (arXiv:2405.03883)
put a SQL view over ELF. This project inverts it: the rows are the format,
a binfmt_misc interpreter executes them, and nixpkgs/NixOS is the vehicle to
run a real slice of a system on it.
$ file hello
hello: SQLite 3.x database, application id 0x53454c46, user version 1
$ ./hello
Hello, world!
$ sqlite3 hello 'SELECT soname FROM ldd' # ldd, as a query
$ sqlite3 hello 'DELETE FROM sections; VACUUM' # strip, as a transaction
$ ./hello # still runs
Hello, world!
What's here
converter/—elf2self,self2elf, and theselfCLI (Python + LIEF).loader/—self-exec, the binfmt interpreter, with three modes:memfd(rebuild ELF → ), (map segments + hand off to ld.so), (be the dynamic linker, bind via SQL). Plus , an library that makes load shared libraries resolved through SQL.
