简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
一、Android系统性能提升之路 Dalvik虚拟机作为Android平台的核心组成部分之一,允许在有限的内存资源中同时运行多个虚拟机实例。Dalvik虚拟机通过以下方式提升性能:1、DEX代码安装时或第一次动态加载时odex化处理。2、Android2.2版本提供了JIT机制提升性能,号称性能提升3~5倍。3、提升硬件配置,如更多核CPU、更高频率CPU、更大的RAM等。
与高端映射对立的是低端映射或所谓直接映射,内核中有关变量定义它们的它们的分界点,全局变量high_memory,该变量定义在mm/memory.c文件中(存在MMU的前提下),可见不区分体系结构,对于当前我手头的marvell的arm设备即对于arm体系结构,high_memory在初始化阶段的创建内存页表时初始化值,它的值就是:物理内存最后一个node的末尾,比如物理内存只有一个node,大小是
Linux中断(interrupt)子系统之一:中断系统基本原理2012-07-20 13:00:35分类: LINUX这个中断系列文章主要针对移动设备中的Linux进行讨论,文中的例子基本都是基于ARM这一体系架构,其他架构的原理其实也差不多,区别只是其中的硬件抽象层。内核版本基于3.3。虽然内核的版本不断地提升,不过自从上一次变更到当前的通用中断子系统后,大的
◆运行状态(TASK_RUNNING)当进程正在被CPU执行,或已经准备就绪随时可由调度程序执行,则称该进程为处于运行状态(running)。进程可以在内核态运行,也可以在用户态运行。当系统资源已经可用时,进程就被唤醒而进入准备运行状态,该状态称为就绪态。这些状态(图中中间一列)在内核中表示方法相同,都被成为处于TASK_RUNNING状态。◆可中断睡眠状态(TASK_INTERRUPTI
系统DDR的基地址为0x0,内存为1GB,所以TTB的基地址为0x4000。下面要创建虚拟地址0xfe700000到物理地址0xffff0000之间的映射,映射大小为64KB,即16页。由于物理地址不是1MB字节对齐,所以必须创建两级映射。 用户空间/内核空间划分为2G/2G。 create_mapping:pgd = 0x80007f98, addr = 0xfe700000,
【转】摘 要:设备树的引入减少了内核为支持新硬件而需要的改变,提高代码重用,加速了Linux支持包的开发,使得单个内核镜像能支持多个系统。作为U-Boot 和Linux 内核之间的动态接口,本文阐述了设备树的数据存储格式以及源码描述语法,进而分析了U-Boot 对扁平设备树的支持设置,Linux 内核对设备树的解析流程。关键词:扁平设备树; DTS; PowerPC; Linu
关于SEAndroid的更多官方说明,请参考http://source.android.com/devices/tech/security/se-linux.html二 SEAndroid源码分析有了上文的SELinux的基础知识,本节再来看看Google是如何在Android平台定制SELinux的。如前文所示,Android平台中的SELinux叫SEAndroid。先来看
在android 中移植一个库(该库 使用了 libstlport )时 产生如下错误:prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/bin/../lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld: obj/EXECUTAB
http://www.oenhan.com/task-group-sched又碰到一个神奇的进程调度问题,在系统重启过程中,发现系统挂住了,过了30s后才重新复位,真正系统复位的原因是硬件看门狗重启的系统,而非原来正常的reboot流程。硬件狗记录的复位时间,将不喂狗的时间向前推30s分析串口记录日志,当时的日志就打印了一句话:“sched: RT throttlingactiv
目录文件修订记录...2目录...31ARMv8存储管理...41.1Aarch64 Linux中的内存布局...41.2AArch64的虚拟地址格式...41.2.14K页时的虚拟地址...41.2.264K页时的虚拟地址...52head.S页表建立过程分析...62.1页表建立函数__create_page_tables.62.1.1pgtbl