VSF Documented
vsf_linux.h File Reference

Go to the source code of this file.

Data Structures

struct  vsf_linux_process_arg_t
 
struct  vsf_linux_thread_op_t
 
struct  vsf_linux_process_ctx_t
 
struct  vsf_linux_key_t
 
class  vsf_linux_trigger_t
 
class  vsf_linux_thread_t
 
struct  vsf_linux_sig_handler_t
 
struct  vsf_linux_stdio_stream_t
 
struct  vsf_linux_timer_t
 
struct  vsf_liunx_heap_node_t
 
struct  vsf_linux_heap_monitor_t
 
class  vsf_linux_process_t
 
struct  vsf_linux_fundmental_vplt_t
 

Macros

#define VSF_LINUX_CFG_STACKSIZE   1024
 
#define vsf_linux_thread_get_priv(__thread)
 
#define __malloc_ex(__process, __size)
 
#define __calloc_ex(__process, __n, __size)
 
#define __realloc_ex(__process, __ptr, __size)
 
#define __strdup_ex(__process, __str)
 

Typedefs

typedef struct vsf_linux_process_arg_t vsf_linux_process_arg_t
 
typedef int(* vsf_linux_main_entry_t) (int, char **)
 
typedef int(* vsf_linux_process_arg_parser_t) (vsf_linux_process_arg_t *arg)
 
typedef struct vsf_linux_thread_op_t vsf_linux_thread_op_t
 
typedef struct vsf_linux_process_ctx_t vsf_linux_process_ctx_t
 
typedef struct vsf_linux_key_t vsf_linux_key_t
 
typedef struct vsf_linux_sig_handler_t vsf_linux_sig_handler_t
 
typedef struct vsf_linux_stdio_stream_t vsf_linux_stdio_stream_t
 
typedef struct vsf_linux_timer_t vsf_linux_timer_t
 
typedef struct vsf_liunx_heap_node_t vsf_liunx_heap_node_t
 
typedef struct vsf_linux_heap_monitor_t vsf_linux_heap_monitor_t
 
typedef struct vsf_linux_fundmental_vplt_t vsf_linux_fundmental_vplt_t
 

Enumerations

enum  {
  __VSF_EVT_LINUX_EVENTFD_INC = VSF_EVT_USER + 0 ,
  __VSF_EVT_LINUX_TERM_RX = VSF_EVT_USER + 1
}
 

Functions

 dcl_vsf_bitmap (vsf_linux_fd_bitmap, VSF_LINUX_CFG_FD_BITMAP_SIZE)
 
vsf_linux_process_tvsf_linux_get_cur_process (void)
 
void vsf_linux_loader_keep_ram (void)
 
vsf_err_t vsf_linux_init (vsf_linux_stdio_stream_t *stdio_stream)
 
vsf_systimer_tick_t vsf_linux_sleep (vsf_timeout_tick_t ticks)
 
vsf_linux_process_tvsf_linux_resources_process (void)
 
size_t vsf_linux_process_heap_size (vsf_linux_process_t *process, void *buffer)
 
void * vsf_linux_process_heap_realloc (vsf_linux_process_t *process, void *buffer, uint_fast32_t size)
 
void * vsf_linux_process_heap_malloc_aligned (vsf_linux_process_t *process, uint_fast32_t size, uint_fast32_t alignment)
 
void * vsf_linux_process_heap_malloc (vsf_linux_process_t *process, size_t size)
 
void * vsf_linux_process_heap_calloc (vsf_linux_process_t *process, size_t n, size_t size)
 
void vsf_linux_process_heap_free (vsf_linux_process_t *process, void *buffer)
 
char * vsf_linux_process_heap_strdup (vsf_linux_process_t *process, char *str)
 
void __free_ex (vsf_linux_process_t *process, void *ptr)
 
vsf_eda_tvsf_linux_get_kernel_task (void)
 
void * vsf_linux_malloc_res (size_t size)
 
