The program interface_through_module
The interface package as a module, for one program (docs/INTERFACE.md, section 7). This program builds the same frame in two ways: through the exports of the module interface_module, which it imports (each call passes the draw table and the text table of this program as table parameters, with no copy), and with the package support/interface compiled in. It compares the two draw tables, measures the two builds, and draws its window through the module: the damage by difference and the execution of the records into its pixels are exports too.
| Fact | Value |
|---|---|
| Source | programs/interface_through_module |
| Boot image | in the boot image; the image is not built, so its size is not known |
| Imports | interface_module |
| Imported by | none |
Exports
| Export | What it does |
|---|---|
| entry() |
Read from the source of the module, as the build reads it to describe the exports (tools/kerneltool/describe.odin).
What the root service gives it
| What | Value | As the root service says |
|---|---|---|
| Grants | {.Image} | It reads the size of the code of interface_module. |
| Budget: pages, programs, threads | {pages = 2048, programs = 1, threads = 1} | Not named in things_of: the budget of each other program. |
Read from grants_of and things_of in programs/root/main.odin; budget_of in the same file adds the limits of processor time and of log records.
