在写入内存(/ dev/mem)时,我在python中使用mmap时遇到了一个奇怪的问题.要清楚,阅读是以同样的方式完成的,并且工作正常.但是当涉及到写入时,似乎每个第二个字节都是不可写的.
恩.
when I read i get
addr 0x200 val 0x1234
but when I try to write
addr 0x200 val 0x4321
what really is written is
addr 0x200 val 0x0021
Run Code Online (Sandbox Code Playgroud)
当我尝试逐字节写入时,同样的情况发生.恩.
write:
addr 0x200 0x43
addr 0x201 0x21
I get
addr 0x200 0x00
addr 0x201 0x21
Run Code Online (Sandbox Code Playgroud)
码:
class Pydump:
def __init__(self, addr, length = 1, word_size = 4, filename = '/dev/mem'):
if addr < 0 or length < 0: raise ValueError('Address or length invalid')
self._verbose = verbose
self.word_size = …Run Code Online (Sandbox Code Playgroud)