233333

LV0
发表了文章

android 8.1 安全机制 — SEAndroid & SELinux

在 SELinux 出现之前,Linux 上的安全模型叫 DAC,全称是 Discretionary Access Control,翻译为自主访问控制。

233333
发表了文章

crash工具分析sysdump使用

2)获取对应软件版本的符号表文件(如vmlinux),可以将该文件放置 crash工具同一目录下。

233333
发表了文章

伙伴系统分配内存

内核中常用的分配物理内存页面的接口函数是alloc_pages(),用于分配一个或者多个连续的物理页面,分配页面个数只能是2个整数次幂。相比于多次分配离散的物理...

233333
发表了文章

ARM64内核内存布局图

ARM64架构处理器采用48位物理寻址机制,最大可以寻找到256TB的物理地址空间。对于目前的应用来说已经足够了,不需要扩展到64位的物理地址寻址。虚拟地址也同...

233333
发表了文章

ARM32 内核内存布局

Linux内核在启动时会打印出内核内存空间的布局图,下面是ARM Vexpress平台打印出来的内存空间布局图:

233333
发表了文章

swapper_pg_dir的作用

在head_32.S中,定义了如下的BSS段,BSS段是在内核映像文件中不占空间,但是在内核被加载到内存时,会保留相应的空间。

233333
发表了文章

ARM32 页表映射

在32bit中的Linux内核中一般采用3层映射模型,第1层是页面目录(PGD),第2层是页面中间目录(PMD),第3层才是页面映射表(PTE)。但在ARM32...

233333
发表了文章

Linux:页表中PGD、PUD、PMD等概念介绍

Linux系统中每个进程对应用户空间的pgd是不一样的,但是linux内核 的pgd是一样的。当创建一个新的进程时,都要为新进程创建一个新的页面目录PGD,并从...

233333
发表了文章

pageblock概念

类似于从zone中的分配,如果无法从指定的迁移类型分配到页,则会按照fallbacks指定的次序从备用迁移类型中尝试分配,它定义在page_alloc.c中。

233333
发表了文章

内存管理相关数据结构之pg_data_t

若系统节点多余一个,则内核会维护一个位图用于提供每个节点的状态信息,状态信息为一个enum。定义如下:

233333
发表了文章

直接内存回收中的等待队列

在直接内存回收过程中,有可能会造成当前需要分配内存的进程被加入一个等待队列,当整个node的空闲页数量满足要求时,由kswapd唤醒它重新获取内存。这个等待队列...

233333
发表了文章

arm_lowmem_limit

内核中把物理内存的低端区域作为直接映射区,高地址区域定义为高端内存,通过一个变量high_memory来界定他们的分界线。high_memory是一个虚拟地址,...

233333
发表了文章

展讯库仑计驱动

sprd_27xx_fgu.c就是展讯SL8541E 库仑计驱动,用来统计电量的;

233333
发表了文章

Android lowmemorykiller分析

Android底层还是基于Linux,在Linux中低内存是会有oom killer去杀掉一些进程去释放内存,而Android中的lowmemorykiller...

233333
发表了文章

一张图弄清缺页异常处理程序的来龙去脉

233333
发表了文章

Linux-3.14.12内存管理笔记【伙伴管理算法(5)】-核心算法实现

伙伴管理算法内存申请和释放的入口一样,其实并没有很清楚的界限表示这个函数是入口,而那个不是,所以例行从稍微偏上一点的地方作为入口分析。于是选择了alloc_pa...

233333
Linux
发表了文章

伙伴系统和slab机制

Linux内核中采用了一种同时适用于32位和64位系统的内存分页模型,对于32位系统来说,两级页表足够用了,而在x86_64系统中,用到了四级页表。四级页表分别...

233333
发表了文章

Android应用程序与SurfaceFlinger服务的连接过程分析

Android系统的开机动画是由应用程序bootanimation来实现的,它位于/system/bin目录下,它的具体实现可以参考Android系统的开机画面...

233333
发表了文章

Android系统服务(SystemService)简介

我们在Android开发过程中经常会用到各种各样的系统管理服务,如进行窗口相关的操作会用到窗口管理服务WindowManager,进行电源相关的操作会用到电源管...

233333
发表了文章

Android.mk文件LOCAL_SDK_VERSION选项

internal api 翻译为内部API,理解为供sdk内部使用的API。 这类接口最初打算就是不对外公开的,有点private的意思。

233333

个人简介

个人成就

  • 影响力总排行第 217 名
  • 获得 1.3K 次赞同
  • 文章被阅读 156.1K 次

扫码关注云+社区

领取腾讯云代金券