http://www.osdever.net/tutorials/chs_lba.php?the_id=87
LBA는 1부터 시작하는 논리 섹터
CHS는 실린더, 헤더 섹터로 나뉘는 단위
트랙당섹터수 는 일반적으로 18 (더 클수 있음)
헤드수는 일반적으로 2 (1일 수 있음)
Ralf Brown의 인터럽트 리스트나
BIOS Specification 문서(피닉스 홈피 뒤지면 있음) 보면 그거 나와 있습니다.
INT 13h/AH=08h를 사용하면 현재 사용중인 하드디스크의
Cylinder/Head/Sector 정보가 리턴됩니다.
또 요즘 돌아다니는 기가급 하드들은 이 정보가 다 짜가라는것도 아시죠.
예전 소프트웨어와의 호환성을 위해서 일부러 조작된 값을 보내주죠. 그리고
그 CHS로 액세스할경우 BIOS나 하드디스크 컨트롤러가 알아서 LBA로
바꿔버립니다.
트랙 = 실린더
논리적섹터번호 = (헤드번호 * 트랙당섹터수) + (트랙번호 * 트랙당섹터수*총헤드수) + (섹터번호 -1)
섹터번호 = (LBA % 트랙당섹터수) + 1
트랙번호 = LBA / 트랙당섹터수 / 총헤드수
헤드번호 = LBA / 트랙당섹터수 % 총헤드수
파일이 저장될때 데이터의 저장순서는 보통은 다음과 같습니다.하지만 반드시 그러한 것은 아니며 인터리브방식은 2개이상씩 섹터를 건너뛰며 접근합니다.만약 섹터 1~63 / 트랙 0 ~ 1024 / 헤드 0 ~ 15 인경우설명의 편의상 섹터는 S 트랙은 C 헤드는 H로 표시하겠습니다.S1~63 > H0~15 > C0~1024
종 류 기록 면수 디스크당 트랙수 트랙당 섹터수 섹터당 바이트수 용량
Head Cylinder
5.25 2D 2 40 9 512 360KB
5.25 2HD 2 80 15 512 1.2MB
3.5 2DD 2 80 9 512 720KB
3.5 2HD 2 80 18 512 1.44MB
LBA는 1부터 시작하는 논리 섹터
CHS는 실린더, 헤더 섹터로 나뉘는 단위
트랙당섹터수 는 일반적으로 18 (더 클수 있음)
헤드수는 일반적으로 2 (1일 수 있음)
Ralf Brown의 인터럽트 리스트나
BIOS Specification 문서(피닉스 홈피 뒤지면 있음) 보면 그거 나와 있습니다.
INT 13h/AH=08h를 사용하면 현재 사용중인 하드디스크의
Cylinder/Head/Sector 정보가 리턴됩니다.
또 요즘 돌아다니는 기가급 하드들은 이 정보가 다 짜가라는것도 아시죠.
예전 소프트웨어와의 호환성을 위해서 일부러 조작된 값을 보내주죠. 그리고
그 CHS로 액세스할경우 BIOS나 하드디스크 컨트롤러가 알아서 LBA로
바꿔버립니다.
트랙 = 실린더
논리적섹터번호 = (헤드번호 * 트랙당섹터수) + (트랙번호 * 트랙당섹터수*총헤드수) + (섹터번호 -1)
섹터번호 = (LBA % 트랙당섹터수) + 1
트랙번호 = LBA / 트랙당섹터수 / 총헤드수
헤드번호 = LBA / 트랙당섹터수 % 총헤드수
파일이 저장될때 데이터의 저장순서는 보통은 다음과 같습니다.하지만 반드시 그러한 것은 아니며 인터리브방식은 2개이상씩 섹터를 건너뛰며 접근합니다.만약 섹터 1~63 / 트랙 0 ~ 1024 / 헤드 0 ~ 15 인경우설명의 편의상 섹터는 S 트랙은 C 헤드는 H로 표시하겠습니다.S1~63 > H0~15 > C0~1024
종 류 기록 면수 디스크당 트랙수 트랙당 섹터수 섹터당 바이트수 용량
Head Cylinder
5.25 2D 2 40 9 512 360KB
5.25 2HD 2 80 15 512 1.2MB
3.5 2DD 2 80 9 512 720KB
3.5 2HD 2 80 18 512 1.44MB
'KB > RTOS' 카테고리의 다른 글
[링크-동영상 강좌] 마이크로프로세서의 이해, 그리고 운영체제와의 관계 (1) | 2006.01.11 |
---|---|
rtos 관련 (0) | 2006.01.11 |
microkernel (0) | 2005.10.05 |
semaphore, mutex, critical section (0) | 2005.10.05 |
os scheduling종류 (0) | 2005.10.05 |