The program limits
A demonstration of the limits of a budget: processor time and log records (property 20).
The program makes three budgets with a limit of processor time, and one thread on each budget. Each thread computes with no end. A fourth thread is on the budget of the program. The window shows the processor time that each budget used in the last second, against its limit. The budget of the program has a limit too, and what the three budgets use counts in it. Then the program writes 100 records on the log at once: its budget has 40 records for each second.
| Fact | Value |
|---|---|
| Source | programs/limits |
| Boot image | in the boot image; the image is not built, so its size is not known |
| Imports | none |
| 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 | {} | Not named in grants_of: the grants of each other program. |
| Budget: pages, programs, threads | {pages = 2048, programs = 1, threads = 5} |
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.
