diff --git a/xtoskrnl/CMakeLists.txt b/xtoskrnl/CMakeLists.txt index 51a78cf..d45e4b5 100644 --- a/xtoskrnl/CMakeLists.txt +++ b/xtoskrnl/CMakeLists.txt @@ -19,6 +19,7 @@ list(APPEND XTOSKRNL_SOURCE ${XTOSKRNL_SOURCE_DIR}/ke/apc.c ${XTOSKRNL_SOURCE_DIR}/ke/globals.c ${XTOSKRNL_SOURCE_DIR}/ke/krnlinit.c + ${XTOSKRNL_SOURCE_DIR}/ke/kthread.c ${XTOSKRNL_SOURCE_DIR}/ke/semphore.c ${XTOSKRNL_SOURCE_DIR}/ke/spinlock.c ${XTOSKRNL_SOURCE_DIR}/ke/timer.c diff --git a/xtoskrnl/ke/kthread.c b/xtoskrnl/ke/kthread.c new file mode 100644 index 0000000..3608692 --- /dev/null +++ b/xtoskrnl/ke/kthread.c @@ -0,0 +1,56 @@ +/** + * PROJECT: ExectOS + * COPYRIGHT: See COPYING.md in the top level directory + * FILE: xtoskrnl/ke/kthread.c + * DESCRIPTION: XT kernel thread manipulation support + * DEVELOPERS: Rafal Kupiec + */ + +#include + + +/** + * Initializes the thread. + * + * @param Thread + * Supplies a pointer to thread that will be initialized. + * + * @param Stack + * Supplies a pointer to the stack of the thread. + * + * @param SystemRoutine + * Supplies a pointer to the routine called during first scheduling. + * + * @param StartRoutine + * Supplies a pointer to the routine called during thread startup. + * + * @param StartContext + * Supplies a pointer to a context data that will be passed to start routine. + * + * @param Context + * Supplies a pointer to the context frame containing state of the user mode thread. + * + * @param EnvironmentBlock + * Supplies a pointer to the environment block of the thread. + * + * @param Process + * Supplies a pointer to the process that owns the thread. + * + * @return This routine returns a status code. + * + * @since NT 3.5 + */ +XTAPI +XTSTATUS +KeInitializeThread(IN PKTHREAD Thread, + IN PVOID Stack, + IN PKSYSTEM_ROUTINE SystemRoutine, + IN PKSTART_ROUTINE StartRoutine, + IN PVOID StartContext, + IN PCONTEXT Context, + IN PVOID EnvironmentBlock, + IN PKPROCESS Process) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +}