vfork-rs is used in embedded low memory to run an external program and read the stdout output.
Just like the name, the vfork-rs uses the linux vfork syscall. the vfork syscall is used to create new processes without copying the page tables of the parent process.
Used in linux only.
use vfork::Command;fnmain(){let s = "hello, world!";letmut cmd = Command::new("/bin/echo").arg(s).spawn().expect("failed to execute process");let status_code = cmd.wait().expect("failed to wait process");assert_eq!(0, status_code.code());let output = cmd.output().expect("failed to get output");assert_eq!(String::from_utf8_lossy(&output), s);}