计算机启动
- 位于ROM中的引导程序初始化系统的所有部分(CPU寄存器, 设备控制器, 内存)
- 定位操作系统内核并装入内存
- 操作系统执行第一个进程(e.g.init)
- 等待事件(硬件/软件中断)发生并处理
中断驱动
操作系统中事件的发生通常都是通过中断表征的
硬件中断
通过总线向CPU发信号, 触发中断
软件中断
通过系统调用引发中断
进程创建
Linux中用fork()创建进程, 创建后返回值0则为子进程, 否则为父进程. 两个进程有完全相同的信息, 因此可在代码中分别继续执行.
子进程运行结束后不会立刻被回收, 而是进入终止状态, 直到被父进程回收. 如果父进程已经消失, 则Linux将init进程(所有进程的祖父进程, 在操作系统启动时创建), 由它负责关闭该进程.