shmdt¶
Intro¶
shmdt - detach a shared memory segment from the caller's data segment
Description¶
The shmdt()
syscall detached a shared memory segment from the caller's data
segment. It shall be used after a shared memory segment is no longer needed.
When a shared memory segment is attached, it becomes part of the address
space of the calling process, and the calling process must explicitly
detach it. An shmdt()
call destroys the association between the process
and the shared memory segment. If a process has multiple shared memory
attachments, each must be detached individually.
When the last process detaches a segment, the segment is deleted and its resources are returned to the system. If a segment is detached while processes still have the segment attached, the state of the segment persists until all processes have detached it.
Arguments¶
shmaddr
:const void*
[K] - pointer to the shared memory segment.
Available Tags¶
- K - Originated from kernel-space.
Hooks¶
shmdt¶
Type¶
Kprobe
Purpose¶
The shmdt()
syscall is used to detach a shared memory segment from the caller's
data segment, so it is important to understand when this event is called.
Example Use Case¶
For example, you can monitor when shared memory is being detached and gather information such as the process PID and the address of the segment being detached.
Issues¶
Currently, the shmdt() syscall is not able to detach more than one shared memory segment at a time.
Related Events¶
- shmget - get a shared memory segment
- shmat - attach a shared memory segment
This document was automatically generated by OpenAI and needs review. It might not be accurate and might contain errors. The authors of Tracee recommend that the user reads the "events.go" source file to understand the events and their arguments better.