void vsf_linux_free_res (void *ptr)
 
int vsf_linux_generate_path (char *path_out, int path_out_lenlen, char *dir, char *path_in)
 
int vsf_linux_chdir (vsf_linux_process_t *process, char *working_dir)
 
int vsf_linux_fd_bind_executable (int fd, vsf_linux_main_entry_t entry)
 
int vsf_linux_fs_bind_executable (char *path, vsf_linux_main_entry_t entry)
 
int vsf_linux_expandenv (const char *str, char *output, size_t bufflen)
 
vsf_linux_thread_tvsf_linux_get_cur_thread (void)
 

Variables

__VSF_VPLT_DECORATOR__ vsf_linux_fundmental_vplt_t vsf_linux_fundmental_vplt
 

Macro Definition Documentation

◆ VSF_LINUX_CFG_STACKSIZE

#define VSF_LINUX_CFG_STACKSIZE   1024

◆ vsf_linux_thread_get_priv

#define vsf_linux_thread_get_priv ( __thread)
Value:
(void *)(&(((vsf_linux_thread_t *)(__thread))[1]))
Definition vsf_linux.h:181

◆ __malloc_ex

#define __malloc_ex ( __process,
__size )
Value:
____malloc_ex((__process), (__size), __FILE__, __FUNCTION__, __LINE__)
void * ____malloc_ex(vsf_linux_process_t *process, size_t size, const char *file, const char *func, int line)
Definition vsf_linux_glibc_stdlib.c:137

◆ __calloc_ex

#define __calloc_ex ( __process,
__n,
__size )
Value:
____calloc_ex((__process), (__n), (__size), __FILE__, __FUNCTION__, __LINE__)
void * ____calloc_ex(vsf_linux_process_t *process, size_t n, size_t size, const char *file, const char *func, int line)
Definition vsf_linux_glibc_stdlib.c:213

◆ __realloc_ex

#define __realloc_ex ( __process,
__ptr,
__size )
Value:
____realloc_ex((__process), (__ptr), (__size), __FILE__, __FUNCTION__, __LINE__)
void * ____realloc_ex(vsf_linux_process_t *process, void *p, size_t size, const char *file, const char *func, int line)
Definition vsf_linux_glibc_stdlib.c:155

◆ __strdup_ex

#define __strdup_ex ( __process,
__str )
Value:
____strdup_ex((__process), (char *)(__str), __FILE__, __FUNCTION__, __LINE__)
char * ____strdup_ex(vsf_linux_process_t *process, const char *str, const char *file, const char *func, int line)
Definition vsf_linux_glibc_string.c:50

Typedef Documentation

◆ vsf_linux_process_arg_t

typedef struct vsf_linux_process_arg_t vsf_linux_process_arg_t

◆ vsf_linux_main_entry_t

typedef int(* vsf_linux_main_entry_t) (int, char **)

◆ vsf_linux_process_arg_parser_t

typedef int(* vsf_linux_process_arg_parser_t) (vsf_linux_process_arg_t *arg)

◆ vsf_linux_thread_op_t

typedef struct vsf_linux_thread_op_t vsf_linux_thread_op_t

◆ vsf_linux_process_ctx_t

typedef struct vsf_linux_process_ctx_t vsf_linux_process_ctx_t

◆ vsf_linux_key_t

typedef struct vsf_linux_key_t vsf_linux_key_t

◆ vsf_linux_sig_handler_t

typedef struct vsf_linux_sig_handler_t vsf_linux_sig_handler_t

◆ vsf_linux_stdio_stream_t

typedef struct vsf_linux_stdio_stream_t vsf_linux_stdio_stream_t

◆ vsf_linux_timer_t

typedef struct vsf_linux_timer_t vsf_linux_timer_t

◆ vsf_liunx_heap_node_t

typedef struct vsf_liunx_heap_node_t vsf_liunx_heap_node_t

◆ vsf_linux_heap_monitor_t

