HyperEnclave / hyperenclave

An Open and Cross-platform Trusted Execution Environment.
Apache License 2.0
130 stars 15 forks source link

rustmonitor的内存大小是固定的吗 #2

Closed Xisaname closed 10 months ago

Xisaname commented 11 months ago

您好!我最近粗略地阅读了关于本项目的论文。从文中我了解到enclave和marshalling buffer使用的内存是可以动态分配的。 在我阅读到rustmonitor的implementation部分时,发现为其保留的内存部分是在bootloader阶段在grub中配置好的。 那请问这是否意味着rustmonitor使用的内存是大小固定的呢? 谢谢~

Bonjourz commented 11 months ago

Hi @Xisaname , thanks for your interest in HyperEnclave!

There are many kinds of memory in HyperEnclave. Here is a overview for it: https://github.com/HyperEnclave/hyperenclave-driver/blob/master/driver/init_mem.c#L20-L38

The memory you care about is the memory regions for hypervisor (hv_range), which comes from the regions by memmap in kernel command-line.

The hv_range can be expanded and shrunken dynamically at runtime as needed. However, the relevant code has not been made public yet. If you are interested, you can continue to follow our project, also we can discussion on it.

Xisaname commented 11 months ago

Hi @Xisaname , thanks for your interest in HyperEnclave!

There are many kinds of memory in HyperEnclave. Here is a overview for it: https://github.com/HyperEnclave/hyperenclave-driver/blob/master/driver/init_mem.c#L20-L38

The memory you care about is the memory regions for hypervisor (hv_range), which comes from the regions by memmap in kernel command-line.

The hv_range can be expanded and shrunken dynamically at runtime as needed. However, the relevant code has not been made public yet. If you are interested, you can continue to follow our project, also we can discussion on it.

Thank you for your answer! :)