wash
c425d6e389
kernel: implement support for magenta_debug over serial
2026-06-06 17:51:44 +01:00
wash
249ac7a8cf
ds: add a ringbuffer data structure
2026-06-06 17:50:23 +01:00
wash
1db6de6bc2
meta: rename kernel to Magenta
2026-04-30 20:30:36 +01:00
wash
d63c2dbd12
vm: object: add prefetch function to fetch missing pages
2026-04-30 19:09:41 +01:00
wash
607efa961f
sched: task: implement task_config_get and task_config_set
2026-04-30 19:08:02 +01:00
wash
02a44f67b9
sched: task: implement task creation flags
2026-04-30 19:06:46 +01:00
wash
d5c7a9f030
pmap: add functions for flushing all/parts of the TLB
2026-04-30 18:59:08 +01:00
wash
278fe39c0d
vm: implement private and shared address space mappings
...
whether a mapping is private or shared determines how the mapping is handled
when a task is duplicated.
2026-04-21 21:12:00 +01:00
wash
4a9e907a75
vm: implement lazy-attach cow-duplication of vm-objects attached to a controller
2026-04-19 20:16:19 +01:00
wash
f1dd9d8564
kernel: handle: init handle table duplication
2026-04-19 20:07:51 +01:00
wash
9a9b0f63ba
sched: task: optional handle_table pointer can now be passed to task_create
2026-04-19 20:04:18 +01:00
wash
b52890d842
kernel: object: add missing parentheses to OBJECT_CAST
2026-04-19 20:00:16 +01:00
wash
b92542c688
syscall: handle: add stub implementation of kern_handle_control
2026-04-01 18:41:33 +01:00
wash
b8d3125233
syscall: task: initial implementation of task_duplicate
2026-04-01 18:40:28 +01:00
wash
a0cab068da
vm: address-space: implement copy-on-write address-space duplication
2026-04-01 18:36:25 +01:00
wash
2cbfa7d7d2
vm: object: implement creating copy-on-write duplicates of vm-objects
2026-04-01 18:33:24 +01:00
wash
4143e12a29
vm: add a copy-on-write ref count to vm_page
2026-04-01 18:32:32 +01:00
wash
f28fab7afa
vm: object: implement vm_object_put_page to add existing pages to a vmo
2026-04-01 18:31:05 +01:00
wash
6c5bf2344f
sched: thread: implement cloning of userspace thread contexts
2026-04-01 18:29:54 +01:00
wash
61050fd54b
kernel: atomic: change atomic_t to 32-bit int
2026-04-01 18:27:31 +01:00
wash
dd34b1d80f
pmap: add pmap_get to retrieve existing page table entries
2026-04-01 18:24:13 +01:00
wash
876f91d8be
sched: thread: add cpu context pointer usable during interrupts and syscalls
2026-04-01 18:22:23 +01:00
wash
7bcd1577be
pmap: fix PFN() not clearing upper PTE control bits
2026-04-01 18:20:50 +01:00
wash
512356ac2d
sched: enforce ref-counting on current task/thread pointers
2026-04-01 18:17:05 +01:00
wash
8b41f5e681
kernel: remove unused functionality
2026-03-29 14:54:07 +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
537242e606
kernel: handle: add support for allocating a specific handle value
2026-03-29 11:47:22 +01:00
wash
f5a83af0d7
kernel: remove SEND_BLOCKED and REPLY_BLOCKED statuses from ports
...
this allows a port to be used by multiple threads at the same time
2026-03-29 11:42:23 +01:00
wash
95d33ddcb9
kernel: msg: async messages no longer hold a pointer to the thread/port that sent them
...
this prevents a race condition where an event is sent as a port is being destroyed.
when the server gets around to handling the event, it now refers to a different port
that was created in the mean-time.
2026-03-25 20:19:19 +00:00
wash
a0a6a061a4
vm: controller: add an auto-detach flag for vm-objects
2026-03-24 20:24:12 +00:00
wash
4be642f2e5
vm: controller: implement asynchronous DETACH page requests
2026-03-24 20:21:35 +00:00
wash
7dc0c742fa
kernel: rebuild object ref-counting using atomic types
2026-03-24 19:10:36 +00:00
wash
9faa11cddc
kernel: add atomic operations
2026-03-24 19:09:36 +00: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
4551e7b2e6
sched: implement various ways to end tasks and threads
2026-03-18 21:07:43 +00:00
wash
e03b2e07d0
vm: address-space: implement address space cleanup
2026-03-18 21:07:27 +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
b774415f64
sched: wait: implement wakeup_n, waitqueue_empty
2026-03-18 20:56:15 +00:00
wash
1eef23ea98
thread: store struct msg on the stack instead of in the thread
2026-03-18 20:52:47 +00:00
wash
30c9c9db45
kernel: add futex definitions
2026-03-15 22:22:58 +00:00
wash
8a38d940cc
vm: address-space: add function to translate virtual addresses to physical
2026-03-15 22:22:25 +00:00
wash
a2e918c428
vm: evict PTE entries for transferred vm-object pages
2026-03-15 14:40:24 +00:00
wash
0af35c70ef
vm: implement demand-paging via userspace services with vm-controller
2026-03-14 22:39:14 +00:00
wash
f04c524bb5
vm: object: implement transferring pages between objects
2026-03-14 22:38:14 +00:00
wash
5d04dbb15a
kerne: object: add lock_pair() functions to object lock template macro
2026-03-14 22:32:59 +00:00
wash
2d267d2b51
kernel: add a syscall to duplicate a handle
2026-03-14 22:31:37 +00:00
wash
62bdb51618
kernel: add functions to lock/unlock a pair of locks without saving irq flags
2026-03-14 22:25:15 +00:00