# farvm **Repository Path**: ffos/farvm ## Basic Information - **Project Name**: farvm - **Description**: 玩转JVM系列之farvm项目,该项目参考JVM以及实现了部分JVM规范,未来将支持运行ts,js,far,java等高级语言 - **Primary Language**: C++ - **License**: GPL-3.0 - **Default Branch**: test2x - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2021-02-01 - **Last Updated**: 2021-02-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## farvm #### 项目介绍 玩转JVM系列之《farvm》项目,该项目参考JVM以及实现了部分JVM规范,未来将支持运行ts,js,far,java等高级语言。 - 目的: > 纸上得来终觉浅,绝知此事要躬行。该项目是大家绝佳造轮子机会,如果你想学习JVM的一些原理,完全可以参与该项目的开发。 - 应用场景 > 为WEB应用开发、桌面软件、游戏开发、运维人员、操作系统内核调试开发提供基础服务。 #### 团队 Mike Q184377367 期待你的加入! Q群:863823038 没兴趣参与的小伙伴勿入! #### 目标 ##### 第一阶段 基础框架和数据类型构建 - 解析class文件 - 实现类加载 - 实现栈帧 - 实现解释器 - 数据类型构建 - 数据类型原型 - 对象原型 - Klass设计 ##### 第二阶段 内存管理 - 内存模型设计 - 内存基础管理 分配内存 - GC 回收内存 ##### 第三阶段 指令设计和栈帧 - 指令设计和解释 ##### 第四阶段 多线程 - 多线程模型设计 - 内存多线程支持 ##### 已实现 - 简单的内存管理和分配 - 基础的内置类型FString、FDict - 简单对象的回收 - GC Roots的基础绑定 - 标记回收GC算法 #### 参与贡献 0. 选择擅长的分组[分组列表](https://gitee.com/grateful/farvm/wikis/%E6%93%85%E9%95%BF%E5%88%86%E7%BB%84?sort_id=3481509) 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request ##### 开发规范 [规范文档](https://gitee.com/grateful/farvm/wikis/%E5%BC%80%E5%8F%91%E8%A7%84%E8%8C%83?sort_id=3481374)