블로그 이미지
짱의 꽁기꽁기 월드입니다 ㅎ Baracuda

카테고리

분류 전체보기 (4858)
Days of my life (45)
좋은 글 좋은 생각 (93)
Cartoon~ (114)
Funny, HaHa (4450)
Music~ (6)
보울~~~링 (46)
Etc (59)
Private (13)
Utility (14)
XK2 (1)
Forte Koup (5)
Total
Today
Yesterday

'low level format'에 해당되는 글 1건

  1. 2008.04.08 Low level format Utility 1

Low level format Utility

Utility / 2008. 4. 8. 19:51


로우레벨 포맷이란?

답변 글이 많이 올라와 무심코 지나치려 했었는데 로우레벨 포맷에 대해 잘못 알고있는 부분이 많은 것 같아 이렇게 글을 올립니다.

포맷이란 일정한 틀을 만드는 것으로 로우레벨 포맷 역시 제조단계의 초기화가 아닌 일정한 틀을 갖추는데 목적이 있습니다.

우선 로울레벨(저급)과 하이레벨(고급)의 기준에 대해 알 필요가 있습니다.

PC에서 로우와 하이로 나누는 기준은 기계에 가까운가 아니면 사람 즉 인터페이스에 친숙한가 입니다.
한 예로서 프로그래밍 언어를 예로들면 저급 언어로 어셈등을 꼽으며 고급 언어로서 C와 베이직 등으로 구분합니다. 이것은 어셈이라는 언어가 기계어로서 사람에게 낫선 언어로 짜여지기 때문이며 프로그램 수준도 어느정도 제한적입니다. 반면 고급 언어는 인간의 언어와 유사한 명령 체계로서 프로그램의 한계가 거의 무한에 가깝습니다. 이런것들이 PC에서 고급과 저급을 나누는 기준입니다.

그럼 포맷에서 고급과 저급의 기준은 무엇인가.
로우레벨 포맷은 공장 초기화가 아니라 물리적 레벨, 즉 트랙과 섹터를 나누는 작업입니다. 트랙과 섹터가 나뉘지 않는다면 하드디스크는 단순한 철판과 다를바 없습니다.
실제적으로 로우레벨 포맷을 실행하면 트랙과 섹터를 일정한 기호로서 나누어 주며 초기모델의 경우 아스키 코드 229번 문자(소문자 시그마)를 사용해 트랙과 섹터를 구분했습니다.

반면 하이레벨 포맷은 파티션이 나뉘어진 하드디스크에 사용하는 포맷으로 각 섹터를 묶어 클러스터로 지정하고 각 클러스터에 주소를 부여하는 작업을 말하는 것입니다.

여기서 주의해야 될 사항은 하드디스크 제조사에서 제공하는 유틸리티의 사용법입니다. 제공되는 유틸리티에는 두가지 방식의 로우레벨 포맷이 존재하는 경우가 있는데 하나는 기존의 로우레벨 포맷과 다른 하나는 제로필이라는 새로운 방식의 로우레벨 포맷입니다. 제로필은 데이터 저장부분을 모두 0으로 채우는 포맷으로 로우레벨 포맷과는 다르지만 유사한 효과를 내는 유틸리티 입니다. 제로필을 권장하는 이유는 대용량 하드디스크의 경우 섹터와 트랙을 나눌때 존비트 레코딩이라는 방식이 사용되는데 구형 로우레벨 포맷과 다른 방식이기 때문입니다. 또한 제로필로도 논리적 베드섹터등은 충분히 복구되므로 무리하게 로우레벨 포맷을 실행할 필요는 없습니다.

그럼 로우레벨 포맷이 왜 필요한가.
로우레벨 포맷이 필요한 가장 큰 이유는 하드디스크가 고속으로 회전하면서 발생되는 열 때문입니다. 하드디스크는 금속재질이기 때문에 열을 받으면 팽창하는 성질이 있습니다. 7200rpm정도의 고속으로 회전하는 하드디스크는 상온에서 최대 3~5배까지 온도가 상승하며 이때 디스크는 1mm정도까지 팽창하게 됩니다. 최근에는 열팽창계수를 최대로 억제한 재질이 사용되지만 열팽창이 전혀 없는 것은 아니며, 고밀도 디스크의 경우 열팽창에 더욱 민감해지게 됩니다.
이런 상태로 계속 하드디스크를 사용하게 되면 가끔씩 정확한 섹터를 찾지 못하고 엉뚱한 부분을 읽거나 쓰게 되는데 이때 논리적 배드섹터가 발생하게 됩니다. 잘못된 데이터 기록은 섹터의 경계를 삭제하게 되며 이 부분은 디스크가 읽지도 쓰지도 못하는 부분으로 인식하게 되는 것입니다.
따라서 로우레벨 포맷을 통해 이 경계를 뚜렷이 구분해 줌으로서 논리적 배드섹터를 치료할 수 있습니다.

