Linux kernel 如何检查设备树中保留的内存是否已实际保留
我正在使用的相关设备树条目是:Linux kernel 如何检查设备树中保留的内存是否已实际保留,linux-kernel,linux-device-driver,Linux Kernel,Linux Device Driver,我正在使用的相关设备树条目是: memory { device_type = "memory"; reg = <0x0 0x40000000>; }; reserved-memory { #address-cells = <1>; #size-cells = <1>; ranges; spw_dma@3E000000 { reg = <0x3E000000 0x2000000>;
memory {
device_type = "memory";
reg = <0x0 0x40000000>;
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
spw_dma@3E000000 {
reg = <0x3E000000 0x2000000>;
};
};
内存{
设备类型=“内存”;
reg=;
};
保留内存{
#地址单元=;
#大小单元格=;
范围;
spw_dma@3E000000 {
reg=;
};
};
我是否可以检查/sys/class
接口中的某个位置,以验证内存是否已实际保留?由于我是通过/dev/mem
接口访问内存的,因此我有效地绕过了所有安全措施,因此,至少能够验证没有其他人会写入该内存区域是有用的
注:我知道正确的方法™ 将编写内核驱动程序或使用如果驱动程序使用了/proc/iomem(设备/驱动程序正在/需要使用保留内存区域),请参阅和以获取mor信息。感谢/proc/mem指针。我只有“内核代码”和“内核数据”条目,所以它可能没有被保留。我想,必须指定兼容字段,才能应用DT条目。有没有一个包罗万象的解决方案?没有,没有任何包罗万象的解决方案,但是你可以做的是编写一个简单的驱动程序并保留它。同样简单的解决方案是使用memmap,它会保留您()