SQLite 是一个独立的系统
SQLite 是“独立的”或“独立的”,因为它几乎没有依赖性。它可以在任何操作系统上运行,甚至是精简的准系统嵌入式操作系统。SQLite 不使用外部库或接口(除了下面描述的一些标准 C 库调用)。整个 SQLite 库被封装在一个源代码文件中,不需要特殊的设施或工具来构建。
SQLite 的最小构建只需要标准 C 库中的这些例程:
- memcmp()
- memcpy()
- memmove()
- memset()
- strcmp()
- strlen()
- strncmp()
大多数构建还使用系统内存分配例程:
- malloc()
- realloc()
- free()
但是这些例程是可选的,可以使用编译时选项省略。
SQLite 的默认构建包含用于与底层操作系统对话的适当VFS 对象,这些 VFS 对象将包含操作系统调用,例如 open()、read()、write()、fsync() 等。所有这些接口在大多数平台上都很容易获得,并且可以设计自定义 VFS 以在即使是最简陋的嵌入式设备上运行 SQLite。