Android init.rc文件详

本文主要来自$Android_SOURCE/system/init/readme.txt的翻译. 1 简述 Android init.rc文件由系统第一个启动的init程序解析,此文件由语句组成,主要包含了四种类型的语句:Action,Commands,Services,Options.在in...

2016-01-15 11:38:17

阅读数:177

评论数:0

Android系统启动过程浅谈

一、 系统启动流程简介 在Linux内核启动后,init 1(1号进程)将作为第一个用户空间(Linux虚拟内存的大小为232(在32位的x86机器上),内核将这4G字节的空间分为两部分。最高的1G字节供内核使用,称为“内核空间”。而较低的3G字节供各个进程使用,称为“用户空间”。)的进程来启动...

2016-01-14 15:35:59

阅读数:205

评论数:0

Android消息处理机制(Handler、Looper、MessageQueue与Message)

Android是消息驱动的,实现消息驱动有几个要素: 消息的表示:Message消息队列:MessageQueue消息循环,用于循环取出消息进行处理:Looper消息处理,消息循环从消息队列中取出消息后要对消息进行处理:Handler 平时我们最常使用的就是Message与Handle...

2016-01-08 18:07:01

阅读数:206

评论数:0

JVM虚拟机结构

JVM的主要结构如下图所示,图片引用自舒の随想日记。 方法区和堆由所有线程共享,其他区域都是线程私有的 程序计数器(Program Counter Register) 类似于PC寄存器,是一块较小的内存区域,通过程序计数器中的值寻找要执行的指令的字节码,由于多线程间切换时...

2016-01-08 18:04:27

阅读数:186

评论数:0

Git与Repo入门

版本控制   版本控制是什么已不用在说了,就是记录我们对文件、目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作。。。 一、原始版本控制   最原始的版本控制是纯手工的版本控制:修改文件,保存文件副本。有时候偷懒省事,保存副本时命名比较随意,时间长了就不知...

2016-01-08 18:02:30

阅读数:185

评论数:0

解密Linux kernel中的内核线程

kernel_thread(kthreadd, NULL, CLONE_FS |CLONE_FILES);        regs.ARM_pc= (unsigned long)kernel_thread_helper;        do_fork(flags|CLONE_VM|CLONE_...

2016-01-06 18:06:43

阅读数:591

评论数:0

x86处理器中的特权级检查及Linux系统调用的实现

该部分内容需要仔细阅读Intel或者AMD的相关文档,Intel文档名为《Intel 64 and IA-32 Architectures Software Developer's Manual》, AMD的文档名是《AMD64 Architecture Programmer's Manual》,...

2016-01-05 23:58:57

阅读数:290

评论数:0

Linux内核中的init_task进程和idle进程

当Power on PC时,BIOS的代码开始执行,然后是Linux初始化的代码,这其中大约很长一段时间Linux都没有进程这一概念,但是这不影响CPU执行它的二进制代码。如果不是多任务以及进程调度的需要,Linux内核可以一直这样走下去。 但是因为多任务的需求,Linux必须能支持任务这一特性...

2016-01-05 18:10:24

阅读数:257

评论数:0

Linux系统下init进程的前世今生

Linux系统中的init进程(pid=1)是除了idle进程(pid=0,也就是init_task)之外另一个比较特殊的进程,它是Linux内核开始建立起进程概念时第一个通过kernel_thread产生的进程,其开始在内核态执行,然后通过一个系统调用,开始执行用户空间的/sbin/init程序...

2016-01-04 17:39:11

阅读数:213

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