diff --git a/README.md b/README.md index f775373824b1eafb2cf264b39c400eea0b95f93d..3935ce0ab0b445be47f4d2102e18a1f731eeb058 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,11 @@ In addition, you can write your own enclave runtime with any programming languag --- +## Terminology +Please refer to [this doc] for the details. + +--- + ## Using rune ### Run Occlum Please refer to [this guide](https://github.com/alibaba/inclavare-containers/blob/master/docs/running_rune_with_occlum.md) to run `Occlum` with `rune`. diff --git a/docs/terminology.md b/docs/terminology.md new file mode 100644 index 0000000000000000000000000000000000000000..004c1344c547b032b780ac2a1e8bb12fbf87501c --- /dev/null +++ b/docs/terminology.md @@ -0,0 +1,20 @@ +# init-runelet +Essentially, it is init process inside container. In runc, init process eventually executes the entrypoint of container defined in config.json. In rune, init process never call execve() syscall. Instead, it serves for the communications between Enclave Runtime PAL and the host side through Enclave Runtime PAL API. + +# runelet +init-runelet is created by `rune create`, and runelet process on behalf of enclave application is created by `rune exec`. + +# Enclave Runtime PAL API +This API defines the function calls beutween Enclave Runtime PAL and init-runelet. + +# Enclave Runtime PAL +The implementer of Enclave Runtime PAL API, on behalf of Enclave Runtime. + +# Enclave Runtime +The implementer of enclave. Occlum and Graphene-SGX are all the so-called Enclave Runtime. + +# Enclave Application +The actual running entity inside Enclave Runtime. + +# Enclave Container +A new class of container managed by OCI Runtime `rune`.