PHƯƠNG PHÁP TRUY XU T D LI U
thông tin v controller, th o chu n giao ti p, i v ế ế
ATAPI,SCSI,IDE,Serial ATA , so sánh hi u năng...
T ch c lu n lý c a PC: H đi u hành luôn luôn ph i làm m t công vi c quan tr ng đó
chính là t ch c và tìm ki m d li u trên đĩa c ng. Đ i vi c vi c t ch c và tìm ki m ế ế
trên đĩa t thì đ t ng tác gi a h đi u hành và đĩa c ng l i càng ph i th t m t thi t ! ươ ế
Khác v i vi c đ c đĩa CD (ch cho phép đ c) , h đi u hành ch ng ph i quan tâm gì
đ n vi c xem l i t ch c d li u c a CD b thay đ i hay không.ế
Đ tăng t c và tính hi u qu cho vi c truy xu t nh ng byte d li u đ c thù trên đĩa t ,
h đi u hành ph i xây d ng c u trúc th m c và nh ng ch m c di n gi i nh ng gì mà ư
nó chi m d ng, nh ng ph n free và nh ng ph n không nên đ c s d ng nh m tránhế ượ
l i v t lý cho đĩa t . Ki u thông tin c a đĩa thì đ c g i là “đ nh d ng lu n lý” ( đây ượ
tôi s d ng t đĩa” đ minh h a s khác bi t gi a “nguyên cái c ng” và 1 partition
trên c ng đó nh m tránh l m l n gi a 2 khái ni m r t d l n l n)
Đ l y v trí m t vùng nào đó trên đĩa c ng, b đi u khi n c ng s s d ng các đ u
đ c nh ng m t đĩa khác nhau , v trí track, và v trí sector nh th PC cũng ph i ch ư ế
đ nh v trí c a “ đĩa” theo cách t ng t . Tuy nhi n đó cũng chính là m t đi u r t b t ươ
ti n cho h đi u hành giao ti p v i đĩa c ng b ng ngôn ng mà b đi u khi n có th ế
hi u đ c. Ví d đ n gi n đó là s sector, s track và s m t t c a m i đĩa c ng đ ượ ơ
khác nhau (khác lo i)
Chính vì l đó mà h đi u hành ph i xác đ nh d li u d a trên m t dãy s liên t c có
h th ng cho phép nó có th l u tr thông tin các ph n c a c ng. Đ gi m t i cho ư
đ u đ c h đi u hành ph i giám sát c ng c p đ sector, l p cao nh t mà h đi u
hành ph i làm vi c khi c n chính là m t chu i nhi u sector g i là clusters. S l ng ượ
sector trong m t cluster ph c thu c vào dung l ng c a c ng và đ c xác đ nh khi ượ ượ
đĩa đ c đ nh d ng.ượ
H đi u hành t ch c thành “ đĩa lu n lý” thành 2 vùng chính: vùng h th ng và vùng
d li u. Vùng h th ng bao g m các sector đ boot (boot sector), b ng h th ng thông
tin file (FAT) và th m c g c. Vùng d li u thì dùng đ ch a file và folder.ư
Boot-sector: n i l u tr boot record. Nó chính là sector v t lý đ u tiên trên đĩa m mơ ư
(sector 0) ho c sector kh i đ u c a m t đĩa lu n lý (m t phân vùng trên đĩa c ng đã
đ c đ nh d ng). Boot sector xác đ nh c u trúc c a đĩa (sector size , cluster size…).ượ
N u là đĩa boot đ c , nó s cũng ch a theo ch ng trình kh i đ ng h đi u hành.ế ượ ươ
C.Disk controller , ph ng pháp truy xu t d li u và chu n giao ti p đĩa c ng:ươ ế
B đi u khi n c ng (disk-controller) n m gi toàn quy n đi u khi n c ng. Nó cho
phép CPU và c ng có th làm vi c t t v i nhau. Có r t nhi u chu n giao ti p đã ra ế
đ i và phát tri n đ xác đ nh nguyên t c làm vi c gi a c ng và CPU. Nh ng chu n
d i đây đ i di n cho nh ng chu n thông d ng nh t th ng đ c s d ng gi a bướ ườ ượ
đi u khi n và c ng:
-ST-506/412 : tiêu chu n giao ti p đ c phát tri n b i hãng Seagate và đ c s d ng ế ượ ượ
vào th i kì nh ng máy IBM s khai. Chu n này ngày nay đã hoàn toàn đ c thay th ơ ượ ế
b i các chu n nhanh h n nh IDE,EIDE và SCSI ơ ư
-Enhanced Small Device Interface (ESDI): giao di n b đi u khi n c ng ph i c n
m t thi t b tr giúp riêng bi t. Là m t chu n thay th cho ST-506/412 tuy nhiên nó ế ế
cũng đã l i th i và đã b các đàn em IDE,EIDE và SCSI thay th . ế
-Small Computer System Interface (SCSI): v n th ng đ c g i vui là “skuzzy” (t ch ườ ượ
SCSI mà ra). Là m t lo i chu n giao ti p th ng đ c dùng đ k t n i PC đ n thi t b ế ườ ượ ế ế ế
khác nh c ng, máy in, scanner và CD-ROM. H u h t các card SCSI đ u khôngư ế
c n ph i bi t v ki u thi t b mà nó liên k t mà ch c n bi t duy nh t m t đi u “thi t b ế ế ế ế ế
đó làm vi c đ c v i SCSI”. Ta có th k t n i lên đ n 7 thi t b SCSI chung v i nhau ượ ế ế ế
và r i k t n i chúng đ m t c ng (port) SCSI trên máy vi tính, c nh là m t c u hình ế ế ư
th ng đ c g i là “dây chuy n b c nh t” (daisy chain).ườ ượ
-Intergrated Drive Electronics (IDE): giao di n b đi u khi n c ng k t h p v i b ế
đi u khi n đi n t trên board c a c ng. Giao ti p EIDE là m t phát tri n g n nh t ế
c a IDE.
IDE k t h p ch t ch nh ng ho t đ ng tr c kia thu c quy n c a c a card đi u khi nế ướ
riêng bây gi đã đ c tích h p tr c ti p vào bên trong c ng (n m trên board). K t ượ ế ế
qu là m t c ng IDE có th s d ng b k t n i IDE trên bo m ch ch mà không c n ế
đ n bus slot. Máy vi tính ch c n IDE card khi và ch khi trên bo m ch ch không đ cế ượ
tích h p b k t n i IDE. Card IDE cung c p m t k t n i v t lý thông qua m t bus slot ế ế
và có th cung c p thêm các ch c năng đi u khi n. M t c ng IDE ch có th ch a
đ c cao nh t là 528 MB d li u. V i chu n giao ti p m i h n, Enhanced IDE (EIDE),ượ ế ơ
c ng có th ch a đ n 8.4 GB. ế
Nh ng c ng IDE có dung l ng v t quá 504MB đôi lúc ph i c n đ n nh ng ph n ượ ượ ế
m m chuyên bi t nh là Ontrack’s Disk Manager ho c là Micro House’s EZ-Drive, b i ư
vì có r t nhi u máy vi tính không có BIOS ho c controller h tr nh ng c ng IDE
dung l ng l n.ượ
-Extended Intergrated Drive Electronics (EIDE): chu n này còn đ c g i là “Enhance ượ
IDE”, là m t chu n giao ti p gíup cho b đi u khi n c ng có th k t n i khá nhi u ế ế
thi t b l u tr ( c ng dung l ng l n, CD-ROM và băng t ) v i máy tính. EIDE làế ư ượ
m t b c phát tri n c a chu n IDE. ướ
Trong các chu n trên thì ch có ST-506/412 và ESDI là r t khó ch u v i c ng và ph i
c n b đi u khi n riêng bi t.
Nh ng chu n trên không ch đ n thu n khác bi t ch dung l ng mà nó có th truy ơ ượ
xu t đ c mà còn là t c đ c a chúng. Ví d ST-506/412 có th truy n đi kho ng 5- ượ
7.5 megabit/giây trong khi đó EIDE có th truy n đi đ n 16.6 megabit/giây. ế
c ng SCSI là c ng có t c đ nhanh nh t trong các chu n c ng b i vì b đi u
khi n SCSI (ho c host adapter) có CPU riêng đ qu n lý vi c truy n nh n d li u và
công vi c c a các thi t b liên quan mà không c n s giúp đ c a CPU chính c a h ế
th ng. H th ng c a b n s ch y nhanh h n r t nhi u do CPU chính không c n ph i ơ
quan tâm đ n vi c truy n t i mà dành s c cho các công vi c khác (đây lý do chínhế
khíên cho các thi t b chu n SCSI luôn luôn m c ti n h n các chu n khác)ế ơ
Thêm n a là c ng SCSI không c n ph n b o v và không m c ph i l i d ch sector
(đi u cho đ n bây gi v n m c ph i trên c ng EIDE) ế
m m s d ng giao ti p đi u khi n r t ch m t lúc mà chúng xu t hi n cho đ n gi . ế ế
m m ch có th truy n nh n đ c cao nh t là 500 kbit/giây nh ng thông th ng ựơ ư ườ
350kbit/giây.
CD-ROM có th s d ng chu n EIDE,SCSI và m t s chu n khác. Nh ng card
adapter (ti p h p - đi u ph i) dành cho nhi u CD-ROM s d ng m t t p h p chu nế
SCSI sao cho ch thu c m t thi t b duy nh t. ế
Đâu là ch khác bi t gi a SCSI và EIDE ? Ngoài m t đi m khác bi t khá rõ đã đ c ượ
trình bày ph n trên còn đi m sau:
-SCSI th hi n s c m nh qua vi c cho phép m t lo t thi t b có th khai thác m t ế
đ ng bus trong cùng m t th i đi m và không c n s d ng bus n u thi t b không yêuườ ế ế
c u. Đây là m t đi m r t l i th c a SCSI ! Trái l i so v i SCSI thì EIDE chia thành 2 ế
kênh bao g m Primary và Secondary và hai kênh này s d ng hai đ ng bus khác ườ
nhau. Tuy nhiên trong m i kênh EIDE l i chia thành 2 c p Master và Slaver cho 2 thi t ế
b đ c g n cùng m t cáp trên m t kênh. Vì c 2 thi t b ch đ c phép s d ng 1 ượ ế ượ
đ ng bus mà EIDE l i không có kh năng cho phép nhi u thi t b cùng s d ng 1ườ ế
đ ng bus trong cùng m t lúc nên các thi t b này s tu n t l n l t đ c c p phépườ ế ượ ượ
s d ng bus. Đây là m t đi m r t h n ch c a EIDE đ c bi t n u b n g n c ng ế ế
chung v i CD-ROM trên cùng 1 kênh thì t c đ s gi m đi r t nhi u lý do nh sau : ư
CD-ROM có t c đ r t ch m nh v y th i gian mà CD_ROM s d ng đ ng bus s ư ườ
r t lâu t đó vi c c p quy n s d ng cho c ng s b h n ch d n đ n t c đ c a ế ế
máy châm h n đi. Đây cũng là lý do gi i thích vi c ng i ta v n khuyên b n nên g n ườ
c ng c a mình và kênh Primary CD-ROM vào kênh Secondary và n u có t 2 c ế
c ng tr lên thì t t nh t là nên g n các c ng có t c đ t ng đ ng v i nhau trên ươ ươ
cùng 1 kênh.
Ngoài ra chu n SCSI còn có nhi u ki u khác nhau: lo i 8bit thì c n cáp 50 s i, lo i 16
bit thì c n cáp 68 s i (SCSI m r ng). Nh p (clock) có th là 5 MHz (SCSI 1) , 10MHz
(FAST SCSI) , 20 MHz (Fast20 – ultra SCSI) , 40 MHz (Ultra 2-SCSI) ho c 80Mhz
(Ultra 3-SCSI).
Sau đây là b ng th ng kê kh năng truy n d n d li u c a chu n SCSI:
---SCSI Bus Clock----|----8 bit 50 s i-------|-----16 bit 68 s i-(m r ng)—
5 MHz (SCSI 1) 5 Mgbyte/s Không h tr
10MHz (Fast SCSI) 10 Mgbyte/s 20 Mgbyte/s
20MHz(Ultra SCSI) 20 Mgbyte/s 40 Mgbtye/s
40Mhz (ultra2 SCSI) 40 Mgbyte/s 80 Mgbyte/s
80MHz(ultr SCSI) 80 Mgbyte/s 160 Mgbyte/s
Trong b tutorial này tôi s đ c p v n t t các công ngh Ultra DMA/ATA/ATAPI/PIO
đ ng th i so sánh hi u năng gi a chúng ch không phân tích sâu. Riêng v i chu n
giao ti p Serial ATA , tôi s đi sâu h n vào các khía c nh k thu t vì chu n Serial ATAế ơ
đ c đánh giá là “chu n c a t ng lai”.ượ ươ
B n thân ATA/Ultra DMA/PIO không đ c g i là “chu n” mà là công ngh giao di n ượ
truy xu t d li u. Khi c ng đ c làm b i các công ngh này (tuỳ theo t ng th h ) thì ượ ế
kh năng truy xu t c a chúng s khác nhau (t ng t nh chu n SCSI cũng chia ươ ư
thành nhi u lo i). Công ngh ATA chính là ti n thân c a công ngh Ultra ATA / Ultra
DMA ngày nay. ATA ra đ i t lúc chu n IDE b t đ u l di n chinh ph c th tr ng s n ườ
ph m l u tr . ATA là t vi t t t c a Address Transfer Area - Đ nh v vùng truy n d n ư ế
và Ultra DMA – Ultra Direct Memory Access – Đ nh h ng truy xu t b nh cao c p. ướ
ATA ch m h n r t nhi u so v i Ultra ATA. Ultra ATA đ c phát tri n d a trên n n t ng ơ ượ
công ngh Ultra DMA/33 ra đ i b i s n l c k t h p thi t k gi a Intel , Quantum , ế ế ế
Seagate nh m cung c p m t th h giao ti p m i cho các h th ng máy tính đ bàn ế ế
(desktop PCs).
Direct Memory Access (DMA): cho phép đ nh h ng truy n nh n d li u tr c ti p đ n ướ ế ế
b nh h th ng mà không c n thông qua CPU h th ng. DMA gia tăng t c đ truy n
t i b ng cách s d ng b đi u khi n DMA đ qu n lý d li u truy n nh n nhanh h n ơ
nhi u so v i vi c đi u khi n thông qua CPU. H đi u hành c n ph i cài đ t các driver
t ng thích DMA tr c khi s d ng ch c năng DMA.ươ ướ
Bus Mastering DMA: cho phép card giao di n ,ho c b đi u khi n c ng, qu n lý s
truy n nh n d li u t c ng tr c ti p đ n b nh chính c a h th ng. Nh ng nhà ế ế
s n xu t bo m ch ch cung c p các driver c a bus mastering h tr đi u khi n DMA
b i các card giao di n (b điêu khi n) t ng thích v i bus mastering. ươ
Ultra DMA (UDMA): là phiên b n cu i cùng c a giao th c ATA Bus Mastering DMA. Nó
nâng t c đ truy n t i c a ATA bus t 16.6 Mgbyte/s lên 33 Mgbyte/s. Công ngh
ATA/ATAPI 4 có kh năng ki m tra l i nh m đ m b o tính toàn v n cho d li u t c
đ cao. C n ph i l u ý là chu n giao th c SCSI Ultra 2 cũng s d ng m t giao th c ư
bus Mastering DMA m i cho nên đôi khi ng i ta cũng quy nó vào là Ultra DMA. ườ
Đi m khác bi t gi a Ultra DMA/ATA và ATA không h n ch t c đ và vi c Ultra DMA
ph i có driver t ng thích mà còn th hi n s i cáp c a 2 lo i này cũng khác nhau. ươ
V m t kích th c và hình dáng thì cáp ATA và Ultra ATA gi ng y h t nh nhau (tuy ướ ư
nhiên cũng có m t s mainboard - nh t là các th h sau này - th ng làm đ u ế ườ
connector c a cáp Ultra ATA là màu xanh da tr i) nh ng v c u trúc l i r t khác nhau. ư
T ATA cho đ n Ultra ATA 2 s d ng cáp 40 s i , m i s i có 1 lõi và n i v i 1 pin; cáp ế
Ultra DMA cũng có 40 s i (vì t ng thích chu n EIDE/IDE) nh ng khác ch m i s i ươ ư
l i có đ n 2 lõi và đ c b n ch t vào nhau n i vào 1 pin. N u cáp ATA->Ultra ATA 2 ế ượ ế
g m 40 lõi và m i lõi có nhi m v truy n d n d li u riêng thì v i cable Ultra DMA có
đ n 80 lõi trong đó 40 lõi làm ch c năng truy n d li u 40 lõi còn l i n m tu n t gi aế
các lõi truy n d li u làm nhi m v “dây đ t” và tránh l i toàn v n d li u do tín hi u
nhi u gây ra khi t n s quá cao.
Trong quá trình truy n nh n không ph i lúc nào c ng cũng đ t đ c h t công su t ượ ế
truy n nh n vì nh ng tín hi u nhi u luôn là tr ng i r t l n nh h ng đ n quá trình ưở ế
truy n d li u trên cáp chu n. Nh ng đi m sau đây khi n c ng không th phát huy ế
h t s c m nh c a nó:ế
-Cáp quá cũ , là d ng cáp ch t l ng kém ho c tháo ráp quá nhìêu d n đ n cáp b ượ ế
rách ng m.
-Công su t c a máy quá th a (công su t c a ngu n) s t o ra t tr ng gây nhi u tín ườ
hi u. Nh ng h th ng có quá nhi u c ng g n ch ng lên nhau, có t 2 ngu n c p
đi n tr lên ho c là đi n tr ng t màn hình CRT. ườ
-H th ng b over-clock v t quá m c đ cho phép c a nhà s n xu t gây ra l i truy n ượ