玩机必备 | Android系统目录功能详解

玩机必备 | Android系统目录功能详解

 

[content_hide]

目录或文件 功能解释
acct acct cgroup(control group)的挂载点
apex Android 10 模块化了一些Android系统组件,使其能在 Android 大版本升级之外进行独立升级,即系统组件模块化(Modular System Components)。这些模块化的系统组件打包到一起,可以通过 OTA 方式推送给终端用户进行升级。
cache 缓存的大小被限制为这个分区的大小。
d /sys/kernel/debug 的一个符号链接。
data 存放用户安装的软件以及各种数据。
default.prop 其中记录的是编译时 /build/core/main.mk 中 ADDITIONAL_DEFAULT_PROPERTIES 变量中的值, init 将根据它(的内容)去加载其他系统范围内的属性文件(property)。加载只读的属性文件有利于强制执行安全保护
dev tmpfs 文件系统的挂载点,定义了应用程序可用的设备。/dev/cpuctl 目录是 cpuctl 控制组的挂载点,使用 cgroup 伪文件系统。
etc /system/etc 的一个符号链接。与 Linux 功能一致,存放配置文件
init 处理 init.rc 文件的一个二进制程序。init.rc 文件引入其他 init.*.rc 文件。Android 启动时,内核会在启动进程的最后运行 init 程序。init.rc 文件值得一读,它告诉我们一些 Android 设备配置的事情。由于 Android 不支持 /etc/sysctl.conf,所以 /proc/sys/kernel 参数的更新就成为了 init.rc 文件的一部分。除非你对 Linux 内核的内部工作机制有一个好的理解,最好不要修改这些参数。对 /dev/cpuctl 的参数也是一样的道理。
mnt 除了挂载内部和外部SD卡,这个目录还是其他文件系统的挂载点。/mnt/asec 目录是一个 tmpfs 文件系统的挂载点,它是 Android 安全机制的一部分。/mnt/obb 目录是一个 tmpfs 文件系统的挂载点,它用来存储应用程序文件超出 50MB 后的扩展文件。/mnt/secure 目录是 Android 安全机制的另外一个组件。你也可以看到一个或多个 USB 设备的挂载点。
proc procfs 文件系统的挂载点,用来提供对内核数据结构的访问。
sbin 比标准 Linux 发行版中的 /sbin 目录小很多,但它确实包含了几个重要守护进程的二进制文件。
sdcard /mnt/sdcard 的一个符号链接。
storage 外部SD卡所在目录
sys sysfs 伪文件系统的挂载点,sysfs 伪文件系统是内核的设备对象结构的反映。这个目录下有很多信息,但它需要理解内核设备模型。简而言之,这些目录表示内核对象,而文件是这些对象的属性。
system 这个目录下就是你通常在标准 Linux 发行版中 root 目录下看到的目录。这些目录包括 bin、etc、lib、usr和xbin。
ueventd.rc 这些文件定义了/dev目录的配置规则。
vendor /system/vendor 的一个符号链接。
init.rc 系统初始化脚本。同样里面会引用 init.*.rc 文件。

/system 文件系统

存放所有谷歌或厂商提供的 Android 组件的地方,该文件系统是以只读方式 mount 的,主要是考虑了稳定性和安全性。

