gear icon indicating copy to clipboard operation
gear copied to clipboard

System signals mechanism

Open breathx opened this issue 3 years ago • 0 comments

Problem to Solve

There might be cases when something happen on the upper layer (e.g. in the node) and contract should change it's state somehow.

Example cases:

  • Program waits for reply (stores future in persistent pages), but reply throws away from wait-list, because can't pay rent for holding there. Program need to somehow clear the memory, wake some messages etc. (the most obvious use-case for me atm.)

  • #349 may be done with that logic

Possible Solution

Provide new entry point, which will parse "signals" only from system, not other actors. I fount this concept pretty similar to OS sigs.

No syscalls available inside, except gr_read (and probably gr_wake) to get the input.

Provide gstd and gcore default Rust realization for it.

breathx avatar Feb 09 '22 10:02 breathx