파티션 정렬이란 무엇이며 왜 필요한가요? [복제]


답변:


23

최신 512 바이트 섹터가 아닌 4 킬로바이트 섹터를 사용하도록 최신 하드 드라이브가 제조되고 있습니다.

이것은 모든 섹터에 대해 드라이브에 작은 오류 수정 데이터 배치가 있기 때문에 하드 드라이브의 물리적 공간을보다 효율적으로 사용하기 위해 수행되며 섹터 당 0.5 킬로바이트에서 4 킬로바이트로 이동하면 훨씬 적은 공간이 있음을 의미합니다 이 오류 수정 데이터에 드라이브의 낭비가 발생했습니다. 여기서 내가 의미하는 바는 Advanced Format Drives 의 Wikipedia 기사에서 가져온 이미지입니다 .

여기에 이미지 설명을 입력하십시오

디스크를 정렬해야하는 이유는 4 바이트 섹터가있는 드라이브에서 512 바이트 섹터가 작동하도록 작성된 소프트웨어의 상호 작용에서 비롯됩니다. 소프트웨어가 512 바이트 섹터를 예상하면 클러스터의 "두 번째"섹터라고 생각하는 것에 쓰려고 시도 할 수 있지만 실제로는 4 킬로바이트 섹터의 두 번째 512 바이트입니다.

문제는 운영 체제에 512 바이트 섹터를 시뮬레이트하지만 실제로는 4 킬로바이트 섹터와 작동하는 "고급 포맷"드라이브는 섹터를 "한 번에"작성할 수 있다는 것입니다. 두 번째 512 바이트 영역에 쓰려면 전체 4KB 섹터를 읽은 다음 다시 드라이브에 다시 써야합니다. 이는 단순히 드라이브가 전체 4KB 섹터를 다시 쓰도록 지시하는 것보다 속도가 느립니다.

운영 체제가 4KB 섹터를 알고 있더라도 드라이브 사이의 경계가 드라이브의 위치와 운영 체제의 생각 사이에 일치하도록 드라이브를 올바르게 정렬해야합니다.

그런 다음 SSD가 바이트 단위로 작성 될 수 있다는 점에서 비슷한 문제가 있지만 일반적으로 256KB 또는 512KB의 큰 블록에서만 지워집니다. 이러한 방식으로 성능을 최대화하려면 파티션 (및 섹터) 경계를 256 또는 512KB 블록 중 하나를 따라 정렬해야합니다.

이러한 이유로 많은 최신 파티션 도구는 단순히 전체 드라이브를 1MB 경계를 따라 정렬합니다. 512MB 섹터, 4KB 섹터 또는 다양한 드라이브 유형이 있는지 여부를 감지 할 필요가 없습니다. 임의의 블록 크기의 SSD.

-= 수정 =-

Lifehacker에 대한이 기사에서 언급했듯이 드라이브가 올바르게 정렬되었는지 확인하는 방법에는 여러 가지가 있습니다 . 이 조언은 주로 SSd에 적용되지만 일반 하드 드라이브가 올바르게 정렬되었는지 확인하는 것과 관련이 있습니다.

파티션이 올바르게 정렬되었는지 확인하려면 시작 메뉴를 누르고을 입력하십시오 msinfo32. 입력 Msinfo32하고 이동 Components> Storage> 디스크. 목록에서 SSD를 찾고 "파티션 시작 오프셋"항목을 찾으십시오. 이 숫자를 4096으로 나눌 수있는 경우 (즉, 4096으로 나누면 10 진수가 아닌 정수) 파티션이 올바르게 정렬됩니다. 그렇지 않으면 다시 정렬해야합니다. 다행히 Gparted 라이브 CD를 사용하면이 작업을 쉽게 수행 할 수 있습니다. 우분투 라이브 CD가 있다면 시스템> 관리에서 Gparted를 사용할 수 있기 때문에 작동합니다.


3
참고 : 잘못된 정렬로 인해 손실 된 성능은 소프트웨어가 서로 멀리 떨어진 많은 4kiB 파일 시스템 섹터를 쓰려고 할 때 발생합니다. 각 쓰기가 512B를 다음 4kiB 디스크 섹터로 오버플로하면 그 다음 전체 섹터도 다시 써야하므로 필요한 쓰기의 두 배가됩니다. (첫 번째 디스크 섹터에는 여전히 기록 된 데이터의 3.5kiB가 포함됨)
Eroen

@kinokijuf 내가 언급했듯이 4KB 섹터는 디스크를보다 효율적으로 사용하는 것입니다 (저장 공간은 여분의 추가 저장 공간과 동일하므로 충전 할 수있는 여분의 현금으로 변환 될 수 있음). 조정 자체 성능상의 이유로 수행됩니다 .
Mokubai

1
대부분의 최신 파티션 도구는 1MiB 경계를 따라 정렬됩니다 (예 : 1048576 바이트). 1MB 경계에 따른 정렬은 4096의 배수가 아니므로 작동하지 않습니다.
Futal

1
@Mokubai : 1MB = 1,000,000 바이트 (1024의 배수가 아님), 1MiB = 1,048,576 바이트 (1024의 배수). NIST와 같은 모든 표준 기관에서 인정하는 ISO / IEC 80000에 정의되어 있습니다.
Futal

1
@Futal 99.9 %의 사람들은 우리가 MiB / MB를 구별해야하는 어리석은 상황에 대해 알고 있으며 단순히 신경 쓰지 않습니다. 무의미하고 (대부분) 관련이 없습니다. 대부분의 사람들은 "컨텍스트 적 단서"로 알려진 언어 적 트릭을 사용하여 어떤 것이 의미하는지 알아낼 수 있습니다. 같은 문장에서 512 바이트와 4kb 섹터에 대해 이야기한다면 4000MB 또는 1000000 바이트를 1MB로 의미합니다.
Mokubai
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.