PSPSDK 2024-10-31
Loading...
Searching...
No Matches
Thread Manager kernel functions

This module contains routines to threads in the kernel. More...

Data Structures

struct  SceThreadContext
 Thread context Structues for the thread context taken from florinsasu's post on the forums. More...
 
struct  SceSCContext
 
struct  SceKernelThreadKInfo
 Structure to hold the status information for a thread (kernel form) 1.5 form. More...
 

Typedefs

typedef struct SceKernelThreadKInfo SceKernelThreadKInfo
 Structure to hold the status information for a thread (kernel form) 1.5 form.
 

Functions

int sceKernelSuspendAllUserThreads (void)
 Suspend all user mode threads in the system.
 
int sceKernelIsUserModeThread (void)
 Checks if the current thread is a usermode thread.
 
int sceKernelGetUserLevel (void)
 Get the user level of the current thread.
 
unsigned int sceKernelGetSyscallRA (void)
 Get the return address of the current thread's syscall.
 
int sceKernelGetThreadKernelStackFreeSize (SceUID thid)
 Get the free stack space on the kernel thread.
 
int sceKernelCheckThreadKernelStack (void)
 Check the thread kernel stack.
 
int sceKernelExtendKernelStack (int type, void(*cb)(void *), void *arg)
 Extend the kernel thread stack.
 
unsigned int sceKernelGetSystemStatusFlag (void)
 Get the system status flag.
 
int sceKernelAllocateKTLS (int id, int(*cb)(unsigned int *size, void *arg), void *arg)
 Setup the KTLS allocator.
 
int sceKernelFreeKTLS (int id)
 Free the KTLS allocator.
 
voidsceKernelGetKTLS (int id)
 Get the KTLS of the current thread.
 
voidsceKernelGetThreadKTLS (int id, SceUID thid, int mode)
 Get the KTLS of a thread.
 
int ThreadManForKernel_2D69D086 (SceUID uid, SceKernelThreadKInfo *info)
 Refer kernel version of thread information.
 

Detailed Description

This module contains routines to threads in the kernel.

Typedef Documentation

◆ SceKernelThreadKInfo

Structure to hold the status information for a thread (kernel form) 1.5 form.

Function Documentation

◆ sceKernelAllocateKTLS()

int sceKernelAllocateKTLS ( int  id,
int(*)(unsigned int *size, void *arg)  cb,
void arg 
)

Setup the KTLS allocator.

Parameters
id- The ID of the allocator
cb- The allocator callback
arg- User specified arg passed to the callback
Returns
< 0 on error, allocation id on success

◆ sceKernelCheckThreadKernelStack()

int sceKernelCheckThreadKernelStack ( void  )

Check the thread kernel stack.

Returns
Unknown

◆ sceKernelExtendKernelStack()

int sceKernelExtendKernelStack ( int  type,
void(*)(void *)  cb,
void arg 
)

Extend the kernel thread stack.

Parameters
type- The type of block allocation. One of PspSysMemBlockTypes
cb- A pointer to a callback function
arg- A pointer to a user specified argument
Returns
< 0 on error

◆ sceKernelFreeKTLS()

int sceKernelFreeKTLS ( int  id)

Free the KTLS allocator.

Parameters
id- The allocation id returned from AllocateKTLS
Returns
< 0 on error

◆ sceKernelGetKTLS()

void * sceKernelGetKTLS ( int  id)

Get the KTLS of the current thread.

Parameters
id- The allocation id returned from AllocateKTLS
Returns
The current KTLS, NULL on error

◆ sceKernelGetSyscallRA()

unsigned int sceKernelGetSyscallRA ( void  )

Get the return address of the current thread's syscall.

Returns
The RA, 0 on error

◆ sceKernelGetSystemStatusFlag()

unsigned int sceKernelGetSystemStatusFlag ( void  )

Get the system status flag.

Returns
The system status flag

◆ sceKernelGetThreadKernelStackFreeSize()

int sceKernelGetThreadKernelStackFreeSize ( SceUID  thid)

Get the free stack space on the kernel thread.

Parameters
thid- The UID of the thread
Returns
The free stack space, < 0 on error

◆ sceKernelGetThreadKTLS()

void * sceKernelGetThreadKTLS ( int  id,
SceUID  thid,
int  mode 
)

Get the KTLS of a thread.

Parameters
id- The allocation id returned from AllocateKTLS
thid- The thread is, 0 for current thread
mode- Perhaps? Sees to be set to 0 or 1
Returns
The current KTLS, NULL on error

◆ sceKernelGetUserLevel()

int sceKernelGetUserLevel ( void  )

Get the user level of the current thread.

Returns
The user level, < 0 on error

◆ sceKernelIsUserModeThread()

int sceKernelIsUserModeThread ( void  )

Checks if the current thread is a usermode thread.

Returns
0 if kernel, 1 if user, < 0 on error

◆ sceKernelSuspendAllUserThreads()

int sceKernelSuspendAllUserThreads ( void  )

Suspend all user mode threads in the system.

Returns
0 on success, < 0 on error

◆ ThreadManForKernel_2D69D086()

int ThreadManForKernel_2D69D086 ( SceUID  uid,
SceKernelThreadKInfo info 
)

Refer kernel version of thread information.

Parameters
uid- UID to find
info- Pointer to info structure, ensure size is set before calling
Returns
0 on success