실제로 여기 전통적인 하드 디스크에 관한 두 가지 질문이 있습니다.효율적인 방법으로 임의 파일 액세스를 할 수 있습니까?
디스크의 모든 읽기/쓰기가 시스템 캐시/섹터 크기에 정렬됩니까?
디스크에 생성 된 모든 파일이 섹터에 정렬됩니까? 내 말은, 파일을 만들면 파일의 시작 지점이 섹터의 시작 지점과 같을까요?
섹터 크기가 4096이고 fseek (pFile , 10 , SEEK_SET);
을 사용하여 위치 10에서 4096 바이트를 읽으 려하므로 두 번 읽는 것으로 끝나나요?
내부적으로는 페이징 알고리즘이 적어도 페이지 (아마도 4K)에서 읽을 수있는 프로그램으로 바뀌 었다고 생각합니다. 하지만 그것은 코드에 투명합니다. ** 효율적인 방법으로 무작위 파일 액세스를 할 수 있습니까? 어때 ** 매핑 된 파일에 대한 메모리? – phoeagon
예, 투명합니다. 그러나 마지막 진술이 사실이라면 액세스 할 때 불일치를 방지하기 위해 일종의 정렬을해야 할 가능성이 높습니다. – user1192878
방금 묻는 모든 질문은 OS 및/또는 런타임에 따라 구현됩니다. 대답은 궁극적 인 결정 요인이 될 것입니다. – WhozCraig