根文件系统如何启动第一个程序

本文深入探讨了Linux系统中init进程的工作原理,包括内核挂接文件系统后的初始化过程,如打开标准输入输出、执行run_init_process函数等步骤,并详细解析了配置文件的读取与执行流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内核挂接上跟文件系统之后:
启动第一个引用程序init:
1、open()标准输入输出、标准错误

2、执行函数run_init_process(execute_command);
      init程序:(1)读取配置文件;(2)解析配置文件;(3)根据这些配置文件执行用户程序;
  parse_initab();
      new_init_action():(1)创建一个init_action的结构体并用其参数填充;(2)把结构体放入init_action_list链表;
    
     run_action(sysinit);
      waitfor(a,0)运行应用程序,等待它执行接受;
      run(a)  :创建process子进程;
      waitpid(runpid,,0);等待子进程执行结束;
     delete_init_action(a): 在init_action_list链表里删掉它;

  







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值