]> Kevux Git Server - fll/commit
Update: Implement threaded signal handler in Featureless Make.
authorKevin Day <kevin@kevux.org>
Mon, 3 Apr 2023 00:17:48 +0000 (19:17 -0500)
committerKevin Day <kevin@kevux.org>
Mon, 3 Apr 2023 00:17:48 +0000 (19:17 -0500)
commit9e0529297bfdb1529be685eacd3ca5784ea8e946
treecf89d62cd68af0a49192828a899868eafc93f2ca
parent18b50d4d526ed37c912a6feb0a5a91034a9841e0
Update: Implement threaded signal handler in Featureless Make.

Bring in the threaded signal handler design that I experimented with in the Kevux Tools project.

This works by creating a thread that waits for the signal and nothing else.
The threaded design avoids the signal check and therefore avoids period calls to kernel space.

When thread support is diabled, this falls back to the traditional approach.

This will be done for other programs as well.
18 files changed:
build/stand_alone/fake.settings
level_3/fake/c/main/build.c
level_3/fake/c/main/build/load.c
level_3/fake/c/main/build/skeleton.c
level_3/fake/c/main/common/define.h
level_3/fake/c/main/common/print.c
level_3/fake/c/main/common/print.h
level_3/fake/c/main/common/type.h
level_3/fake/c/main/fake.c
level_3/fake/c/main/fake.h
level_3/fake/c/main/main.c
level_3/fake/c/main/make/operate.c
level_3/fake/c/main/signal.c [new file with mode: 0644]
level_3/fake/c/main/signal.h [new file with mode: 0644]
level_3/fake/c/main/thread.c [new file with mode: 0644]
level_3/fake/c/main/thread.h [new file with mode: 0644]
level_3/fake/data/build/defines
level_3/fake/data/build/settings