Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 3.14 KB

CantripRootserver.md

File metadata and controls

66 lines (47 loc) · 3.14 KB

CantripOS的capDL根服务器应用程序

CantripOS的另一个主要Rust组件是位于projects/capdl/cantrip-os-rootserver中的根服务器应用程序。 这取决于cantrip-os-commoncapdlmodel子模块。 虽然可以使用CMake设置在CAmkES项目的easy-settings.cmake文件中选择cantrip-os-rootserver或基于C的capdl-loader-app; 例如,projects/cantrip/easy-settings.cmake中有:

#set(CAPDL_LOADER_APP "capdl-loader-app" CACHE STRING "")
set(CAPDL_LOADER_APP "cantrip-os-rootserver" CACHE STRING "")

但不建议使用capdl-loader-app,因为它缺少仅在cantrip-os-rootserver中才有的重要功能。

cantrip-os-rootserver和capdl-loader-app之间最重要的区别是:

  • 支持在退出时回收根服务器的内存。
  • 支持CantripOS CAmkES特性(例如MemoryManager、RTReply caps)。
  • 减少内存消耗。

否则,cantrip-os-rootserver应该提供相同的功能, 尽管某些功能未经测试(例如CONFIG_CAPDL_LOADER_STATIC_ALLOC)和/或未经充分测试(例如CONFIG_CAPDL_LOADER_CC_REGISTERS)。

请注意,许多cmake根服务器配置参数没有传递到Rust代码中。您可能需要在cantrip-os-rootserver和/或cantrip-os-model(cantrip-os-common)的Cargo.toml中调整功能。

默认情况下,cantrip-os-rootserver在启动时会打印有关capDL规范的信息。如果您想启用详细日志记录,请在Cargo.toml中启用LOG_DEBUG或LOG_TRACE。