wash
61a8e6fc40
libmango: add syscalls to handle cow-attached vm-objects
2026-04-19 20:12:11 +01:00
wash
3c494f0c4d
libmango: add kern_handle_control syscall
2026-04-01 18:40:58 +01:00
wash
304ba8b254
libmango: add task_duplicate syscall
2026-04-01 18:39:38 +01:00
wash
04617e81e3
kernel: add a syscall to query generic information about an object
2026-03-29 11:50:37 +01:00
wash
62770f4ab2
kernel: replace kern_handle_duplicate with the more powerful kern_handle_transfer
...
this syscall can move and copy handles within the current task, or from/to
other tasks
2026-03-29 11:48:59 +01:00
wash
9001f8e064
kernel: handle: rename handle transfer mode constants
2026-03-29 11:48:31 +01:00
wash
89d02c72ee
kernel: msg: implement asynchronous event messages
2026-03-24 18:32:33 +00:00
wash
110f625f04
syscall: task: implement thread_self
2026-03-22 19:02:31 +00:00
wash
6350032e88
cmake: update for compatibility with CMake 4.0
2026-03-22 19:01:36 +00:00
wash
4551e7b2e6
sched: implement various ways to end tasks and threads
2026-03-18 21:07:43 +00:00
wash
24f9ef85bf
sched: implement user-configurable fs and gs segment base addresses
2026-03-18 21:07:05 +00:00
wash
2a1a0cf14d
kernel: finish implementation of private and shared futexes
2026-03-18 21:02:09 +00:00
wash
30c9c9db45
kernel: add futex definitions
2026-03-15 22:22:58 +00:00
wash
0af35c70ef
vm: implement demand-paging via userspace services with vm-controller
2026-03-14 22:39:14 +00:00
wash
2d267d2b51
kernel: add a syscall to duplicate a handle
2026-03-14 22:31:37 +00:00
wash
b7f3bd77a7
libmango: update syscall definitions
2026-03-14 22:29:29 +00:00
wash
c628390f4a
vm: replace vm-region with address-space
...
address-space is a non-recursive data structure, which contains a flat list of vm_areas representing
mapped vm-objects.
userspace programs can no longer create sub-address-spaces. instead, they can reserve portions of
the address space, and use that reserved space to create mappings.
2026-03-13 19:44:50 +00:00
wash
f67d3a0cb9
libmango: update syscall definitions
2026-03-12 20:42:50 +00:00
wash
2fb8f556b4
kernel: implement a generic object signalling system
2026-03-12 20:40:23 +00:00
wash
921c91c02a
vm: add vm-controller object
2026-03-12 20:39:28 +00:00
wash
3fd608b623
kernel: add equeue object
...
equeue is a way for the kernel to deliver events to userspace programs.
2026-03-12 20:37:51 +00:00
wash
de520cdd2d
libmango: types: add macro to define a kern_msg_handle_t
2026-03-10 19:08:49 +00:00
wash
1d4cb882a8
libmango: types: add ssize_t definition
2026-03-06 20:12:32 +00:00
wash
09d292fd09
kernel: msg: include details about who sent a message
2026-03-05 21:04:02 +00:00
wash
36c5ac7837
kernel: re-implement sending handles via port messages
2026-03-01 19:10:01 +00:00
wash
e4de3af00d
kernel: remove support for sending kernel handles via port/channel
2026-02-26 20:53:47 +00:00
wash
11c741bd68
libmango: add nr_read output param to msg_read
2026-02-23 21:51:26 +00:00
wash
5f0654430d
syscall: add task_self, task_get_address_space, and vm_region_kill
2026-02-23 18:43:49 +00:00
wash
37ae7aeef7
kernel: implement globally-unique object ids
2026-02-23 18:32:11 +00:00
wash
2537ca46de
libmango: add macros for easily defining msg and iovec variables
2026-02-21 11:29:25 +00:00
wash
3190035086
libmango: add temporary formatted log function
2026-02-21 11:28:58 +00:00
wash
9a90662eaa
libmango: add userspace syscall call-gates
2026-02-19 19:22:06 +00:00
wash
6019c9307d
kernel: separate headers into kernel and user headers
...
all kernel headers have been moved from include/mango to include/kernel
and include definitions that are only relevant to kernel-space.
any definitions that are relevant to both kernel- and user-space
(i.e. type definitions, syscall IDs) have been moved to
include/mango within libmango.
2026-02-19 18:54:48 +00:00