目录或文件 功能解释
app 存放系统应用,一般是系统或厂商自带应用。
apex Android 10 模块化了一些Android系统组件,使其能在 Android 大版本升级之外进行独立升级,即系统组件模块化(Modular System Components)。这些模块化的系统组件打包到一起,可以通过 OTA 方式推送给终端用户进行升级。
bin 存放二进制可执行文件 : 其中既有多个守护进程的二进制可执行文件,也有一些命令行 shell 的二进制可执行文件。一般是系统自带的。(大多数指向 looIbox)
etc 各种系统组件的配置文件
fonts 存放各种字体文件
framework 存放 Android 的框架(framework ) , 各个 framework 会被存放在各自对应的 .jar 文件中
lib 存放运行时库文件,也就是原生的 .so (ELF shared object),在 Android 中,这个目录扮演了和正常 Linux 系统中的 /lib 目录一样的角色。
media 存放铃声、系统提示声的文件夹。
xbin 存放用途特殊的、正常操作过程不需要使用的二进制文件,一般是系统管理工具。
build.prop 编译过程中生成的属性配置文件。
priv-app 存放特权的 App
usr 支持文件,比如 unicode 映射文件,设备和键血的键盘布局文件等
vendor 专门存放第三方厂商提供的文件,但是一般厂商都是直接放到 /system 目录下的 /bin、/lib 当中。
lost+ found 在对 /system 进行 fsck 操作时自动生成的目录 。 通常是空的(除非系统曾经崩渍过)。新版本 Android 不存在这个目录了。

/system/bin 文件系统

/system/bin 目录中含有 Android 使用的各种原生可执行文件,此外,它也是存放各种调试工具的地方。具体来说,这些二进制可执行文件可以被分成 5 类。

  • 用来提供服务的二进制可执行文件: 这类二进制可执行文件都是在系统运行过程中由 /init 调用的, 它们的调用路径会被写进 /init 使用的 rc 文件中。
  • 调试工具: 被归入这一类 的是一些用于调试的原生二进制可执行文件。
  • UNIX 命令: 为了让 shell 用户也能在 Android 上玩 , UNIX 命令部被封装在一个单独的二进制可执行文件 /system/bin/toolbox 中。busybox 是嵌入式系统中常见的多合一工具集,而 toolbox 则是它在 Android 中的定制版。
  • 调用 Dalvik 的脚本(upcall script):这些调用 Dalvik 的脚本让用户通过 shell 与 Dalvik 运行时框架交互,这多半是为了进行调试。
  • 厂商定制的二进制可执行文件:从本质上讲,这类二进制可执行文件可以完全由厂商控制,但是这类二进制可执行文件通常都是些提供服务的程序或调试工具。

/system/bin 用来提供服务的二进制可执行文件

目录或文件 功能解释
app_process 用户 App 的宿主进程, Zygote〔及其他所有用户 App)都是这个二进制可执行文件的实例,app_process 它是由 DalvikVM /ART 初始化的。
applypatch 在 OTA 升级的过程中使用 根据脚本来应用补丁
bootanirnation 当图形界面子系统(surfaceflinger)加载时,播放 Android 的启动动画。
clatd 1Pv4-1Pv6 地址的转换器
dalvikvrn 用于启动一个 Dalvik 虚拟机的实例
debuggerd 在系统崩溃时产生 tombstone, 也可以和一个远程 GDB 相连接
dnnserver 第二方数字版权管理( DRM, Digital Rights Management )模块的宿主地程
clnsmasq 伪 DNS 服务:在设备对外提供 Wi-Fi 热点服务时,提供 DNS 代理服务
hostapd Wi-Fi 热点守护进程的二进制可执行文件:在设备对外提供 Wi-Fi 热点服务时提供一个热点
keystore Android 的密码存储和管迎服务
linker Android 的运行时链接器。
mdnsd 组描 DNS (multicast DNS)的守护进程
mecliaserver 音频、视频的录制、回放
mtpd 用以支持 PPP/L2TP
netd 用来管理网卡、防火墙等
pppd 点对点协议的守护进程,在使用 VPN 时才需要使用它
racoon 提供对 VPN 支持
rlid 无线界面层(Radio Interface Layer)守护进程:主管一切与电话相关的服务
sdcard SDCard 守护进程,实现了 SD 卡文件系统,通过 FUSE 模拟多用户权限设置
sensorserv1ce Sensor hub:并发读取各个传感器
servicemanager 提供了服务的注册和查找功能
surfaceflinger 它的功能是画出图形界丽的样子,并把它们加载到 framebuffer 中
vold Volume 守护进程:用来 mount/unmount 文件系统,也有文件,系统的解密功能
uncrypt 解密文件系统(在 recovery 前使用)
wpa_supplicant wpa_supplicant 适配层(wireless protected access supplicant):提供 Wi-Fi 和 Wi-Fi P2P 的客户端支持
sqlite3 数据库功能
dexdump DEX 文件 dump 工具,也能 dump 文件头和字节码
tcpdump 网络抓包工具。抓取到的数据文件可以用 Wireshark 打开
strace 系统调用 trace 工具。使用 Linux ptrace(2)系统调用 。 强大的 trace 和逆向工程工具,往往能给你带来惊喜
showmap 显示进程内存分配情况(数据取自 /proc/pid/maps)
procrank 该程序的功能与 librank 互补 , 它会逐个进程地给出各个进程中 VSS/RSS/PSS/USS 的使用情况统计信息
procmem 显示进程内存使用情况统计信息(数据取自 /proc/pid/status )
nc Netcat , 分析 TCP 和 UDP 时的瑞士军刀
librank 逐个给出各个共享内存区域在各个进程中的使用情况,主要给出 VSS/RSS/PSS/USS 信息