반면 물리적 배드섹터의 경우 디스크 표면이 손상된 것으로서 프로그램상으로 치료가 불가능 합니다. 물리적 배드섹터가 발생하는 가장 큰 원인은 하드디스크 내부 필터가 수명을 다했거나 팩킹일 손상되어 외부 공기가 유입된 경우 입니다. 실제 헤드는 디스크 표면에서 수 nm 높이로 부상하며 이는 여객용 항공기가 지면을 수 mm높이로 나는 것과 같은 높이 입니다. 따라서 작은 먼지로도 헤드와 디스크 사이에 끼어 디스크 표면에 흠집을 낼 수 있습니다. 물리적 배드섹터가 한번 발생하게 되면 점차 확산되는데 이것은 위와 같은 이유 때문입니다.

로우레벨 포맷은 굳이 자주할 필요가 없지만 하드디스크의 논리적 배드섹터나 오랜 기간 사용으로 느려질때 등의 상황에서는 유용하게 사용됩니다. 그러나 이것은 절대 공장 제조단계의 초기화는 아니며 이런 잘못된 상식이 알려진 것은 제조사에서 대부분 로우레벨 포맷을 실행한 후 출고하기 때문입니다.

마지막으로 포맷 실행법은 하이레벨 포맷의 경우 질문하신 분께서 쓰셨듯이 그냥
Format 드라이브명
을 지정하시면 됩니다. 로우레벨 포맷의 경우 현재 바이오스에서 지원하는 경우는 거의 없고 하드디스크 제조사에서 유틸리티를 다운로드해 실행하시면 됩니다.


문제 제기 내용 추가 답변 사항입니다.

배드섹터의 검색은 디스크 검사 유틸로 표면검사를 하면 쉽게 알 수 있습니다. 그러나 이 단계에서 물리적 배드섹터인지 논리적 배드섹터인지는 알 수 없습니다. 우선 배드섹터가 검출 되었을 경우 다시 디스크 표면 검사를 수행했을 때 추가적으로 배드섹터가 발생했다면 분명 물리적 배드섹터 입니다. 그러나 추가로 발생되지 않았다면 로우레벨 포맷을 할 필요가 있습니다. 로우레벨포맷을 한 후에도 배드섹터가 존재한다면 이는 물리적 배드섹터이며, 배드섹터가 사라졌을 경우 논리적 배드 섹터라 할 수 있습니다. 로우레벨 포맷시에 물리적 배드섹터인 경우 배드섹터 표시를 남기기 때문에 쉽게 알 수 있습니다.

마지막으로 이전 답변에서 언급했듯이 로우레벨 포맷은 단순히 트랙과 섹터만을 구분할 뿐이며 운영체제가 사용하기 위한 클러스터 지정과 주소지정은 되지 않습니다. 따라서 파티션 설정과 하이레벨포맷을 수행해야만 디스크로서 사용할 수 있습니다.
즉 디스크를 사용하기 위한 준비작업을 단계별로 나타내자면

≫ 로우레벨포맷
디스크의 공간을 물리적으로 나누는 작업.

≫ 하드디스크 분할작업(partitioning)
IBM방식의 하드디스크에서는 master boot record의 파티션 테이블에 기본영역(primary partition)과 확장영역(extended partition)의 설정과 멀티부팅 등의 정보를 기록하는 작업.

≫ 하이레벨포맷
운영체제가 하드디스크 상에서 데이터를 처리하기 위해 실시하는 논리적인 포맷작업. 운영체제가 알아볼수 있도록 섹터에 주소를 부여하고 클러스터 단위로 섹터를 묶어주는 등의 작업을 한다.

이렇게 나눌 수 있으며 이 단계를 모두 거쳐야 디스크를 사용할 수 있습니다.

Posted by Baracuda
, |