Thread Manager kernel functions


Detailed Description

This module contains routines to threads in the kernel.


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...

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.
void * sceKernelGetKTLS (int id)
 Get the KTLS of the current thread.
void * sceKernelGetThreadKTLS (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.


Function Documentation

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

int sceKernelCheckThreadKernelStack ( void   ) 

Check the thread kernel stack.

Returns:
Unknown

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

int sceKernelFreeKTLS ( int  id  ) 

Free the KTLS allocator.

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

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

unsigned int sceKernelGetSyscallRA ( void   ) 

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

Returns:
The RA, 0 on error

unsigned int sceKernelGetSystemStatusFlag ( void   ) 

Get the system status flag.

Returns:
The system status flag

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

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

int sceKernelGetUserLevel ( void   ) 

Get the user level of the current thread.

Returns:
The user level, < 0 on error

int sceKernelIsUserModeThread ( void   ) 

Checks if the current thread is a usermode thread.

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

int sceKernelSuspendAllUserThreads ( void   ) 

Suspend all user mode threads in the system.

Returns:
0 on success, < 0 on error

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


Generated on Tue Jul 24 15:21:26 2007 for PSPSDK-Rev2272 by  doxygen 1.5.2