//char *argv1[]={"xterm","/bin/foolstart",0}; char *argv1[]={"xterm","/bin/fsh",0}; //char *argv1[]={"xterm","/bin/vim",0}; //char *argv1[]={"xterm","/bin/nc",0}; char *env1[]={"HOME=/home/miguel","PS1=\033[34m$\033[37m","PWD=/home/miguel","PATH=/bin","TERM=fool-term",0}; int main(int argc, char **argv) { execve("/bin/xterm",argv1,env1); /* int pid=fork(); if(!pid) { execve("/bin/xterm",argv1,env1); } else { while(1) { _gui_win(); vesa_init(0); void *tty=terminal_init_vesa(); getchar(); terminal_put('X'); } } */ } /* int pid=_fork(); if(pid==0) { _execve("/bin/xterm",NULL,NULL); int pid=_fork(); if(pid==0) { _execve("/bin/xterm",NULL,NULL); } else { _execve("/bin/xterm",NULL,NULL); } } else { _execve("/bin/xterm",NULL,NULL); while(1); // block int pid=_fork(); if(pid==0) { _execve("/bin/pain2",NULL,NULL); } else { _execve("/bin/pain1",NULL,NULL); //_execve("/bin/pain3",NULL,NULL); } } return 0; // // char *argv1[]={"/bin/fsh",0}; // char *env1[]={"HOME=/home/miguel","PS1=\033[34m$\033[37m","PWD=/home/miguel","PATH=/bin","TERM=fool-term",0}; // loop forever and spawn shells if the top-shell exits while(1) { int pid=_fork(); if(pid==0) { printf("fool-init: spawning fool-shell\n"); _execve("/bin/fsh",argv1,env1); // replace process with our foolshell :) while(1) puts("FATAL ERROR: Something terrible happened. Unable to Execute SHELL!\n"); } // wait until our child process state changes (exits) // and respawn SHELL _wait(pid); printf("fool-init: respawning new fool-shell\n"); } return 0; } */