하드 디스크에 직접 읽고 쓸려면 어떻게 해야 할까요?

newlife958의 이미지

지금 동적으로 연결되는 가상 스토리지를 만들고있는데요
난관에 부딛쳤네요.

스토리지 공간을 파일형식으로 잡아서 하는게 아닌 쌩하드에 직접 읽고 쓸수 있어야하는데
방법을 도무지 모르겟네요
구글링 할려고해도 어떻게검색해야 할지도 모르겟고..

inb() 나 outb() 이런걸로 쌩하드에 직접 읽고 쓸수 있을가요?

곰곰히 생각해보면 처음에 쌩하드에 파일시스템 올리고할때 fdisk 로 하잔아요
fdisk 소스를 분석해보면 방법이 나올것도 같은데
이노무 소스가 좀 난해하네요.

다른건 태그로 다 찾아 가지는데 정작 핵심적인 함수같은 ped_xxxxxx()로 시작하는 부분에대해선 어떻게 타고 들어가지지가 안터라구여
혹시 쌩하드에 직접 i/o를 해보신분 잇으시면 조언좀 해주세요!!

sio4의 이미지

예전에는 rawio 라는 방식으로 /dev/hda 등의 블록디바이스를 /dev/raw1 이런 식의 캐릭터 디바이스로 바인딩하여 썼던 것 같은데요, `man raw` 해보니까 이제는 이런 거 쓰지 말고 직접 블록디바이스를 O_DIRECT 옵션 주고 열어보라네요.

rawio, O_DIRECT 등의 키워드로 다시 검색해보면 뭔가 많이 나올 것 같네요.

--
"The love you take is equal to the love you make." The End, by Beatles

--
"The love you take is equal to the love you make." The End, by Beatles