Build original Ada port core, V client, and x86-64 boot milestone

This commit is contained in:
Admin committed 2026-11-01 16:07:00 +08:00
1 parent 9af96aa1e1
commit fc2bee6f32
28 files changed
+865 -7

No files matched your search

+29
View File
@@ -0,0 +1,29 @@
module main
#flag -I @VMODROOT/include
#flag -L @VMODROOT/build/lib
#flag -lagila_host
#include "agila_ports.h"
fn C.agila_port_create(u32) u32
fn C.agila_port_allow_sender(u32,u32,u32) int
fn C.agila_port_revoke_sender(u32,u32,u32) int
fn C.agila_port_send(u32,u32,u32) int
fn C.agila_port_receive(u32,u32,&u32) int
fn C.agila_port_close(u32,u32) int
fn main() {
owner := u32(10)
worker := u32(20)
port := C.agila_port_create(owner)
assert port != 0
assert C.agila_port_send(port,worker,42) == 2 // denied until owner grants
assert C.agila_port_allow_sender(port,owner,worker) == 0
assert C.agila_port_send(port,worker,42) == 0
mut value := u32(0)
assert C.agila_port_receive(port,owner,&value) == 0
assert value == 42
assert C.agila_port_revoke_sender(port,owner,worker) == 0
assert C.agila_port_send(port,worker,7) == 2
assert C.agila_port_close(port,owner) == 0
assert C.agila_port_send(port,owner,7) == 1
println('ADA_V_PORTS_OK value=${value}')
println('Host ABI demo: caller IDs are trusted inputs; no process isolation is claimed.')
}