⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 init.c

📁 美国mit操作系统课程所用的一个教学操作系统xv6
💻 C
字号:
// init: The initial user-level program#include "types.h"#include "stat.h"#include "user.h"#include "fcntl.h"char *sh_args[] = { "sh", 0 };intmain(void){  int pid, wpid;  if(open("console", O_RDWR) < 0){    mknod("console", 1, 1);    open("console", O_RDWR);  }  dup(0);  // stdout  dup(0);  // stderr  for(;;){    printf(1, "init: starting sh\n");    pid = fork();    if(pid < 0){      printf(1, "init: fork failed\n");      exit();    }    if(pid == 0){      exec("sh", sh_args);      printf(1, "init: exec sh failed\n");      exit();    }    while((wpid=wait()) >= 0 && wpid != pid)      printf(1, "zombie!\n");  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -