Rust中的容器运行时 - 第二部分
克隆容器进程和父子通信。
本系列的第一部分描述了文件系统布局以及运行时如何将容器进程囚禁在容器的根文件系统中。
第二部分更深入地探讨了实现,并展示了运行时如何创建子进程以及它们如何通信,直到用户定义的进程启动。它还将描述如何设置伪终端并展示其重要性Unix 套接字。
到本部分结束时,我们应该有一个可与 Docker 互操作的基本运行时。
ReadMore:https://itnext.io/container-runtime-in-rust-part-ii-9c88e99d8cbc
Rust 的动态类型 dyn_struct
这个库可以安全地初始化动态大小类型 (DST)。
#[repr(C)]
#[derive(DynStruct)]
struct MyDynamicType {
pub awesome: bool,
pub number: u32,
pub dynamic: [u32],
}
// the `new` function is generated by the `DynStruct` macro.
let foo: Box<MyDynamicType> = MyDynamicType::new(true, 123, [4, 5, 6, 7]);
assert_eq!(foo.awesome, true);
assert_eq!(foo.number, 123);
assert_eq!(&foo.dynamic, &[4, 5, 6, 7]);
ReadMore:https://github.com/nolanderc/dyn_struct
From 日报小组 冰山上的 mook && Mike
社区学习交流平台订阅:
1
共 0 条评论, 1 页
评论区
写评论还没有评论