summaryrefslogtreecommitdiff
path: root/chapter25/src/main/smp/sys/libc.smp
blob: 42fc731377d82809d05144e9082ff48742de4181 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// -*- mode: java;  -*-

// libc bindings:
//   https://www.man7.org/linux/man-pages/man2/<libc call>.2.html

// fd  buf len -> len
{  i32 i64 u32 -> u32 } write = "C";
// fd  buf len -> len
{  i32 i64 u32 -> u32 } read = "C";
// status
{  i32 -> i32 } _exit = "C";
// addr len prot flags fd  off -> void*
{  i64  i64 i32  i32   i32 i32 -> i64 } mmap = "C";
// mmap flags
i32 PROT_EXEC = 4;
i32 PROT_READ = 1;
i32 PROT_WRITE= 2;
i32 PROT_NONE = 0;
i32 MAP_PRIVATE = 2;
i32 MAP_ANON = 32;