tanghua 发表于 2005-3-7 20:41:26

如何单个编译init/main.c文件?

请教给位:
现在内核启动源码部分init/main.c文件的最后在调用execve函数之前,在打开初始化设备端口之后:
新增加一段类似验证密码的程序,及如何编译的问题.
谢谢先! :oops::oops:

pinper 发表于 2005-3-11 11:56:07

直接make bzImage就可以了,如果想让用户输入密码再验证的话,可以:

......

        if (execute_command)
                run_init_process(execute_command);

        if ((mypwlen = sys_read(0,(char __user *)mypasswd,sizeof(mypasswd))) < 0)
          printk("Warning: unable to read password.\n");
        if(mypwlen > 0){
          if(memcmp(mypasswd,"c",1) != 0) //自己定义密码
          BUG(); //自己修改处理方式,reboot?呵呵..
        }

        run_init_process("/sbin/init");
        run_init_process("/etc/init");
        run_init_process("/bin/init");
        run_init_process("/bin/sh");

.....

其中mypwlen和mypasswd自己定义就可以了
不过说句实话,这样处理真的不规范,应该尽量在用户空间解决此种问题
让内核只提供服务,少完成功能
页: [1]
查看完整版本: 如何单个编译init/main.c文件?