제가 /dev/mem을 열어서 mmap한 후에 그 주소에 대해서 read, write를 하고 싶은데요.
제가 한 방법은
int fd=open("/dev/mem", O_RDWR|O_SYNC, 0);
으로 /dev/mem 을 open 한 이후에
int* virt=(int*)mmap(0, len, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0x81000000);
이런 식으로 mmap을 하고 virt[i]에 값을 주고 읽어오는 방식으로 read, write를 했는데요.
이런 식으로 하면 4 byte 단위의 read, write를 하는것 같은데
좀 더 큰 단위로 (예를 들면 , 1KB) read, write를 할 수 있는 방법이 없을까요?
.
더 큰 size를 read, write 하기 위해
일반적으로 fd를 넘겨서 사용하는 read, write api를 사용했을 때는
뻗어버려서 성공을 못했습니다 ㅠㅠ