39 lines
2.5 KiB
Markdown
39 lines
2.5 KiB
Markdown
# Endor / Aster VM
|
||
|
||
Rust 编写的 Endor 虚拟机实现。当前具备 EndorObject、稳定对象分配、代际句柄、引用计数、显式循环回收,以及可执行语言函数的小型 wordcode VM。数字统一为无损表示优先的 Number。
|
||
|
||
VM 从空堆启动;尚无源码 lexer/parser、Python type/元类体系、数值算术或完整异常传播。宿主数据库保存元数据,不保存 VM 堆。当前边界见 [系统架构](docs/architecture/README.md)。
|
||
|
||
## 从哪里读
|
||
|
||
| 要做的事 | 入口 |
|
||
| --- | --- |
|
||
| 查一个功能、设计或代码位置 | [文档总索引](docs/README.md) |
|
||
| 看源码目录与 crate 边界 | [crates](crates/README.md) |
|
||
| 看指令、代码对象、执行帧和执行循环 | [字节码 VM](docs/runtime/bytecode.md) |
|
||
| 看 VM/帧/对象如何存活和销毁 | [生命周期](docs/runtime/lifecycle.md) |
|
||
| 看配置、UTF-8 与 locale 边界 | [配置](docs/operations/configuration.md) |
|
||
| 运行 CLI/HTTP 宿主 | [运行指南](docs/operations/README.md) |
|
||
| 看 ces-control CI 与 PostgreSQL 部署 | [部署](docs/operations/deployment.md) |
|
||
| 修改代码并同步文档 | [开发与文档维护](docs/contributing/README.md) |
|
||
|
||
## 根目录内容
|
||
|
||
| 文件或目录 | 职责 |
|
||
| --- | --- |
|
||
| Cargo.toml / Cargo.lock | 工作区、包依赖、Rust 版本要求及依赖锁定;目录名无 aster- 前缀,包名保留 |
|
||
| crates/ | core、storage、cli、server 四个包,每个目录的 README 解释本目录 |
|
||
| docs/ | 跨目录的架构、运行时契约、配置、运行、部署与维护说明 |
|
||
| scripts/ | 指定远端环境中的检查、冒烟、CI 与部署脚本 |
|
||
| .gitea/ | Gitea Actions 工作流 |
|
||
| Dockerfile | source、ci、build、runtime 多阶段镜像 |
|
||
| docker-compose.yml | 独立 SQLite 运行方案 |
|
||
| docker-compose.postgres.yml | 独立 PostgreSQL 运行方案 |
|
||
| docker-compose.ces-control.yml | ces-control 正式 PostgreSQL 部署 |
|
||
| .env.example / .gitignore / .dockerignore | 配置样例、Git 与 Docker 上下文排除规则 |
|
||
| LICENSE | MIT 许可 |
|
||
|
||
本地不编译、不测试、不下载依赖;可做文档和静态文件检查。运行验证交给 ces-control;按用户约定不主动跟踪 CI/部署结果。命令和使用条件见 [验证](docs/operations/validation.md)。
|
||
|
||
文档随代码版本更新:就地解释放各目录 README,跨目录契约放 docs,对外阅读副本以仓库文档为准。忽略的 work、outputs、target、data 和 Git 内部目录不属于需要维护 README 的源码目录。
|