Exit.lean
Linux Process Termination exit & exit_group Syscalls (Arm64.)
-
Layer / Role:
Arm64Trusted Computing Base (Role::Spec, definitions only, 0 theorems). -
Linux
7.3Upstream Sources:-
kernel/(exit.c:1094 SYSCALL_DEFINE1(exit, int, error_code)->do_exit) -
kernel/(exit.c:1138 SYSCALL_DEFINE1(exit_group, int, error_code)->do_group_exit)
-
-
Purpose & Key Exports:
SYS_EXIT(93),SYS_EXIT_GROUP(94), andexecExit.
@[expose] public sectionnamespace Arm64def SYS_EXIT
Linux AArch64 exit syscall number (__NR_exit = 93, include/, kernel/).
def SYS_EXIT : BitVec 64 := 93#64def SYS_EXIT_GROUP
Linux AArch64 exit_group syscall number (__NR_exit_group = 94, include/, kernel/).
def SYS_EXIT_GROUP : BitVec 64 := 94#64def execExit
exit(status) (__NR_exit = 93, kernel/) and exit_group(status) (__NR_exit_group = 94, kernel/).
-
[INTENTIONAL_SCOPE]: In the single-threaded process model,exitandexit_grouphave identical process-termination semantics (execExitstores the full 64-bitX0in .Exited, andProcessOutcome.preservesofState codeunmasked rather than masking with0xff, soX0 = 256givesexitCode = 256where Linux reports status0; specifications constrain the full 64-bitexitCode).
end Arm64