OK6410A 开发板 (八) 123 linux-5.11 OK6410A rootfs中留给开发者的内存访问接口
2022/1/8 7:06:22
本文主要是介绍OK6410A 开发板 (八) 123 linux-5.11 OK6410A rootfs中留给开发者的内存访问接口,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
与内存相关的文件系统
我们如果想用rootfs中的文件来观测内存或更改内存行为 则需要观测的文件所属的文件系统 为 内核文件系统 // https://blog.csdn.net/u011011827/article/details/119322870 中的 "linux 真实文件系统分类" 相关的文件系统有以下几种 sysfs,procfs,rootfs,devtmpfs,debugfs 可以从 /proc/filesystems中查看 当前的linux系统中注册了哪些 系统,在从中根据经验挑选出 内核文件系统 可以 利用 mount 来查看 这些文件系统挂载到哪个目录(挂载点)了 如果没有挂载,可以尝试用mount 命令挂载 与内存相关的文件系统大概有以下几种 1. sysfs 2. procfs 3. debugfs 4. udevfs
具体的文件
- procfs下的内存相关
只读文件 pagetypeinfo meminfo buddyinfo slabinfo vmallocinfo zoneinfo vmstat cmdline // "mem = xxx" , 表示 bootloader 留给linux 的内存大小(即linux管理的内存大小)为 xxx
可写文件 /proc/sys/vm drop_caches: sync && echo 1 > /proc/sys/vm/drop_caches 0:0是系统默认值,默认情况下表示不释放内存,由操作系统自动管理 1:释放页缓存 2:释放dentries和inodes 3:释放所有缓存
- sysfs下的内存相关
/sys/kernel 下的 mm slab 目录 slab下有 /sys/kernel/slab/task_struct // task_struct 是一个slab 的名称
- udevfs下的内存相关
udevfs 下的 kmsg // 被挂载到了 /dev ,等价于 dmesg // layout 关键字 中 有 内核虚拟内存布局
- debugfs下的内存相关
// tracing 相关 /sys/kernel/debug# tree |grep mem │ ├── memory_bandwidth │ │ ├── huge_memory │ │ ├── kmem │ │ │ ├── kmem_cache_alloc │ │ │ ├── kmem_cache_alloc_node │ │ │ ├── kmem_cache_free │ │ │ ├── extlog_mem_event │ │ │ ├── memory_failure_event │ │ │ ├── sys_enter_get_mempolicy │ │ │ ├── sys_enter_membarrier │ │ │ ├── sys_enter_memfd_create │ │ │ ├── sys_enter_set_mempolicy │ │ │ ├── sys_exit_get_mempolicy │ │ │ ├── sys_exit_membarrier │ │ │ ├── sys_exit_memfd_create │ │ │ ├── sys_exit_set_mempolicy │ │ │ ├── mm_vmscan_memcg_reclaim_begin │ │ │ ├── mm_vmscan_memcg_reclaim_end │ │ │ ├── mm_vmscan_memcg_softlimit_reclaim_begin │ │ │ ├── mm_vmscan_memcg_softlimit_reclaim_end ├── vmmemctl │ ├── pat_memtype_list ├── reject_kmemcache_fail
这篇关于OK6410A 开发板 (八) 123 linux-5.11 OK6410A rootfs中留给开发者的内存访问接口的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法