/* * Copyright (c) 2026, Chloe M. * Provided under the BSD-3 clause. * * Description: Thread management * Author: Chloe M. */ #ifndef _PS_THREAD_H_ #define _PS_THREAD_H_ 1 #include #include #include #define THREAD_POOL_TAG 'TD' struct _PROCESS; /* * Represents a runnable thread that exists within * processes. * * @Tid: Thread ID * @ThreadLink: Thread queue link */ typedef struct _THREAD { UQUAD Tid; TAILQ_ENTRY(_THREAD) ThreadLink; } THREAD; /* * Create a new thread * * @Parent: Parent of thread to create * @Flags: Optional init flags * @Result: Result is written here */ PT_STATUS PsCreateThread(struct _PROCESS *Parent, ULONG Flags, THREAD **Result); #endif /* !_PS_THREAD_H_ */