Skip to main content

Crate ax_libc

Crate ax_libc 

Source
Expand description

ArceOS user program library for C apps.

§Cargo Features

  • CPU
    • smp: Enable SMP (symmetric multiprocessing) support.
    • fp-simd: Enable floating point and SIMD support.
  • Interrupts:
    • Interrupt handling is always available.
  • Memory
    • alloc: Enable dynamic memory allocation.
    • tls: Enable thread-local storage.
  • Task management
    • Multi-threading and timer-driven scheduling are always available.
  • Upperlayer stacks
    • fs: Enable file system support.
    • net: Enable networking support.
  • Lib C functions
    • fd: Enable file descriptor table.
    • pipe: Enable pipe support.
    • select: Enable synchronous I/O multiplexing (select) support.
    • epoll: Enable event polling (epoll) support.

Functions§

abort
Abort the current process.
clock_gettime
Get clock time since booting
exit
Exits the current thread.
getpid
Get current thread ID.
getrlimit
Get resource limitations
longjmp
longjmp implementation
mktime
Convert broken-down time into time since the Epoch.
nanosleep
Sleep some nanoseconds
pthread_create
Create a new thread with the given entry point and argument.
pthread_detach
Marks a joinable thread detached so it is reclaimed automatically.
pthread_exit
Exits the current thread. The value retval will be returned to the joiner.
pthread_join
Waits for the given thread to exit, and stores the return value in retval.
pthread_mutex_init
Initialize a mutex.
pthread_mutex_lock
Lock the given mutex.
pthread_mutex_unlock
Unlock the given mutex.
pthread_self
Returns the pthread struct of current thread.
rand
Returns a 32-bit unsigned pseudo random interger.
random
Returns a 64-bit unsigned pseudo random number.
read
Read data from the file indicated by fd.
setjmp
setjmp implementation
setrlimit
Set resource limitations
srand
Sets the seed for the random number generator.
strerror
Returns a pointer to the string representation of the given error code.
sysconf
Return system configuration infomation
write
Write data to the file indicated by fd.
writev
Write a vector.