Stage G: SEND, and two workers interleave; decision compares work heat (FABRIC-3.8 §3.8, §3.13.7)
SEND ( paddr plen name-c name-u -- ok? ): general kernel-Hermes send to a named VM, from = calling VM, one block max (refused, not truncated), every VM. New SK_HERMES_MSG_TYPE_SEND (30). Ruling C-4 (beta), Captain Bob: the switch decision compares work heat -- the heat each VM pulled in by its own per-beat charges -- not absolute heat, so Hera's structural endowment no longer makes her hottest. Before it, the two-worker test ran serial (AAAA...BBBB); after it, byte-identical on amd64/aarch64/riscv64: AAABBBBBBBBAAAAAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBBAAAABB (40 A, 40 B, 16 runs; ordinary words only, nothing yields). Acceptance: relay 3, idle growth 0; dict_hash set changed by the new word (word_count 533) and identical across ISAs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
c7185facf0
commit
81def7b4a5
@@ -752,6 +752,14 @@ int sk_hermes_reassemble(SkHermesMessage **chunks, int n_chunks,
|
||||
* Phase 4 entry. */
|
||||
#define SK_HERMES_MSG_TYPE_ELEVATE_REQUEST 8
|
||||
|
||||
/* SK_HERMES_MSG_TYPE_SEND (FABRIC-3.8.md §3.8, Stage G, 2026-09-23) --
|
||||
* a general message from the FORTH SEND word (repl.c): payload is FORTH
|
||||
* text the recipient interprets, like CONSOLE_CMD, but from any VM to any
|
||||
* VM. A fresh kernel-Hermes-space value, clear of messaging.4th's old type
|
||||
* space and the negotiation types (20-24) listed below -- no FORTH-side
|
||||
* type ever existed for it to reuse. */
|
||||
#define SK_HERMES_MSG_TYPE_SEND 30
|
||||
|
||||
/* The five negotiation types above (20-24) were chosen clear of
|
||||
* messaging.4th's own live/reserved type space (PAUSE-EVENT=2,
|
||||
* RESUME-EVENT=3, KILL-EVENT=4, CONSOLE-CMD-EVENT=7, ELEVATE-REQUEST=8,
|
||||
|
||||
Reference in New Issue
Block a user