/system/bin 调试工具

目录或文件 功能解释
adb Android 调试桥(客户端)
asanwrapper Address Sanitizer:内存淄出检测工具,它是个第三方调试工具
atrace Android tracetool:使用 Linux 的 ftrace 来调试和跟踪程序的执行过程
bdt BlueDroid ( Android 中的蓝牙)测试 App
blkid 用来显示各个分区的 GUID
dex2oat DEX 到 ART 的转换工具,用于取代 dexopt。
dexopt DEX 优化工具。
dumpstate 能与其他几个有用的工具(ps、dumpsys 等〕一起使用的元工具,用于抓取系统状态的调试快照。
Dumpsys 服务转储工具:它能去连接 Android 的各个服务,请求调用服务中的 Dump() 方法,以提供大量的调试信息
e2fsck F2FS 文件系统的文件系统完整性检测工具。
fsck_msdos vFAT 文件系统的文件系统完整性检测工具。
fsck.f2fs Ext2/3/4 文件系统的文件系统完整性检测工具。
gdbserver GDB 服务端:启动它之后,电脑上的 GDB 客户瑞就能通过 TCP/IP 协议连上当前设备,并调试相关的进程。
ip[6]tables 通过命令行,管理内核中的 IPTable (防火墙和流量限制)
keystore_cli 命令行实用程序,用于与 keystore(密钥存储)服务交互
logcat 把系统日志打印到标准输出上去,它也支持一些过滤选项。
ndc 与网络管理(Network Management)守护进程交互的命令行程序
perf 异常强大的性能分析(profiling)工具,它使用了内核中支持性能分析的一些功能
ping[6] 封包网络探针(Packet Internet Grouper), ICMP 协议的 echo 请求/响应包
radiooptions 用来模拟无线接口层(Radio Interface Layer)事件的测试程序
run-as 能用指定的 AID 权限运行某个应用程序
screencap 把帧缓存(framebuffer)抓取到标准输出或一个 PNG 文件中(供 ADB 使用)
screenrecord 视频录屏工具,录制 .mp4 格式的视频
screenshot 与 screencap 功能一致
service 与 service manager 交互的命令行实用程序
toolbox Android 提供多种命令的二进制可执行文件
vdc 与 vold (Volume 守护进程)交互的命令行实用程序
wpa_cli 与 wpa_supplicant 适配层交互的命令行实用程序

/system/bin 调用 Dalvik 的脚本

这些调用 Dalvik 的脚本让用户通过 shell 与 Dalvik运行时框架交互,这多半是为了进行调试 。这些脚本调用 /system/bin/app_process ,用它们在 /system/framework 目录中的同名 JAR 框架,加载 Dalvik 类,在使用时,脚本会把用户传给它的参数直接传递给 Dalvik 类。

app_process 脚本 功能解释
am 与 ActivityManager 进行交互、启动 activity 发起 intent 等
bmgr 备份管理(Backup Manager)接口
bu 启动备份
content 与 Android content provider 交互的接口
ime 控制输入法编辑器( Input-Method-Editors)
input 与 InputManager 进行交互,注入输入事件
media 控制当前的媒体播放器(播放/暂停等)
monkey 用随机生成的输入时间运行一个 APK
pm 与包管理器(PackageManager)进行交互,可以用来列出、安装、删除包( package )以及列出权限等
requestsync 同步账号
settings 获取、设置系统设置
svc 控制电源、数据、Wi-Fi 和 USB 服务
utautomator 进行 UI 自动化测试,测试 dump view 之间的层次关系等
wm 与窗口管理器(WindowManager)进行交互、修改显示的尺寸/分辨率等

/system/bin 厂商定制的二进制可执行文件(例如)

这类二进制可执行文件可以完全由厂商控制,但是这类二进制可执行文件通常都是些提供服务的程序或调试工具。

目录或文件 功能解释
mm-qcamera-daemon 高通内置摄像头的守护进程
mpdecision Multi-Processor Decision:管理 CPU 主频的专用工具。它与 CPU governor 进行交互,能在系统忙时,加快主频或激活其他处理器(core),也能在系统空闲时,降低主频或让一部分处理器休眠
qmuxd 高通基带访问多路转接器(baseband access multiplexer)
qseecomd 高通安全执行环境通信器(Secure Execution Environment Communicator)
thermal-engine-hh thermal 守护进程,负责监视设备的温度,防止设备过热

/system/xbin 文件系统

/system/xbin 目录类似于 UNIX 中的 /sbin 目录,其中含有管理员会觉得非常有用的二进制可执行文件。当然这个目录一般是被厂商删除的,一般 root 就是在这个目录放一个 su 文件。

目录或文件 功能解释
su 切换用户为(root 或者其他用户)
add-property-tag 向系统的 .prop 文件中添加属性
check-lost+found 在 fsck 操作完成之后,检查 lost+found 目录
cpueater 用于消耗 100% CPU 资源的死循环
cpustats 显示 CPU 和处理器调节然(用于控制主频)的统计信息

/system/lib 文件系统

/system/lib(在 64 位系统中则是 /system/lib64)目录中含有供 /system/bin 和 /systern/xbin 目录中的二进制可执行文件使用的共享库。/system/lib 中有多个子目录,其中的一些是根据设备的不同而不同的。

目录或文件 功能解释
/drm 提供 DRM 引擎。比如,实现了 forward-locking 专利代码包的 libfwdlockengine.so
/egl Android 版的 OpenGLES
/hw 各个 HAL 模块
/ssl/engines 含有 libkeystore.so,该共享库使得 OpenSSL 能使用 Android 的 Keystore 机制

/system/etc 文件系统

就像它在 UNIX 系统中的同名目录一样, Android 的 /system/etc 目录中也存放着各种配置文件之类的东西。

目录或文件 功能解释
NOTICE.html.gz 无数个 Android 沂源组件的法律告知l书 , 说明各种晦涩难懂的许可授权和法定事宜。
audio_effects.conf 会被 Android 的音频 HAL 使用
audio_policy.conf 会被 Android 的音频 HAL 使用
apns-conf.xml Telephony provider 的配置文件,其中列出了设备所支持的所有运营商(它会被 com.android.providers.telephony.TelephonyProvider 使用
asound.conf 设备 ALSA ( Advanced Linux Sound Architecture )的配置文件,它会在某些设备上被使用
bluetooth/ BlueDroid 的配置文件
clatd.conf CLATd(实现 IPv4 over IPv6 )的配置文件
event-log-tags 各个不同 Android 系统组件的日志 tag(被 android.util.EventLog 使用)
fallback_fonts.xml 列出了在加载 system_fonts.xml 中没有指定的 font-family 时所能选用的 fallback font。它会被 Android 中的 layoutlib 的 FontLoader 所使用
gps.conf GPS 配置文件
hosts 主机-IP 对应关系表,为了兼容起见,其中也记上了 localhost (127.0.0.1)
media_codecs.xml 列出了 Stage Fright 所支持的所有 codec(编码/译码器)
media_profiles.xml 列出了 LibMedia 所支持的所有 profile
ppp/ 存放了启动/停止 VPN 和 PPP 连接活动的二进制可执行文件
permissions/ 存放了多个 XML 文件,每个 XML 文件规定了个内置应用(不论是 AOSP 的还是厂商提供的〕的权限,它会被 PackageManager 使用
security/ 这个目录中含有存放着设备中硬编码写死的各个认证证书的目录( cacerts/)。 OTA 升级的证书(otacerts.zip)以及经过签名验证的 APK 的 SELinux 标签(label)
system_fonts.xml 按照字体(font〕所属的 family 和 nameset,列出了系统字体(font),并把字体样式(font style) 和 /system/fonts 中的各个 TTF 文件一一对应起来,它会被 Android 中的 layoutlib 的 FontLoader 所使用
wifi/ WPA supplicant 适配层的配置目录,用于控制 Wi-Fi 和 Wi-Fi P2P 连接活动
*acdb (高通芯片组) 各种声音校附数据库文件,在高通设备中会被 libacdbloader.so 使用
snd_msm/ (高通芯片组)存放高通 MSM Soc 音频设备的 ALSA 文件
thermal*.conf (高通芯片组)监视设备温度的 thennald 守护进程的配置文件

/data 文件系统

/data 分区是所有用户个人数据的存放地点。

目录或文件 功能解释
anr dumpstate 用来记录失去响应的 Android 应用的函数调用校当前状态的地方。
app 用户自己安装的应用,下载下来的 .apk 文件都可以在这里被找到
app-asec 存放 asec 容器, 当一个应用使用了 asec 保护技术时,它就会被加密起来
app-lib 应用(不论是系统应用还是用户自己安装的应用)的 JNI 库都可以在这里被找到
app-private 提供应用私有存储空间,已经很少使用
backup 供备份服务使用
bugreports bugreport 专用,用来存放生成的报告,每份报告中均含有一个文本文件和一张屏幕截图
dalvik-cache 用于存放优化过的系统应用手日用户安装的应用的 classes.dex 。每个应用的 dex 文件名都是它 apk 包的存放路径,并用“@”替换掉了路径分隔符
data 各个己安装应用的数据目录
drm 供 Android 的数字版权管理器〔Digital Rights Management)使用
local 供 uid shell 使用的一个可读/可写的临时目录
lost+found 对 /data 分区执行 fsck 操作时自动生成的目录。
media 供 sdcard 服务把 SD 卡 mount 到这个 mount 点上
mediadrm 供 Media DRM 服务使用
misc 供各个组件存放“各式各样的”数据和配置文件的目录
nfc 存储 NFC 参数
property 存放持久性属性
resource-cache 供 AssetManager 使用的资源缓存
secunty 通常为空
ssh 供那些提供 ssh (Secure Shell)服务的设备使用
system 存放了大量系统配置文件
tombstones 用于存放由 debuggerd 生成的应用崩溃报告。
user 不同的用户会把各自的数据和应用存储/安装在 /data/user/用户号/(用户号从 0 开始顺序编号,0 ,1...)下的各个目录中,系统运行时,把 /data/data 下的对应目录做符号链接,使之指向 /data/user/用户号/ 下的对应目录,以这种方式让 Android 系统能支持“多用户”。在一个单用户系统中, /data/data 会被直接指向 /data/user/0

/data/data 文件系统

/data/data 目录是所有应用(不论是系统应用还是用户安装的应用〕存储它们的信息的地方。每个应用都可以访问属于自己的文件夹而不用申请权限,其他的应用都有权限列出 /data/data 的子目录,但是不能访问。

/data/misc 文件系统

/data/misc 目录中含有各个 Android 子系统的各种五花八门的(miscellaneous)数据和配置目录。

目录或文件 功能解释
adb 存储可信的允许进行 ADB 连接的电脑的公钥
bluetooth BlueZ [<4.2 的 bluetooth(蓝牙〕子系统的配置文件
bluedroid Bluetooth(蓝牙)子系统(>4.2)的配置文件
dhcp 存储实现 dhcp 的 ctdent 守护进程的 PID 文件,以及所有当前活跃的地址租用记录
keychain 存放 Android 内置证书 pin 码(certificate pin)和黑名单
keystore 存储每个用户的 keystore 数据
sensors 用于存储传感器调试数据
sms 存储短信(sms) codes 数据库
systemkeys 用来存储打开 ASEC 容器的密钥(AppsOnSD.sks)
vpn 用于存储 VPN 状态自己置文件
wifi 用于存储 Wi-Fi 子系统的配置文件(比如:wpa_supptdcant.conf)和套接字(socket)

/data/system 文件系统

/data/system 目录中含有对维护设备状态非常重要的文件。访问该目录需要 root 权限。

目录或文件 功能解释
appops.xml 供控制应用权限的 AppOps 服务使用
batterystats.bin 供统计各个应用电量使用情况的 BatteryStats 服务使用
called_pre_boots.dat 供 ActivityManager 记录每个 boot broadcast receiver
device_policies.xml DevicePolicyManagerService 使用的配置文件
dropbox/ 供 DropBox 服务使用的目录
entropy.dat 系统熵存储器(system entropy store),供 EntropyMixer 生成随机数使用,随机数生成在一个计算机系统中是个难题,必须要有一个不能重复的熵,所以使用系统运行的各种操作记录、硬件运行记录来作为随机数的熵。
gesture.key 锁屏图案的 Hash
framework_atlas.config 供负责将预加载的 bitmap 组装成纹理贴图的 AssetAtlasService 使用
ifw/ Intent 防火墙规则库
locksettings.db* 锁屏设置:其中记录了设备的锁屏策略
netpolicy.xml 供 NetworkPolicyManagerService 使用的配置文件
netstats/ 用来记录 NetworkStatsService 按 device、uid 或 xt 得到的网络传输数据统计的目录。
packages.list PackageManager 列出的所有安装在系统中的包(APK)
packages.xml PackageManager 在此记录了所有己安装包的元数据
password.key 锁屏 PIN 码/口令的 hash
procstats/ 供 ProcessStats 服务存储文件的目录
registered_services/ 供 android.content.pm.RegisteredServicesCache 使用的目录
usagestats/ 供 UsageStats 服务存储文件,特别是 usage-history.xml 文件的目录
users/ Android 的“多用户”支持

/cache 文件系统

Android 是在系统升级的过程中使用 /cache 分区的。系统升级包会被下载到这里,启动管理器(boot manager)特别是在 recovery/ 升级模式下启动时,会要使用这个分区。但除此之外,在正常情况下,这个分区是空的。

宏定义 目录或文件 功能解释
CACHE_LOG_DIR /recovery 二进制可执行文件 recovery 的专用目录
LAST_LOG_FILE /recovery/last_log 上一次 recovery/ 到级操作的日志
LOG_FILE /recovery/log 当前 recovery/ 升级操作的日志
COMMAND_FILE /recovery/command 传递给 recovery 的命令行参数
INTENT_FILE /recovery/intent recovery 完成之后要发出 的 intent
LAST_INSTALL_FILE /recovery/last_install 最近一次安装日志
LAST_LOCALE_FILE /recovery/last_locale 存放再次启动时使用的语言设置

/vendor 目录

目录是用来存储厂商对 Android 系统的修改的。

组件名 目录或文件
Package Manager /vendor/app
Fonts /vendor/etc/fallback_fonts.xml
Shared Libraries /vendor/lib
DRM libraries /vendor/lib/drm /vendor/lib/mediadrm
eGL libraries /vendor/lib/egl
Frameworks /vendor/overlay/framework
Firmware /vendor/finnware
Audio Effects /vendor/etc/audio_effects.conf

/dev/usb-ffs/adb 目录 functionfs

在 Android 系统中,USB 的功能经常会需要根据用户的选择(即 , 是以 USB 调试、大容量存储介质还是 以其他方式连接设备,用户的这一选择将通过 init 传递进来)动态地进行重新配置,它是由一个特定的 “gadget” 驱动进行控制的 。

/proc 目录

procfs 文件系统名副其实一一它提供了一个基于目录的观察系统中运行的进程的方式。使之能提供大量
关于进程、线程以及其他全方位的系统诊断信息。许多 Linux 实用程序(如 top、netstat、lsof 和 ifconfig)以及许多 Android 工具(如 procrank、librank)都把它作为诊断信息的来源,没有它就不能运行 。

/sys 目录

sysfs 是在 Linux 内核版本 2.6 中作为对 procfs 的补充而被引入的,为了能把 /proc 里的
东西整理得井井有条些,把与硬件和模块相关的配置文件移到一个单独的目录中去,并让目录的层次也更清晰些 。

目录 作用
block 存放块 I/O 层 (Block I/O Layer)的控制文件。每个块设备都有自己的子目录,其中记录了其所属的 I/O 调度程序等参数
bus 设备,按连接它的总线类型分类存放,每种总线类型(比如 i2c/、mmcl、soc/)一个子目录
class 设备,按设备类型分类存放,每种设备类型(比如 input/、sound/)一个子目录
dev 设备,按设备读写方式分类存放,每种读写方式(比如 block/、char/) 一个子目录
devices 设备,按设备在设备树(device-tree)上的分类类型存放
frimware 供有固件升级功能的设备使用
fs 供文件系统驱动使用。
kernel 由各个(内核)子系统提供的一些内核参数,其中的 debug/是 debugfs 的 mount 点
module 每个极块一个子目录,含有极块的统计信息以及模块参数
power 电源管理(power management)的统计信息和设置,Android 的 WakeLocks 就是在这里(通过 wake_lock 和 wake_unlock 〕实现的

/sys/kernel/debug 目录 debugfs

debugfs 文件系统是用于(输出)内核级的调试信息的。驱动以及类似的子系统可以自由地
把驱动的调试信息转储到这个文件系统中。

目录 作用
binder 提供通过 Android IPC (进程间通信)机制中的 binder 方式传递的大量数据
tracing 好用到难以置信,提供由 Linux 内核的 flrace 机制产生的海量的调试和跟踪信息
wakeup-sources 内核级的定时器,用在 Android 系统或驱动程序防止设备休眠时

/sys/fs/pstore 目录 pstore

pstore 机制是 Linux 的一个内核特性(在 3.5 版时引入),它允许内核把部分物理内存(RAM)
单独划为 persistent store 区 。 它对于一种特定的应用抓取内核崩愤(panic)时的数据,非常
有用。

/sys/fs/selinux 目录 selinuxfs

和 debugfs 一样,SELinuxFS 传统上也是 mount 在 /sys 下,但却不是 sysfs 文件系统的一部
分。这个文件系统是专供 SELinux 使用的,其中存储了与安装策略(installed policy)相关的文
件。[/content_hide]

常见问题
关于软件声明
1.本站软件难免有错误,仅供参考。 2.本站软件来自网上公开的下载,如果认为侵犯了您的权益,请出示证明是哪一条,我们会去掉侵权软件。 3.本站收集的软件版权归作者所有,只适用参详学习,请下载后在12小时内删除。谢谢您的支持!
0
显示验证码
没有账号?注册  忘记密码?