我可以使用 dd 命令读取内存地址(例如:0x400):
dd if=/dev/mem count=4 bs=1 skip=$(( 0x400 ))
但是我如何将值写入物理地址(例如:0x400)?我试过这个:
function T_WRITE2 {
printf $1 | dd of=/dev/mem count=4 bs=1 skip=$(( 0x400 ))
}
但我收到错误:
dd: 'standard input': cannot skip to specified offset
(如何让输入不跳过任何内容,而是让输出跳到要写入的地址?)
答案1
skip
跳过输入中的字节;要写入输出中的特定偏移量,您需要使用以下seek
选项“查找”:
dd of=/dev/mem count=4 bs=1 seek=$((0x400))