Skip to content

Document VM Class Manager - Value 5 #75

@LSantha

Description

@LSantha

VM Class Manager

Document the VM Class Manager JNode concept in the wiki.

Value: 5

Concept Summary

Class management system with type loading, field layout. VM Class Manager provides the foundation for JNode's type system, managing class loading, type representation, and field organization.

Key Files

  • core/src/core/org/jnode/vm/classmgr/VmTypeManager.java
  • core/src/core/org/jnode/vm/classmgr/VmClassManager.java

Occurrences

~200 references in classmgr package

Wiki Status

NOT documented

Bridges

Type system, Classloader, JIT compiler

Instructions

Skill to Use

Use the [[update-wiki|update-wiki skill]] (load with skill({ name: "update-wiki" })) for understanding JNode internals.

Context Research

Review VmTypeManager.java and VmClassManager.java to understand the class management system. Study how classes are loaded, how types are represented, and how fields are laid out in memory. Research the relationship between VM classes and Java classes.

Update index.md

  • Pages table: Add entry for VM-Class-Manager.md
  • Concepts → Pages table: Add "VM Class Manager" mapping to [[VM-Class-Manager]]
  • Source Path → Pages table: Add mappings for core/src/core/org/jnode/vm/classmgr/
  • Task Routing table: Add relevant task route(s)

Task Routing Suggestions

  1. Class loading issues: VM Class Manager is central to class loading
  2. Type system debugging: Understanding type representation is key
  3. JIT compilation: Class layout affects JIT code generation

Wiki Page Structure

# VM Class Manager

> Class management system with type loading, field layout.

## Overview
2-3 paragraph explanation of VM Class Manager, its role in the type system, and how it manages classes and types.

## Key Components
| Class / File | Role |
|---|---|
| `core/src/core/org/jnode/vm/classmgr/VmTypeManager.java` | Type management |
| `core/src/core/org/jnode/vm/classmgr/VmClassManager.java` | Class management |

## How It Works
Explanation of how VM class management works, how classes are loaded and registered, how types are represented, and how fields are laid out.

## Gotchas & Non-Obvious Behavior
- VM classes are different from Java classes
- Type hierarchy must be maintained carefully
- Field layout affects performance and compatibility

## Related Pages
- [[VM-Classloader]]
- [[Type-System]]
- [[JIT-Compilers]]

Related Concepts: Type system, Classloader, Class management, Fields, Layout

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions