15 if (c >=
'A' && c <=
'Z')
22 return ((_c > 8 && _c < 14) || (_c == 32));
27 return (x < 0) ? -x : x;
32 return (x < 0) ? -x : x;
37 return (x < 0) ? -x : x;
54 else if (*nptr ==
'+')
59 while ((c = *nptr++) >=
'0' && c <=
'9')
61 val = val * 10 + (c -
'0');
64 return neg ? -val : val;
67unsigned long strtoul(
const char *__restrict nptr,
char **__restrict endptr,
int base)
69 return strtoll(nptr, endptr, base);
77s64 strntoll(
const char *str,
char **endptr,
int base,
size_t n)
80 bool negative =
false;
84 negative =
true, str++, i++;
91 if (c >=
'0' && c <=
'9')
92 result *= base, result += c -
'0';
93 else if (c >=
'a' && c <=
'z')
94 result *= base, result += c -
'a' + 10;
95 else if (c >=
'A' && c <=
'Z')
96 result *= base, result += c -
'A' + 10;
103 *endptr = (
char *) str;
104 return negative ? -result : result;
109 static const char *
const units[] = {
"B",
"KiB",
"MiB",
"GiB",
"TiB",
"PiB",
"EiB",
"ZiB",
"YiB" };
124 snprintf(buf, buf_size,
"%llu %s + %zu %s",
size, units[i], diff, units[i - 1]);
143 end = in +
strlen(in) - 1;
144 while (end > in && *end ==
' ')
173void *malloc(
size_t size)
178void *calloc(
size_t nmemb,
size_t size)
183void *realloc(
void *
ptr,
size_t size)
MOSAPI void * do_kmalloc(size_t size)
MOSAPI void * do_krealloc(void *ptr, size_t size)
MOSAPI void * do_kcalloc(size_t nmemb, size_t size)
MOSAPI void do_kfree(const void *ptr)
s64 strtoll(const char *str, char **endptr, int base)
unsigned char tolower(unsigned char c)
void format_size(char *buf, size_t buf_size, u64 size)
s64 strntoll(const char *str, char **endptr, int base, size_t n)
char * string_trim(char *in)
s32 atoi(const char *nptr)
#define MOS_ARRAY_SIZE(x)
int snprintf(char *__restrict str, size_t size, const char *__restrict format,...)
unsigned long strtoul(const char *__restrict nptr, char **__restrict endptr, int base)
static int isspace(int _c)
static size_t strlen(const char *s)
void * slab_realloc(void *addr, size_t size)
Reallocate a block of memory from the slab allocator.
void * slab_alloc(size_t size)
Allocate a block of memory from the slab allocator.
void slab_free(const void *addr)
Free a block of memory from the slab allocator.
void * slab_calloc(size_t nmemb, size_t size)
Allocate a block of memory from the slab allocator and zero it.