学习了8.1-8.6。 1.每个进程都有个进程标识符,pid,是唯一独一无二的。但是,如果一个进程终止了,那么他的进程标识符就可以再次使用了。但是为了防止弄混,使用实现延迟重用算法。 2.进程ID为0的进程为系统进程,内核的一部分,常常被称为交换进程。进程ID为1是init进程。他是孤儿进程的新父进 ...
分类:
其他好文 时间:
2016-12-20 20:35:00
阅读次数:
157
Hi,大家好!我是CrazyCatJack。今天给大家讲解Linux根文件系统的init进程和busybox的配置及编译。 先简单介绍一下,作为一个嵌入式系统,要想在硬件上正常使用的话。它的软件组成大概有这三部分:1)bootloader 2)嵌入式系统kernel 3)根文件系统 。这其实非常好理 ...
分类:
系统相关 时间:
2016-12-17 01:28:33
阅读次数:
418
阻塞IO机制:使用等待队列 1.定义等待队列头 wait_queue_head_t read_wait; 2.初始化等待队列头 init_waitqueue_head(wait_queue_head_t *q); 3.让进程等待int wait_event(wait_queue_head_t wq ...
分类:
系统相关 时间:
2016-12-11 15:53:58
阅读次数:
187
简述: 1.开机BIOS自检 2.MBR引导 3.grub引导菜单 4.加载内核kernel 5.启动init进程 6.读取inittab文件,执行rc.sysinit,rc等脚本 7.启动mingetty,进入系统登陆界面 来个简图: 如果缩略了请点击图片获得大图。 更详细的说明(一般来说没必要了 ...
分类:
系统相关 时间:
2016-12-05 22:35:46
阅读次数:
212
到了Android6.0,Init进程使用c++来写了,不过没有关系,它和c写的init没有太大的区别。
Init进程的入口代码是:system\core\init\init.cpp
main函数...
分类:
移动开发 时间:
2016-11-18 12:25:37
阅读次数:
680
Linux完成内核(Kernel)引导后,会由init初始化进程调用/etc/inittab配置文件(ps -aux | less,init进程号为始终为1,是所有系统进程的起点,init进程也有一个PID为0的父进程Kernel Scheduler,该进程用来分配CPU时间和进行进程间切换。)。 ...
分类:
其他好文 时间:
2016-10-31 21:22:02
阅读次数:
179
1、进程简介 2、系统进程信息 3、进程创建 4、进程终止 进程简介 系统启动的第一个进程是init进程,系统中的其他进程都由此进程产生并受它控制。所谓进程,被认为是一个具有独立功能的程序,在一个数据集合上的一次动态执行过程。但,需要注意,一个进程只能对应一个程序。 进程通常由3部分组成:程序、数据 ...
分类:
系统相关 时间:
2016-10-20 14:56:11
阅读次数:
234
Linux系统的启动方式有点复杂,而且总是有需要优化的地方。传统的Linux系统启动过程主要由著名的init进程(也被称为SysV init启动系统)处理,而基于init的启动系统被认为有效率不足的问题,systemd是Linux系统机器的另一种启动方式,宣称弥补了以传统Linux SysV ini ...
分类:
系统相关 时间:
2016-10-08 16:46:10
阅读次数:
202
考虑下面两种情况: 第一种:父进程 先于 子进程 退出。 发生此种情况的时候,子进程便成为 孤儿进程。系统中的所有孤儿进程都会被 init 进程领养,init 进程的进程 ID 始终为 1。系统内当有进程终止的时候,内核会去检查所有的进程是否为该终止进程的子进程,如果是,则将其父进程 ID 修改为 ...
分类:
系统相关 时间:
2016-10-01 16:56:57
阅读次数:
158
面试中经常遇到说,请简要回答一下Linux系统的开机启动过程? 加载BIOS–>读取MBR–>Boot Loader–>加载内核–>用户层init依据inittab文件来设定系统运行的等级(一般3或者5,3是多用户命令行,5是界面)–>init进程执行rc.syninit–>启动内核模块–>执行不同 ...
分类:
系统相关 时间:
2016-09-14 19:08:49
阅读次数:
217