[kernel] Add channel objects
Add the channel object for sending messages between threads. Currently no good of passing channels to other threads, but global variables in a single process work. Currently channels are slow and do double copies, need to refine more. Tags: ipc
This commit is contained in:
@@ -8,9 +8,12 @@
|
||||
|
||||
#define j6_status_ok 0x0000
|
||||
|
||||
#define j6_status_closed 0x1000
|
||||
#define j6_status_destroyed 0x1001
|
||||
|
||||
#define j6_err_nyi j6_err(0x0001)
|
||||
#define j6_err_unexpected j6_err(0x0002)
|
||||
#define j6_err_invalid_arg j6_err(0x0003)
|
||||
#define j6_err_not_ready j6_err(0x0004)
|
||||
#define j6_err_insufficient j6_err(0x0005)
|
||||
|
||||
|
||||
@@ -13,6 +13,11 @@
|
||||
// Thread signals
|
||||
#define j6_signal_thread_exit (1ull << 16)
|
||||
|
||||
// Channel signals
|
||||
#define j6_signal_channel_closed (1ull << 16)
|
||||
#define j6_signal_channel_can_send (1ull << 17)
|
||||
#define j6_signal_channel_can_recv (1ull << 18)
|
||||
|
||||
// Signals 48-63 are user-defined signals
|
||||
#define j6_signal_user0 (1ull << 48)
|
||||
#define j6_signal_user1 (1ull << 49)
|
||||
|
||||
Reference in New Issue
Block a user