WebAssembly / WebAssembly/WASI

signal handling

Open
#166 18 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion feature-request S-inactive
Dominant language
Rust
Stars
5.8k
Forks
333
Avg merge
2d 13h
Merged PRs (30d)
3

Description

while debating the question of more satisfaying keyboard input control (#161 and #163) i had to notice, that WASI up to now doesn't provide any commands to activate signal handlers.

it provides at least one routine to send signals to the parent (wasi_proc_raise), but it's unable to listen and react to incoming signals. that's a significant limitation, because it makes a lot of sense in practice to e.g. provide cleanup routines in applications, which will be called in case of execution abort etc.

beside this most common utilization it's a simple asynchronous communication mechanism, which has to be seen as closely tied to other input and output capabilities and recognized as a nearly indispensable complement to interact with the outside world. although we perhaps don't need all the support for it's use in process management on POSIX platforms, but we should at least try to satisfy the essential requirements of the C standard library.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No implementation files, entry points, or tests are named. Start by reading the discussion in #161 and #163, then compare the requested signal behavior with the linked C standard library requirements. Done would require an agreed scope for WASI signal handling and the corresponding specification work.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, wasm
Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.