-
카테고리
-
세부 분야
보안
-
해결 여부
미해결
제발 답신좀 부탁드립니다. 강사님이 말씀하신 FAT32 전체용량계산식은 잘못된것 같습니다
18.11.22 01:49 작성 조회수 201
0
안녕하세요. 다름이 아니오라, 시험이 몇일 남지 않아서 강사님께서 말씀해주신 FAT32 디스크용량계산방법을 적용해서 USB디스크의 실제 용량을 계산해보았습니다.
강사님께서 말씀해주신 내용대로라면,
(VBR에서 알려주는 총섹터수 512) - 4MBytes = 이 값이 탐색기에서 볼 수 있는 용량정보와 일치한다고 하셨습니다.
그런데, 제가 생각할때는 그렇지 않은것 같습니다.
NTFS와 다르게 FAT32 에서는 이런식으로 간단하게 용량을 계산할 수 없다고 생각이 듭니다.
제가 생각하기로는,
FAT32 VBR의 BPB영역에서 알려주는 다른 정보들을 모두 참고해야 정확한 계산이 가능하다고 생각합니다.
RS : Reserved Sector 이 값은 VBR을 포함하여 FAT이 시작하기 전까지 총 섹터수를 의미합니다.
FS : FAT Sectors 이 값은 FAT이 차지하는 섹터수를 의미합니다.
NF : Number Of FAT 이 값은 FAT의 개수를 의미합니다.
SP : Sectors Per Cluster 이 값은 하나의 클러스터가 차지하는 섹터수입니다.
TS : Total Sectors 이 값은 말씀하신 총 섹터수를 의미합니다.
제가 생각하기에는 전체 용량은 다음과 같이 계산되어져야 한다고 봅니다.
디스크전체용량(FAT32) = (((TS - (RS + NF FS)) / SP) SP) 512 Bytes
여기서 "/ SP) * SP " 이 문장이 사용된 이유는 정확하게 클러스터단위로 모든 섹터수가 나누어 떨어지지 않는 경우가 있기 때문에, 나머지는 사용이 불가능한 슬랙영역으로 계산되기 때문입니다.
제가 사용하는 USB 디스크(FAT32)의 경우,
탐색기를 통해서 용량정보를 확인해보면 3,943,628,800 Bytes 로 나오고 있습니다
VBR의 BPB를 통해서 얻은 정보중 주요정보는 다음과 같습니다
RS : 1340
NF : 2
SP : 8
FS : 7522
TS : 7718784
따라서 전체 용량을 계산해보면
디스크전체용량(FAT32) = (((TS - (RS + NF FS)) / SP) SP) 512 Bytes
= (((7718784 - (1340 + 2 7522)) / 8) 8) 512 = 3,943,628,800 가 나옵니다
답변을 작성해보세요.
답변 0