typedef struct vsf_linux_heap_monitor_t vsf_linux_heap_monitor_t

◆ vsf_linux_fundmental_vplt_t

typedef struct vsf_linux_fundmental_vplt_t vsf_linux_fundmental_vplt_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
__VSF_EVT_LINUX_EVENTFD_INC 
__VSF_EVT_LINUX_TERM_RX 

Function Documentation

◆ dcl_vsf_bitmap()

dcl_vsf_bitmap ( vsf_linux_fd_bitmap ,
VSF_LINUX_CFG_FD_BITMAP_SIZE  )

◆ vsf_linux_get_cur_process()

vsf_linux_process_t * vsf_linux_get_cur_process ( void )
extern

◆ vsf_linux_loader_keep_ram()

void vsf_linux_loader_keep_ram ( void )
extern

◆ vsf_linux_init()

vsf_err_t vsf_linux_init ( vsf_linux_stdio_stream_t * stdio_stream)
extern

◆ vsf_linux_sleep()

vsf_systimer_tick_t vsf_linux_sleep ( vsf_timeout_tick_t ticks)
extern

◆ vsf_linux_resources_process()

vsf_linux_process_t * vsf_linux_resources_process ( void )
extern

◆ vsf_linux_process_heap_size()

size_t vsf_linux_process_heap_size ( vsf_linux_process_t * process,
void * buffer )
extern

◆ vsf_linux_process_heap_realloc()

void * vsf_linux_process_heap_realloc ( vsf_linux_process_t * process,
void * buffer,
uint_fast32_t size )
extern

◆ vsf_linux_process_heap_malloc_aligned()

void * vsf_linux_process_heap_malloc_aligned ( vsf_linux_process_t * process,
uint_fast32_t size,
uint_fast32_t alignment )
extern

◆ vsf_linux_process_heap_malloc()

void * vsf_linux_process_heap_malloc ( vsf_linux_process_t * process,
size_t size )
extern

◆ vsf_linux_process_heap_calloc()

void * vsf_linux_process_heap_calloc ( vsf_linux_process_t * process,
size_t n,
size_t size )
extern

◆ vsf_linux_process_heap_free()

void vsf_linux_process_heap_free ( vsf_linux_process_t * process,
void * buffer )
extern

◆ vsf_linux_process_heap_strdup()

char * vsf_linux_process_heap_strdup ( vsf_linux_process_t * process,
char * str )
extern

◆ __free_ex()

void __free_ex ( vsf_linux_process_t * process,
void * ptr )
extern

◆ vsf_linux_get_kernel_task()

vsf_eda_t * vsf_linux_get_kernel_task ( void )
extern

◆ vsf_linux_malloc_res()

void * vsf_linux_malloc_res ( size_t size)
extern

◆ vsf_linux_free_res()

void vsf_linux_free_res ( void * ptr)
extern

◆ vsf_linux_generate_path()

int vsf_linux_generate_path ( char * path_out,
int path_out_lenlen,
char * dir,
char * path_in )
extern

◆ vsf_linux_chdir()

int vsf_linux_chdir ( vsf_linux_process_t * process,
char * working_dir )
extern

◆ vsf_linux_fd_bind_executable()

int vsf_linux_fd_bind_executable ( int fd,
vsf_linux_main_entry_t entry )
extern

◆ vsf_linux_fs_bind_executable()

int vsf_linux_fs_bind_executable ( char * path,
vsf_linux_main_entry_t entry )
extern

◆ vsf_linux_expandenv()

int vsf_linux_expandenv ( const char * str,
char * output,
size_t bufflen )
extern

◆ vsf_linux_get_cur_thread()

vsf_linux_thread_t * vsf_linux_get_cur_thread ( void )
extern

Variable Documentation

◆ vsf_linux_fundmental_vplt

__VSF_VPLT_DECORATOR__ vsf_linux_fundmental_vplt_t vsf_linux_fundmental_vplt
extern
Generated from commit: vsfteam/vsf@9c2a974