lseek() 함수에 관하여 궁금한게 있습니다.
글쓴이: smilejoon / 작성시간: 목, 2007/08/23 - 1:25오후
디바이스 파일을 오픈하여 lseek() 로 위치를 정해준후 read, write 를 하려고합니다.
해볼려고 하는 디바이스 파일은 HDD 관련 파일입니다.
ex) /dev/hdb2를 open()하여 lseek()후 write 또는 read를 순차적으로 해볼건데
궁금한점은 lseek() 로 바이트 단위로 위치를 정해주고 쓰게 되는데
만약 1000 Byte를 한번에1byte씩 순차적으로 쓴다고 한다면 물리적으로도
순차적으로 써지게 될까요??
lseek() 로 시작 위치 정해준다음 1바이트쓰고 또 seek() 1바이트 다음 위치 지정해주고
그다음 1 바이트 쓰고 이런식으로 1000번을 반복하게되면
각각의 바이트들이 물리적으로 순차적으로 쓰여질까 궁금합니다.
lseek로 위치지정이 논리적이라 하면
위치가 쓰여지게될때 파일시스템등의 구성의 영향을 받아서
물리적으로는 달라지지 않으려나 궁금하네요
Forums:
block device 를 block
block device 를 block device 라 부르는 이유는 I/O 의 단위가 block 이기 때문입니다.
disc 판때기 위의 자기배열은 전적으로 hdd vendor 마음입니다.
hdd 는 controller 와 media 가 한몸으로 붙어다닌 점을 유념하세요.
OTL
댓글 달기