💬 观点Simon Willison
Your executable is a SQLite database — 把 SQLite 数据库文件直接当可执行程序运行,一个 Linux 上的巧妙技巧
把 SQLite 数据库文件直接当可执行程序运行,一个 Linux 上的巧妙技巧。
2026-08-24原文
本文为要点摘要,完整细节以原文为准。
- Farid Zakaria 提出利用 SQLite 文件格式中的 4 字节应用 ID(偏移 68 字节)设为
SELF,将 ELF 可执行文件的各组件存入 SQLite 表,实现“数据库即可执行文件”。 - 通过
binfmt_misc机制,内核可识别该模式并调用解释器执行,无需 NixOS 也能注册,如写入/proc/sys/fs/binfmt_misc/register。 - 对开发者而言,这展示了文件格式的灵活性和系统扩展性,启发将数据与代码融合的新思路,但需注意安全性和兼容性。
原文:Your executable is a SQLite database · 作者 Simon Willison