안녕하세요
메모리의 특정 영역을 읽어서 file로 저장을 할 수가 있나요? 혹시 어떻게 하면 될까요,,,?
"XY문제"처럼 보이네요. 진짜로 하고 싶은 일이 무엇인지를 알려주시는 것이 좋을듯.
user level에서 메모리의 특정주소(0x80000000)에서 64Byte를 읽어서 그 내용을 파일로 저장하는 코드를 작성하고 싶습니다
fwrite((char*)0x80000000, 1, 64, fp);
1. 파일을 엽니다. cf) https://man7.org/linux/man-pages/man2/open.2.html 2. 열린 파일에 특정 위치/길이의 바이트열 데이터를 씁니다. cf) https://man7.org/linux/man-pages/man2/write.2.html 3. 파일을 닫습니다. cf) https://man7.org/linux/man-pages/man2/close.2.html
위 연산들은 파일시스템 API라면 당연히 기본적으로 다 지원하는 기능들입니다.
메모리 주소를 특정하여 접근하려 하므로 C/C++ 같은 언어가 아무래도 가장 편할 것이고, 여기서 플랫폼 독립적이길 바란다면 C/C++ 표준 라이브러리를 이용하는 것도 좋겠지요.
"XY문제"처럼 보이네요.
"XY문제"처럼 보이네요.
진짜로 하고 싶은 일이 무엇인지를 알려주시는 것이 좋을듯.
그대로입니다,,
user level에서 메모리의 특정주소(0x80000000)에서 64Byte를 읽어서 그 내용을 파일로 저장하는 코드를 작성하고 싶습니다
fwrite((char*)0x80000000, 1,
?!?!
1. 파일을 엽니다. cf) https://man7.org/linux/man-pages/man2/open.2.html
2. 열린 파일에 특정 위치/길이의 바이트열 데이터를 씁니다. cf) https://man7.org/linux/man-pages/man2/write.2.html
3. 파일을 닫습니다. cf) https://man7.org/linux/man-pages/man2/close.2.html
위 연산들은 파일시스템 API라면 당연히 기본적으로 다 지원하는 기능들입니다.
메모리 주소를 특정하여 접근하려 하므로 C/C++ 같은 언어가 아무래도 가장 편할 것이고, 여기서 플랫폼 독립적이길 바란다면 C/C++ 표준 라이브러리를 이용하는 것도 좋겠지요.