安装完Bochs后文件目录如下:
其中bochsrc-hd.bxrc为配置文件,定义了该linux操作系统的磁盘文件是什么以及其它各类配置:
双击bochsrc-hd.bxrc即可打开该linux操作系统:
如果要将Windows中的文件放入该linux系统,可按如下步骤操作:
首先我们需要借助winma80文件:
在bochsrc-hd.bxrc中我们可以看到该linux系统以文件中的disca为磁盘,所以我们打开disca:
然后把Windows中的文件拖入即可,此处放入的文件Myshell.c代码如下:
#include "stdio.h"
#include "string.h"
#include <unistd.h>
#include <sys/wait.h>
int main()
{
char cmd[256];
char *command[64];
char *s = " ";
char *token;
int i;
pid_t pid;
char path[256];
while (1)
{
printf("Sh>> ");
fflush(stdout);
gets(cmd);
token = strtok(cmd, s);
i=0;
while (token != NULL)
{
command[i] = token;
token = strtok(NULL, s);
i++;
}
command[i] = NULL;
if (strcmp(command[0], "exit") == 0)
exit(0);
pid = fork();
if (pid == 0)
{
if (strcmp(command[0], "cd") == 0)
{
chdir(command[1]);
printf("%s\n",getcwd(path,256));
exit(0);
}
else
{
execvp(command[0], command);
perror("fork error");
exit(1);
}
}
wait(NULL);
}
return 0;
}
然后保存退出。
打开boch的linux系统,看b盘(以disca为磁盘)下的文件:
mdir b:
可以看见Myshell.c文件已成功放入linux系统。
如果想要对其编译,我们需要将其放入根目录下:
mcopy b:./myshell.c .
可以看见我们的root目录下有了myshell.c:
ls
编译文件:
gcc -o mysh myshell.c
尝试运行:
./mysh
成功