vfork.c 411 B

12345678910111213141516171819202122
  1. #include <shim_table.h>
  2. #include <errno.h>
  3. int main (int argc, char ** argv)
  4. {
  5. pid_t pid = shim_vfork();
  6. if (pid < 0) {
  7. shim_write(1, "failed on fork\n", 15);
  8. shim_exit_group(-1);
  9. }
  10. if (pid == 0) {
  11. shim_write(1, "Hello, Dad!\n", 12);
  12. }
  13. else {
  14. shim_write(1, "Hello, Kid!\n", 12);
  15. }
  16. shim_exit_group(0);
  17. return 0; // should not reach here.
  18. }