From b754df70177080be37ae2823f081cfe60ca2f78a Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Fri, 9 Feb 2024 12:34:34 +0100 Subject: [PATCH] added example pool --- satrs-book/src/constrained-systems.md | 2 +- satrs-book/src/images/pools/static-pools.png | Bin 0 -> 38516 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 satrs-book/src/images/pools/static-pools.png diff --git a/satrs-book/src/constrained-systems.md b/satrs-book/src/constrained-systems.md index 3580df7..d604414 100644 --- a/satrs-book/src/constrained-systems.md +++ b/satrs-book/src/constrained-systems.md @@ -24,7 +24,7 @@ pools. These pools are split into subpools where each subpool can have different page sizes. For example, a very small TC pool might look like this: -TODO: Add image +![Example Pool](images/pools/static-pools.png) A TC entry inside this pool has a store address which can then be sent around without having to dynamically allocate memory. The same principle can also be applied to the TM and IPC data. diff --git a/satrs-book/src/images/pools/static-pools.png b/satrs-book/src/images/pools/static-pools.png new file mode 100644 index 0000000000000000000000000000000000000000..55a06577484bfdb82c3fb91ad98786fe5296b8dc GIT binary patch literal 38516 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 MwY{n_+mD|8H`S&V<^TWy literal 0 HcmV?d00001