diff --git a/Cargo.lock b/Cargo.lock index fd3c691..dfa0777 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -57,11 +57,10 @@ dependencies = [ "display-server", "driver-framebuffer-mock", "driver-framebuffer-virtio", + "libkos", "port-framebuffer", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -127,9 +126,8 @@ dependencies = [ name = "echo" version = "0.1.0" dependencies = [ + "libkos", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -148,7 +146,7 @@ version = "0.1.0" name = "hello" version = "0.1.0" dependencies = [ - "userspace-rt", + "libkos", ] [[package]] @@ -163,9 +161,8 @@ name = "init" version = "0.1.0" dependencies = [ "elf", + "libkos", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -175,21 +172,19 @@ dependencies = [ "driver-input-uart", "driver-input-virtio", "input-server", + "libkos", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] name = "input-server" version = "0.1.0" dependencies = [ + "libkos", "port-input-device", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -205,14 +200,20 @@ dependencies = [ name = "keychain-server" version = "0.1.0" +[[package]] +name = "libkos" +version = "0.1.0" +dependencies = [ + "types", +] + [[package]] name = "log-server" version = "0.1.0" dependencies = [ + "libkos", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -235,10 +236,9 @@ version = "0.1.0" name = "permission-manager" version = "0.1.0" dependencies = [ + "libkos", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -276,18 +276,17 @@ version = "0.1.0" name = "server-framework" version = "0.1.0" dependencies = [ + "libkos", "types", - "userspace", ] [[package]] name = "session-server" version = "0.1.0" dependencies = [ + "libkos", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] @@ -295,18 +294,17 @@ name = "snake" version = "0.1.0" dependencies = [ "display-server", + "libkos", "server-framework", "types", - "userspace", - "userspace-rt", ] [[package]] name = "storage-qemu" version = "0.1.0" dependencies = [ + "libkos", "storage-server", - "userspace-rt", ] [[package]] @@ -314,10 +312,10 @@ name = "storage-server" version = "0.1.0" dependencies = [ "driver-block-virtio", + "libkos", "port-block-device", "server-framework", "types", - "userspace", ] [[package]] diff --git a/crates/apps/echo/Cargo.toml b/crates/apps/echo/Cargo.toml index c919ae8..029e3a1 100644 --- a/crates/apps/echo/Cargo.toml +++ b/crates/apps/echo/Cargo.toml @@ -10,5 +10,5 @@ bench = false [dependencies] types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } diff --git a/crates/apps/echo/src/main.rs b/crates/apps/echo/src/main.rs index e2bb2fb..54ccd2e 100644 --- a/crates/apps/echo/src/main.rs +++ b/crates/apps/echo/src/main.rs @@ -1,10 +1,10 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; use types::bounded::CapSlot; -use userspace::syscall; +use libkos::syscall; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/apps/hello/Cargo.toml b/crates/apps/hello/Cargo.toml index 889ff7d..32c0564 100644 --- a/crates/apps/hello/Cargo.toml +++ b/crates/apps/hello/Cargo.toml @@ -9,4 +9,4 @@ test = false bench = false [dependencies] -userspace-rt = { workspace = true } +libkos = { workspace = true } diff --git a/crates/apps/hello/src/main.rs b/crates/apps/hello/src/main.rs index afd92d4..584a5b2 100644 --- a/crates/apps/hello/src/main.rs +++ b/crates/apps/hello/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/apps/snake/Cargo.toml b/crates/apps/snake/Cargo.toml index 93d7ce7..5ae4302 100644 --- a/crates/apps/snake/Cargo.toml +++ b/crates/apps/snake/Cargo.toml @@ -10,7 +10,7 @@ bench = false [dependencies] types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } display-server = { workspace = true } server-framework = { workspace = true } diff --git a/crates/apps/snake/src/main.rs b/crates/apps/snake/src/main.rs index 7f48397..c5fd63b 100644 --- a/crates/apps/snake/src/main.rs +++ b/crates/apps/snake/src/main.rs @@ -1,14 +1,14 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; use snake::game::{Direction, GameState, Snake}; use snake::renderer::{self, RenderCommand}; use types::bounded::CapSlot; use types::display::{Color, Dimension, ScreenCoord}; use types::time::Ticks; -use userspace_rt::syscall; +use libkos::syscall; use server_framework::Encode; use display_server::protocol::DisplayRequest; diff --git a/crates/bins/display-qemu/Cargo.toml b/crates/bins/display-qemu/Cargo.toml index 9d3438d..658f371 100644 --- a/crates/bins/display-qemu/Cargo.toml +++ b/crates/bins/display-qemu/Cargo.toml @@ -10,8 +10,8 @@ bench = false [dependencies] types = { workspace = true } -userspace-rt = { workspace = true } -userspace = { workspace = true } +libkos = { workspace = true } + server-framework = { workspace = true } display-server = { workspace = true } driver-framebuffer-virtio = { workspace = true } diff --git a/crates/bins/display-qemu/src/main.rs b/crates/bins/display-qemu/src/main.rs index 60bcab1..c24ba05 100644 --- a/crates/bins/display-qemu/src/main.rs +++ b/crates/bins/display-qemu/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; use types::bounded::CapSlot; @@ -15,7 +15,7 @@ extern "C" fn main() { run_mock(ep); } - loop { userspace::syscall::yield_now(); } + loop { libkos::syscall::yield_now(); } } #[inline(never)] diff --git a/crates/bins/input-qemu/Cargo.toml b/crates/bins/input-qemu/Cargo.toml index 9af6057..e20b619 100644 --- a/crates/bins/input-qemu/Cargo.toml +++ b/crates/bins/input-qemu/Cargo.toml @@ -10,8 +10,8 @@ bench = false [dependencies] types = { workspace = true } -userspace-rt = { workspace = true } -userspace = { workspace = true } +libkos = { workspace = true } + server-framework = { workspace = true } input-server = { workspace = true } driver-input-uart = { workspace = true } diff --git a/crates/bins/input-qemu/src/main.rs b/crates/bins/input-qemu/src/main.rs index 42faa40..29a249d 100644 --- a/crates/bins/input-qemu/src/main.rs +++ b/crates/bins/input-qemu/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; use types::bounded::CapSlot; @@ -15,7 +15,7 @@ extern "C" fn main() { run_uart(ep); } - loop { userspace::syscall::yield_now(); } + loop { libkos::syscall::yield_now(); } } #[inline(never)] diff --git a/crates/bins/storage-qemu/Cargo.toml b/crates/bins/storage-qemu/Cargo.toml index a99e70a..df9d116 100644 --- a/crates/bins/storage-qemu/Cargo.toml +++ b/crates/bins/storage-qemu/Cargo.toml @@ -9,5 +9,5 @@ test = false bench = false [dependencies] -userspace-rt = { workspace = true } +libkos = { workspace = true } storage-server = { workspace = true } diff --git a/crates/bins/storage-qemu/src/main.rs b/crates/bins/storage-qemu/src/main.rs index 02c800c..2c7e042 100644 --- a/crates/bins/storage-qemu/src/main.rs +++ b/crates/bins/storage-qemu/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/init/Cargo.toml b/crates/init/Cargo.toml index 8a61eb2..a0cc289 100644 --- a/crates/init/Cargo.toml +++ b/crates/init/Cargo.toml @@ -11,5 +11,5 @@ bench = false [dependencies] elf = { workspace = true } types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } diff --git a/crates/init/src/lib.rs b/crates/init/src/lib.rs index 4f94e98..e5f4719 100644 --- a/crates/init/src/lib.rs +++ b/crates/init/src/lib.rs @@ -3,7 +3,7 @@ use types::address::{EntryPoint, StackPointer, VirtualAddress}; use types::bounded::{CapSlot, PageCount}; use types::permission::{Permission, PermissionSet}; -use userspace::syscall; +use libkos::syscall; const PAGE_SIZE: usize = 4096; const USER_CODE_BASE: usize = 0x10000; diff --git a/crates/init/src/main.rs b/crates/init/src/main.rs index 0ed7516..df64c5e 100644 --- a/crates/init/src/main.rs +++ b/crates/init/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main(shared_buf: usize) { diff --git a/crates/servers/input-server/Cargo.toml b/crates/servers/input-server/Cargo.toml index d097af9..ffbfc60 100644 --- a/crates/servers/input-server/Cargo.toml +++ b/crates/servers/input-server/Cargo.toml @@ -14,7 +14,7 @@ qemu-virt = [] [dependencies] types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } server-framework = { workspace = true } port-input-device = { workspace = true } diff --git a/crates/servers/input-server/src/lib.rs b/crates/servers/input-server/src/lib.rs index d16f26d..a5a27d7 100644 --- a/crates/servers/input-server/src/lib.rs +++ b/crates/servers/input-server/src/lib.rs @@ -18,5 +18,5 @@ pub fn run() -> ! { let mut srv = server::InputServer::new(device); let ep = types::bounded::CapSlot::new(0).unwrap(); server_framework::serve(&mut srv, ep); - loop { userspace::syscall::yield_now(); } + loop { libkos::syscall::yield_now(); } } diff --git a/crates/servers/input-server/src/main.rs b/crates/servers/input-server/src/main.rs index 5b380dd..9214d68 100644 --- a/crates/servers/input-server/src/main.rs +++ b/crates/servers/input-server/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/servers/log-server/Cargo.toml b/crates/servers/log-server/Cargo.toml index 329566b..43357c9 100644 --- a/crates/servers/log-server/Cargo.toml +++ b/crates/servers/log-server/Cargo.toml @@ -10,6 +10,6 @@ bench = false [dependencies] types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } server-framework = { workspace = true } diff --git a/crates/servers/log-server/src/lib.rs b/crates/servers/log-server/src/lib.rs index 6a2873c..a8b2011 100644 --- a/crates/servers/log-server/src/lib.rs +++ b/crates/servers/log-server/src/lib.rs @@ -11,5 +11,5 @@ pub fn run() -> ! { let mut srv = server::LogServer::new(); let ep = types::bounded::CapSlot::new(0).unwrap(); server_framework::serve(&mut srv, ep); - loop { userspace::syscall::yield_now(); } + loop { libkos::syscall::yield_now(); } } diff --git a/crates/servers/log-server/src/main.rs b/crates/servers/log-server/src/main.rs index 5266d7b..0257170 100644 --- a/crates/servers/log-server/src/main.rs +++ b/crates/servers/log-server/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/servers/permission-manager/Cargo.toml b/crates/servers/permission-manager/Cargo.toml index f263086..1df0fdc 100644 --- a/crates/servers/permission-manager/Cargo.toml +++ b/crates/servers/permission-manager/Cargo.toml @@ -10,6 +10,6 @@ bench = false [dependencies] types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } server-framework = { workspace = true } diff --git a/crates/servers/permission-manager/src/lib.rs b/crates/servers/permission-manager/src/lib.rs index 462d863..d33b944 100644 --- a/crates/servers/permission-manager/src/lib.rs +++ b/crates/servers/permission-manager/src/lib.rs @@ -11,5 +11,5 @@ pub fn run() -> ! { let mut srv = server::PermissionManager::new(); let ep = types::bounded::CapSlot::new(0).unwrap(); server_framework::serve(&mut srv, ep); - loop { userspace::syscall::yield_now(); } + loop { libkos::syscall::yield_now(); } } diff --git a/crates/servers/permission-manager/src/main.rs b/crates/servers/permission-manager/src/main.rs index 19f5ef9..ddf9cf0 100644 --- a/crates/servers/permission-manager/src/main.rs +++ b/crates/servers/permission-manager/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/servers/session-server/Cargo.toml b/crates/servers/session-server/Cargo.toml index 32ef580..f562a83 100644 --- a/crates/servers/session-server/Cargo.toml +++ b/crates/servers/session-server/Cargo.toml @@ -10,6 +10,6 @@ bench = false [dependencies] types = { workspace = true } -userspace = { workspace = true } -userspace-rt = { workspace = true } + +libkos = { workspace = true } server-framework = { workspace = true } diff --git a/crates/servers/session-server/src/lib.rs b/crates/servers/session-server/src/lib.rs index 06de752..50c6097 100644 --- a/crates/servers/session-server/src/lib.rs +++ b/crates/servers/session-server/src/lib.rs @@ -13,5 +13,5 @@ pub fn run() -> ! { srv.register_app("snake", "/apps/snake.elf"); let ep = types::bounded::CapSlot::new(0).unwrap(); server_framework::serve(&mut srv, ep); - loop { userspace::syscall::yield_now(); } + loop { libkos::syscall::yield_now(); } } diff --git a/crates/servers/session-server/src/main.rs b/crates/servers/session-server/src/main.rs index a01e66b..ad6cc11 100644 --- a/crates/servers/session-server/src/main.rs +++ b/crates/servers/session-server/src/main.rs @@ -1,7 +1,7 @@ #![no_std] #![no_main] -extern crate userspace_rt; +extern crate libkos; #[unsafe(no_mangle)] extern "C" fn main() { diff --git a/crates/servers/session-server/src/server.rs b/crates/servers/session-server/src/server.rs index 1a5700d..b904f9c 100644 --- a/crates/servers/session-server/src/server.rs +++ b/crates/servers/session-server/src/server.rs @@ -72,7 +72,7 @@ impl SessionServer { None => return SessionResponse::NotFound, }; - let process_cap = match userspace::syscall::create_process(self.create_cap) { + let process_cap = match libkos::syscall::create_process(self.create_cap) { Some(cap) => cap, None => return SessionResponse::Error, }; diff --git a/crates/servers/storage-server/Cargo.toml b/crates/servers/storage-server/Cargo.toml index 5777a8d..71c2991 100644 --- a/crates/servers/storage-server/Cargo.toml +++ b/crates/servers/storage-server/Cargo.toml @@ -5,7 +5,8 @@ edition = "2024" [dependencies] types = { workspace = true } -userspace = { workspace = true } + server-framework = { workspace = true } port-block-device = { workspace = true } driver-block-virtio = { workspace = true } +libkos = { workspace = true } diff --git a/crates/servers/storage-server/src/lib.rs b/crates/servers/storage-server/src/lib.rs index ca383b9..2289c11 100644 --- a/crates/servers/storage-server/src/lib.rs +++ b/crates/servers/storage-server/src/lib.rs @@ -10,7 +10,7 @@ pub mod server; #[path = "tests/mod.rs"] mod tests; -use userspace::syscall; +use libkos::syscall; const CMD_READ_FILE: usize = 1; const SHARED_BUF_VA: usize = 0x30000;