Chapter 2 Secondary Storage and System Software References: 1. M. J. Folk and B. Zoellick, File Structures, Addison-Wesley.
목차 Disks Storage as a Hierarchy Buffer Management Flash Memory 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 1)
1. Disks s 특징 Direct access storage devices (DASD) serial devices (magnetic tape) Hard disk, Floppy disk, Optical disk 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 2)
1.1 Disk 의구성 Platters Spindle Read /write heads Boom 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 3)
Hard Disk Drive 3D Visualization (http://www.youtube.com/watch?nr=1&v=bh80aay gixg&feature=endscreen) Video of opened hard drive performing several operations. (http://www.youtube.com/watch?v=9emwg3fwieu) / h? 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 4)
디스크의표면 Tracks Sectors Gaps 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 5)
Zoned Bit Recording (ZBR) 16 sectors/track 9 sectors/track Source: http://www.pcguide.com/ref/hdd/geom/trackszbr-c.html 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 6)
디스크드라이브의구성 섹터 (sector) 판 (platter) 헤드 (head) 트랙 (track) 실린더 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 7)
HDD Interface CPU와 HDD간의인터페이스 ATA (Advanced d Technology Attachment) ATA-1: 최초의규격, PIO 지원 ATA-7: UDMA6(Ultra DMA 133) 추가 Serial ATA (SATA1): 전송속도 = 150MB/sec SATA2: 전송속도 = 300MB/sec SATA3: 전송속도 = 600MB/sec USB2.0: 전송속도 = 480Mbps = 60MB/sec IEEE1394a: 전송속도 = 400Mbps = 50MB/sec 기타표준들 : USB3.0(4Gbps = 400MB/sec), SCSI, SAS, 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 8)
최신 HDD 사양 예 모델번호 : Seagate ST3000DM001 저장용량 : 3TB 크기 : 3.5" (Desktop HDD) 인터페이스 : SATA 3.0 6Gb/s 600 MB/s 회전속도 : 7200 RPM 캐쉬메모리 : 64MB 헤드 / 디스크 : 6/3 섹터당바이트수 : 4,096 탐색시간, 평균읽기 (ms): < 8.5 탐색시간, 평균쓰기 (ms): < 9.5 평균데이터전송속도 : 156 MB/s ( 최대 = 210 MB/s) 참조 : http://www.seagate.com/files/www com/files/www-content/product-content/barracuda-fam/desktop-content/product content/barracuda fam/desktop hdd/barracuda-7200-14/ko/docs/barracuda-desktop-hdd-ds-1770-1-1212kr.pdf 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 9)
1.2 저장용량 디스크의저장용량 Track 용량 = sectors/track bytes/sector Cylinder 용량 = tracks/cylinder track 용량 Drive 용량 = # of cylinders cylinder 용량 Example File Size : 20,000 record Number of bytes per sector = 512 Number of sectors per track = 40 Number of tracks per cylinder = 11 Number of cylinders = 1,331 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 10)
Example Data record 가 256byte일경우, 필요한 cylinder 수 각 sector 당저장할수있는 record 수 : 2 필요한전체 sector 수 : 20,000/2 = 10,000 cylinder 당 sector 수 : 40 11 = 440 필요한 cylinder 수 : 10,000/440 = 22.7 각 cylinder 들이인접한곳에저장될필요는없다. File Size : 20,000 000 record Number of bytes per sector = 512 Number of sectors per track = 40 Number of tracks per cylinder = 11 Number of cylinders = 1,331 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 11)
Hard drive capacity over time 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 12)
1.3 Clusters s 정의 Fixed number of contiguous sectors 장점 Reduce seek time File allocation table (FAT) 관리용이 Cluster 의크기에따른장단점? A: track, B: sector C: track sector, D: cluster 구분장점단점 Cluster 크기가작을때버려지는용량이적다 FAT 크기가커진다 Cluster 크기가클때 FAT 크기가작다순차처리에적합 버려지는용량이크다 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 13)
File allocation table (FAT) Cluster Cluster number location 1 The Part of the 2 FAT pertaining 3 to our file 3 1 2 FIGURE 3 5 The file manager FIGURE 3.5 The file manager determines which cluster in the file has the sector that is to be accessed.
FAT32 Windows 95 OSR2, Windows 98, Windows ME에서사용 32-bit cluster identifier ( 상위 4bit 는사용안함.) 28bit 한 cluster의최대크기 = 32 KB FAT32 의최대 volume 크기 32 KB/cluster * 2 28 clusters = 2 43 byte = 8 TB But, 새로운 FAT32 volume의크기는 32 GB로제한. File directory 에서 file 의크기를 32-bit 로표현 파일의최대크기 = 4 GB Default Cluster Sizes for FAT32 Volumes Partition Size 32 MB 8GB 4KB Cluster Size 8 GB 16 GB 8 KB 16 GB 32 GB 16 KB 32 GB 32 KB 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 15)
NTFS Windows의기본적인파일시스템포맷 64-bit cluster identifier ifi 이론적인최대 volume 크기 = 16 EB (16 Billion GB) 실제 volume 의크기는 32bit 주소체계를따르도록 최대크기 : 64 KB/cluster * (2 32 1) clusters = 256 TB 한 volume 당 2 32 1 개의파일저장가능 한파일의최대크기 = 16 TB Default Cluster Sizes for NTFS Volumes Partition Size Cluster Size 512 MB 이하 512 bytes 512 MB 1 GB 1 KB 1 GB 2 GB 2 KB 2 GB 이상 4 KB 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 16)
Fragmentation 예 : record size = 300 bytes, sector = 512 bytes 1 record d/ /sector: 구현용이, internal lfragmentation 1.x record /sector: 단편화, 여러번의 I/O Cluster 크기에따른 internal fragmentation 영남대학교데이터베이스연구실 Algorithm: Chapter 2 (Page 17)