You are on page 1of 17

Tổng quan về đĩa cứng và các cách khắc phục bad sector...

________________________________________
Tổng quan về Ổ cứng - Hard Disk Drive (HDD)

I. Giới thiệu về ổ cứng IDE (Intergrate Drive Electronics):

A. Cấu trúc vật lý của ổ cứng:

Ổ cứng (Harddisk driver) là một kiểu thiết bị lưu trữ dữ liệu (storage device). Mục đích
chính của các nhà sản xuất trong việc chế tạo ra thiết bị này đó chính là lưu trữ dữ liệu.
Mục đích chính của các nhà sản xuất trong việc chế tạo ra thiết bị này đó chính là lưu trữ
dữ liệu và để thay thế đĩa mềm (tại thời điểm HDD ra đời chưa có các loại ổ đĩa quang
như CD-ROM hay ZIP). Có một số nhược điểm làm hạn chế tiện ích và độ tin cậy của đĩa
mềm. Ngay cả các ổ đĩa mềm tốt nhất cũng quá chậm khi đọc/ghi dữ liệu, lại tiêu thụ
điện năng nhiều so với các thiết bị khác trong máy tính. Ổ đĩa mềm còn bị hạn chế về
dung lượng lưu trữ, việc chuyển đỗi giữa nhiều đĩa là cách làm bất tiện và không tin cậy.
Nhu cầu về một thiết bị lưu trữ lớn và cố định đã làm nảy sinh ra ổ đĩa cứng (ổ cứng) vào
những năm đầu của thập kỷ 80. Đương nhiên khả năng lưu trữ lớn lại đẩy mạnh hơn nữa
sự phát triển của máy tính. Hiện nay ổ cứng là một thiết bị chuẩn trong các loại máy tính.

Cấu tạo của ổ cứng:


Bộ khung
Đĩa từ
Các đầu đọc/ghi
Bộ dích chuyển đầu từ:
Mô tơ trục quay
Các loại mạch điện của ổ cứng

1. Bộ khung:
Bộ khung cơ khí rất quan trọng đối với hoạt động chính xác của ổ đĩa cứng, ảnh hưởng
đến sự hợp nhất về cấu trúc, về nhiệt và về điện của ổ đĩa. Khung cần phải cứng và tạo
nên một cái nền vững chắc để lắp ráp các bộ phận khác. Các ổ đĩa cứng thường dùng
khung nhôm đúc, nhưng các ổ cứng loại nhỏ của máy tính xách tay thường dùng vo
plastic. Vật liệu vỏ cụ thể phụ thuộc vào yếu tố hình dạng (form factor) tức là kích thước
của ổ cứng.

2. Đĩa từ
Đĩa từ của ổ cứng là các đĩa bằng nhôm, thuỷ tinh, hoặc sứ có chế độ hoạt động tương đối
năng. Đĩa được chế tạo rất đặc biệt giúp cho nó có khả năng lưu trữ tốt, an toàn và không
bị “nhão” (nhả từ) như các thiết bị đọc ghi bằng từ tính khác (tuy nhiên cũng có một số
loại đĩa từ sản xuất không đạt tiêu chuẩn qua thời gian có hiện tượng bị “nhão”). Đĩa
được phủ vật liệu từ ở cả hai mặt (môi trường lưu trữ thực) và bao bọc bằng lớp vỏ bảo
vệ. Sau khi đã hoàn tất và đánh bóng, các đĩa này được xếp chồng lên nhau và ghép nối
với môtơ quay; có một số loại đĩa cứng chỉ có một đĩa từ. Trước khi chồng đĩa được lắp
cố định vào khung, cơ cấu các đầu từ được ghép vào giữa các đĩa.
3. Các đầu đọc ghi
Trước kia các đầu đọc/ghi của ổ đĩa cứng thường được chế rao như trong ổ đĩa mềm, lõi
sắt mềm cộng với 8 đến 34 (hoặc hơn) vòng dây đồng mảnh. Các đầu từ này có kích
thước lứon và tương đối năng làm hạn chế số rãnh có thể có trên mặt đĩa mà hệ thống
chuyển dịch đầu từ phải khắc phục.
Hiện nay, các thiết kế đầu từ đã loại bỏ các kiểu quấn dây cổ điển mà dùng loại đầu từ
màng mỏng. Nó được chế tạo giống như vi mạch dùng công nghệ quang hóa. Do kích
thước nhỏ và nhẹ nên độ rộng của rãnh ghi cũng nhỏ hơn và thời gian dịch chuyển đầu tư
nhanh hơn.
Trong cấu trúc tổng thể, các đầu đọc/ghi này được gắn vào các cánh tay kim loại dài điều
khiển bằng các môtơ. Các vi mạch tiền khuếch đại của đầu từ thường được gắn trên tấm
vi mạch in nhỏ nằm trong bộ dịch chuyển đầu từ. Toàn bộ cấu trúc này được bọc kín
trong hộp đĩa. Hộp được đậy kín bằng nắp kim loại có gioăng lót.

4. Bộ dịch chuyển đầu từ:


Nhiều loại đĩa cứng sử dụng môtơ cuộn dây di động (voice coil motor) còn gọi là môtơ
cuộn dây quay (rotary coil) hoặc servo để điều khiển chuyển động của đầu từ. Các môtơ
servo có kích thước nhỏ, nhẹ rất thích hợp với ổ cứng nhỏ gọn và có thời gian truy cập
nhanh.
Thách thức lớn nhất trong việc điều khiển đầu tư là giữ cho được nó đúng ngay tâm rãnh
mong muốn. Nói cách khác là các nhiễu loại khí động học, các hiệu ứng nhiệt trên đĩa từ
và các biến thiên của dòng điều khiển môtơ servo có thể gây nên sai số trong việc điều
định vịi đầu từ. Vị trí của đầu từ phải luôn luôn được kiểm tra và điều chỉnh kịp thời để
đảm bảo vị trí rãnh thật chính xác. Quá trình hiệu chỉnh đầu từ theo rãnh gọi là phương
pháp servo đầu tư. Cần có thông tin để so sánh vị trí thực và vị trí mong muốn của đầu tư.
Thông tin servo dành riêng (Dedicated servo information) được ghi trên mặt đĩa từ dự
trữ.
Thông tin servo nhúng (Embedded servo information) lại được mã hoá thành các chùm
dữ liệu ngắn đặt trên từng sector
Hệ thống servo sử dụng sự lệch pha của các xuung tín hiệu của các rãnh kế cận để xác
định đầu từ có được đặt đúng giữa rãnh hay không.[/i]

5. Môtơ trục quay:


Một trong những yếu tố xác định chất lượng của ổ cứng là tốc độ mà đĩa từ lướt qua dưới
đầu đọc/ghi. Đĩa từ lướt qua đầu từ với tốc độ khá cao (ít nhất là 3600 vòng/phút). Môtơ
trục (spindle môtơ) có chức năng làm quay các đĩa từ. Môtơ trục là loại môtơ không có
chỗi quét, chiều cao thấp, dùng điện một chiều, tương tự như môtơ trong ổ đĩa mềm. Khi
môtơ được cấp điện, một từ trường được tạo ra trong các cuốn dây môtơ. Khi điện cắt,
năng lượng từ trường lưu trữ trong các cuộn dây môtơ được giải phóng dưới dạng xung
điện thế ngược. Kỹ thuật Hãm động (dynamic braking) sẽ sử dụng năng lượng của xung
điện thế ngược đó để làm dừng đĩa lại.

Các mạch điện tử của ổ cứng


Nhìn thẳng vào ổ cứng bộ phận đầu tiên mà chúng ta thấy chính là bo mạch điều khiển. Ổ
đĩa cứng được điều khiển bởi các mạch điẹn tử tương đối phức tạp. Mạch điện tử được
gắn dưới bộ khung và chứa hoàn toàn các mạch cần thiết để truyền tải các tín hiệu điều
khiển và dữ liệu với bộ giao diện vật lý riêng, điều khiển đầu đọc/ghi, thực hiện đọc/ghi
theo yêu cầu và để quay các đĩa từ. Mỗi một chức năng kể trên phải được thực hiện hoàn
hảo với độ chính xác cao. Bo mạch điều khiển này bao gồm bộ chip controller, chip
input/output IO, bộ nhớ đệm cho ổ cứng (HDD cache), một ổ cắm nguồn 5+ 5- 12- 12+,
và chân cắm chuẩn IDE 39/40 chân. Đối với các thế hệ ổ cứng trước đây bộ nhớ đệm rất
thấp chỉ có từ 512kb trở xuống còn với các thế hệ ổ cứng hiện đại sau này thì số lượng
cache rất cao từ 1Mb trở lên. Trong bo mạch của ổ cứng thì motor, chip controller và bộ
nhớ đệm đóng vai trò rất quan trọng. Bộ nhớ đệm càng cao thì tốc độ truy xuất dữ liệu
trên ổ cứng sẽ nhanh hơn rất nhiều và vấn đề sai sót dữ liệu cũng rất thấp. Tương tự, tốc
độ quay của motor và khả năng điều khiển của bộ controller cũng không kém phần quan
trọng, nếu tốc độ của ổ cứng (rpm - revolution per minute - số vòng trên phút) càng cao
thì tốc độ truy xuất dữ liệu sẽ càng nhanh.

Các khái niệm của ổ cứng:


Rãnh (track)
Cung từ (Sector)
Xi lanh (Cylinder)
.....

-Track (rãnh) :
Có thể coi mỗi mặt đĩa cứng là một trường hai chiều: cao và rộng. Theo kiểu hình học
này thì dữ liệu được ghi vào các vòng tròn đồng tâm, phân bố từ trục quay ra tới rìa đĩa.
Mỗi vòng trong đồng tâm trên đĩa gọi là track. Thông thường,mỗi đĩa có từ 312 đến 2048
rãnh. Track là một tập hợp bao gồm một số sector nhất định nhưng dung lượng từng track
khác nhau có độ lớn từ trong ra ngoài (Track 0>track 1 >track 2 >…>track N>track N+1)

Sector (cung từ): Mỗi track là một vòng tròn dữ liệu có tâm là tâm của trục quay đĩa từ.
Một track chia thành rất nhiều cung, người ta gọi các cung này là sector (cung từ). Sector
là vùng vật lý chứa dữ liệu nhỏ nhất trong ổ cứng kể cả khi đọc và ghi. Thông thường thì
1 sector chứa được 512 byte dữ liệu (US Windows). Mỗi track đều chia thành một lượng
sector nhất định. Tuy nhiên, vì các track bên ngoài bao giờ cũng lớn hơn các track phía
trong (gần trục) cho nên càng vào sâu các track phía trong thì dung lượng mà 1 sector có
thể chứa được càng thấp.

Cấu trúc của sector :


-Sector header (thông tin cơ bản) : lưu trữ các thông tin về vị trí đầu đọc, cylinder, và số
thứ tự vật lý của sector. Nó cũng đảm nhận luôn nhiệm vụ xác định sector có sử dụng
được hay không hoặc sector nào sẽ lưu dữ liệu thay cho sector này. Thông tin cuối cùng
mà sector header cung cấp chính là giá trị của việc kiểm tra lỗi dữ liệu tuần hoàn (hay còn
gọi là lỗi chẵn lẽ CRC), giá trị này giúp cho các chương trình xác định được sector header
có chính xác hay không.
-Góc rỗng (GAP) : đối với một sector sự có mặt của góc rỗng là rất cần thiết. Góc rỗng
cung cấp cho đầu đọc/ghi một khoảng thời gian nhất định để nó có thể chuyển từ việc đọc
dữ liệu trên sector sang ghi dữ liệu. Khi đọc dữ liệu, đầu từ sẽ bỏ qua góc rỗng.
-Dữ liệu: Thông thường khi ta format đĩa cứng duới nền Windows hoặc DOS thì một
sector có thể chứa được 512 byte dữ liệu. Phần cuối cùng của vùng dữ liệu này chứa
thông tin về mã sửa lỗi (ECCs), dùng cho việc phát hiện và sửa lỗi.
- Góc rỗng mở rộng (Inter-GAP): Có gì khác nhau giữa “Góc rỗng” và “Góc rỗng mở
rộng” (GAP và Inter-GAP) ? Góc rỗng cung cấp cho đầu từ một khoảng thời gian nhất
định đễ đầu từ chuyển đổi từ việc “đọc dữ liệu ” sang “ghi dữ liệu” trên cùng 1 sector.
Còn Góc rỗng mở rộng thì cung cấp cho đầu đọc 1 khoản thời gian nhất định để đầu đọc
có thể chuyển từ việc “ghi trên 1 sector này” sang “đọc sang sector kết tiếp”. Tương tự
như Gócrỗng, khi đọc dữ liệu đầu đọc bỏ qua Góc rỗng mở rộng.

-Cylinder bao gồm những track có chung một tâm và đồng trục nằm trên những mặt đĩa
từ.

-Số sector trên một track: khi sản xuất ra đĩa cứng nhà sản xuất luôn ghi rõ ràng những
thông số liên quan đến ổ cứng trong đó có phần số sector trên một track (sector per
track). Những ổ cứng hiện đại ngày nay sử dụng rất nhiều kích cỡ khác nhau trên từng
track. Ổ cứng ghi và đọc theo nguyên tắc từ ngoài vào trong trên mặt đĩa từ. Các track
nằm ngoài cùng thì bao giờ cũng có nhiều không gian cho sector hơn là các track nằm sâu
ở bên trong (gần tâm đĩa từ). Do đó những phần dữ liệu nằm trên sector và track đầu tiên
của ổ cứng bao giờ cũng được truy xuất nhanh nhất.

Đầu đọc (head) và motor trợ động (servo-motor): Trên mỗi mặt đĩa từ của ổ cứng thì đều
có một đầu đọc (head) riêng biệt những đầu đọc này có vai trò đọc/ghi dữ liệu lên bề mặt
đĩa từ. Trước đây những loại ổ cứng cũ đều sử dụng loại motor dịch chuyển (step-motor)
để di chuyển đầu đọc. Loại motor này làm tốn rất nhiều thời gian và rất mau hư vì thế
ngày nay người ta không còn sản xuất những loại ổ cứng như thế mà thay vào đó là
những loại ổ cứng được thiết kế “motor trợ động” (servo-motor) có cấu trúc đơn giản hơn
motor dịch chuyển rất nhiều và thời gian dịch chuyển nhanh đồng thời rất ít bị hư hại.
Motor trợ động đóng một vai trò rất quan trọng trong việc đọc ghi của đầu đọc. Tốc độ
của motor trợ động phải đồng bộ với tốc độ của motor chính (motor quay đĩa từ) nếu
không sẽ không thể đọc chính xác được dữ liệu. Cấu trúc motor trợ động khá đơn giản nó
không như một motor thông thường mà chỉ đơn thuần là một bộ phận chuyển động có
giới hạn trong một góc quay nhất định. Motor trợ động chỉ là một bộ khung có quấn cuộn
cảm phát sinh lực từ để chuyển động và một nam châm có lực hút rất mạnh được gắn vào
khung điều khiển của đầu đọc. Ở trạng thái binh thường không hoạt động motor trợ động
sẽ tự động đưa đầu đọc vào khoang trống, một khoảng không trống có khung bảo vệ bên
ngoài các đĩa từ, để tránh rủi ro tối đa cho các đầu đọc cực nhỏ được gắn trên cần đọc.
Bên trong ổ cứng là một môi trường chân không hoàn toàn và chống ẩm. Giữa đầu đọc và
mặt đĩa từ có một khoảng không gian cực nhỏ có thể nói là siêu nhỏ. Ở đây tôi cũng xin
khẳng định lại là “ở giữa mặt đĩa từ và đầu đọc là một khoảng không gian siêu nhỏ trong
môi trường chân không bên trong ổ cứng” chứ không phải là “giữa ổ cứng và đầu đọc có
một lớp đệm không khí hoặc lớp đệm từ trường” như một số bài báo và sách đã đề cập
đến. Tốc độ motor quay đĩa từ rất cao khi quay sẽ tạo ra gió nếu như ta mở nắp đậy ổ
cứng ra, nếu có không khí bên trong ổ cứng thì khi đĩa từ quay với tốc độ cao như thế sẽ
tạo gió làm rung và có thể thổi bay luôn cả những đầu đọc đồng thời trong không khí có
rất nhiều bụi bẩn trong khi đó mặt đĩa từ phải luôn luôn sạch bóng. Do đó bên trong ổ
cứng phải là môi trường chân không. Ổ cứng là một thiết bị lưu trữ dữ liệu bằng từ tính,
đầu từ đọc và ghi bằng từ tính và mặt đĩa từ cũng có độ nhạy từ rất cao như thế thì không
thể nào ở giữa đầu đọc và đĩa từ lại có thêm một lớp đệm từ trường như là “xe lửa cao
tốc” được.

Tốc độ quay của motor chính (motor quay đĩa từ): Thông thường thì các loại đĩa cứng
hiện nay có tốc độ quay từ 5200rpm đến 7200rpm. Không chỉ có thế trên thị trường hiện
nay đã có những loại ổ cứng chuyên dụng “đụng nóc” với khả năng có tốc độ đến
10000rpm. Tốc độ quay giữ một vai trò thiết yếu đến tốc độ truy xuất dữ liệu của ổ cứng,
quay càng nhanh thì đọc và ghi càng nhanh nhưng như thế cũng đồng nghĩa là ổ cứng sẽ
kêu to hơn và mau nóng hơn. Khi ổ cứng nóng lên (có nghĩa là đĩa từ cũng sẽ nóng lên
theo) sẽ làm cho lực từ bị hao hụt và “nhiễu” lúc đó dữ liệu đọc và ghi sẽ có rất nhiều vấn
đề. Với những loại ỗ cứng có tốc độ cao như thế này thì các nhà sản xuất luôn khuyến cáo
người tiêu dùng nên trang bị thêm quạt giải nhiệt để kéo dài tuổi thọ và dữ liệu của ổ
cứng. Nhờ có tốc độ cao như thế mà các ổ cứng thế hệ sau này đều có khả năng đọc hết
tất cả mọi sector trên cùng một track chỉ bằng một vòng quay. Tốc độ của motor quay đĩa
từ luôn luôn là một hằng số, nếu nó bị thay đổi có nghĩa là ổ cứng đó không thể sử được
nữa.

Thời gian tìm, thời gian chuyển đầu đọc và thời gian chuyển cylinder: Cách tổ chức dữ
liệu trên ổ cứng là cách tổ chức dữ liệu có tính liên tục do đó khi bộ controller phát lệnh
seek (tìm kiếm) thì bộ controller sẽ chờ đầu đọc một khoảng thời gian nhất định để đầu
đọc tìm ra đúng track,sector. Thời gian đó gọi là thời gian dùng để xác định vị trí (tìm
kiếm ra sector,track). Tuy nhiên đối với một số ổ cứng (đặc biệt là chuẩn SCSI ) đôi khi
thực thi lệnh seek không chính xác. Bộ controller của những ỗ đĩa này chỉ đưa đầu đọc
đến sector hoặc track gần đến vị trí xác định hoặc sẽ không di chuyển đầu đọc mà chỉ để
yên ở đó. Vì “cách lưu trữ dữ liệu của ổ cứng có tính liên tục” nên thời gian để đầu đọc
chuyển từ sector này sang sector kế tiếp hoặc từ track này sang track kết tiếp sẽ rất nhanh
và ngược lại nếu đang đọc ở sector 1 track 0 sang sector 13 track 3 thì sẽ mất rất nhiều
thời gian ! Chính vì điều này mà thời gian tìm một file trên một ổ cứng có dung lượng
càng nhỏ thì càng nhanh và ngược lại. Thời gian chuyển cylinder là thời gian để đầu đọc
chuyển từ track này sang track khác. Thời gian được tính theo đơn vị mili-giây (ms).

Thời gian tìm sector trên 1 track xác định (Rotational latency): hay còn gọi là “góc trễ
quay”: khi đầu đọc đã tìm được track xác định, bộ controller tiếp tục thực hiện việc tìm
sector trên track này. Lúc này đầu đọc sẽ không di chuyển nữa mà sẽ đứng yên trong lúc
đó đĩa từ quay liên tục cho đến khi nào đầu đọc xác định được vị trí sector mà nó cần tìm.
Thời gian để làm công vịêc này gọi là “Thời gian tìm sector trên 1 track xác định“ -
Rotational latency. Tốc độ của ổ cứng càng nhanh thì thời gian tìm sector trên 1 track
càng ít. Thời gian trung bình mà đầu đọc tìm ra sector chính xác trên 1 track là
4ms(7200rpm) đến 6ms(5400rpm)

Thời gian truy cập dữ liệu (Data Access time): Thời gian truy cập dữ liệu là tổng thời
gian tìm kiếm, chuyển đầu đọc và tìm sector trên 1 track xác định. Nói như thế là vì đầu
tiên bộ controller phải xác định vị trí để đưa đầu đọc đến vị trí trên cylinder cần tìm. Sau
đó khi dữ liệu đã được đọc hoặc ghi thì cần thêm thời gian để chuyển đầu đọc để tìm ra
track và cuối cùng sau khi xác định được track thì phải tốn thêm một ít thời gian cho việc
tìm ra đúng sector trên track đó.

Cluster: (chỉ dành riêng cho FATx File System): là đơn vị lưu trữ cơ bản được chỉ định
của đĩa từ. Cluster bao gồm 1 hoặc nhiều sector. Không gian lưu trữ của ổ cứng được xác
định dựa trên những cluster, cho dù đó là một file (hoặc một phần của file) chỉ chiếm
dụng một phần hoặc toàn bộ không gian của cluster thì điều đó cũng được coi là đã sử
dụng một phần không gian của ổ cứng. Hiếm khi nào dung lượng của một file vừa bằng
tổng dung lượng một số cluster. Nói như thế là vì thông thường cluster cuối cùng lưu trữ
một phần dữ liệu của file thường chứa luôn cả những không gian trống không dùng đến
mà người ta vẫn thường gọi là “không gian rỗng” ở phần cuối của cluster. Ta thử làm một
phép tính đơn giản để minh hoạ vấn đề này:

Cho 1 cluster = 4 KB; ta có 1 file test.txt dung lượng 14 KB như vậy khi ta lưu file
test.txt xuống đĩa cứng file này sẽ được tách thành 4 cluster lần lượt là :
Cluster 1 -> 4KB đầu tiên
Cluster 2 -> 4KB tiếp theo
Cluster 3 -> 4KB tiếp theo
Cluster 4 (cluster cuối cùng) -> lưu trữ 2KB còn lại và 2KB bị bỏ trống.

2KB bỏ trống này không thuộc về bất cứ file nào, không lưu bất cứ dữ liệu nào vì cluster
4 đã được chỉ định thuộc về file test.txt do đó đây là một khoảng không gian rỗng hay nói
khác đi “chúng ta đã phí phạm một khoảng không gian trên ổ cứng” - đây chính là một
trong những điểm khác nhau và tiến bộ giữa các thế hệ FAT File System mà chúng tôi sẽ
nói đến trong phần hệ thống file của OS ở phần sau. Mặc dù thế nhưng rõ ràng cái mà
người ta nhận được từ cluster là rất đáng kể, nó làm tăng hiệu năng làm việc của ổ cứng
và giúp hệ điều hành quản lý file tốt hơn nhiều so với việc bắt hệ điều hành và ổ cứng
phải làm việc ở cấp độ sector.

Lost cluster: thông thường khi các bạn dùng các chương trình sửa ổ cứng nhất là
scandisk/ndd (chạy trên FATx File System) đôi khi bạn nhận được thông báo “Lost
cluster found! Fix it ?” Thật ra trong quá trong ổ cứng đọc và ghi dữ liệu, hệ điều hành có
vai trò mở file/tạo file (open/assign file) sau đó tiếp tục phát lệnh để ổ cứng ghi từng phần
dữ liệu vào từng cluster được chỉ định rồi cuối cùng ra lệnh đóng file (close file). Tuy
nhiên đôi khi có một số trường hợp khi ổ cứng đang ghi dữ liệu vào các cluster đã được
chỉ định nhưng bất ngờ bị mất điện hoặc kết thúc quá trình ghi dữ liệu nhưng lại không
thực hiện quá trình đóng file, cho nên những cluster này sẽ được công nhận là “đã được
sử dụng” nhưng lại không thuộc về bất cứ một file nào. Trong trường hợp này các
chương trình sửa đĩa sẽ ghi các thông tin mà các các cluster này lưu trữ ra từng file một
để backup lại các dữ liệu có giá trị bị mất.

Chain: (chỉ dành riêng cho FATx File System): không phải lúc nào dữ liệu của một file
cũng được ghi trên nhưng cluster liên tiếp nhau (1,2,3,4…n). Do đó nếu như cluster kế
tiếp đã được chỉ định là đã sử dụng thì OS sẽ cố gắng tìm đến cluster kế tiếp hoặc kế tiếp
nữa cho đến khi tìm ra cluster trống để ghi dữ liệu vào. Việc dữ liệu của một file (hoặc
từng phần) được ghi rải rác mà không có sự liên tục trên những cluster thì được gọi là
“một chuỗi các cluster” (chain) và việc OS dịnh dạng trên bảng FAT cũng được gọi là
“định dạng một chuỗi FAT”. Lost chain cũng tương tự như lost cluster chỉ khác là nguyên
cả một chuỗi cluster bị khai báo nhầm là đã được sử dụng.

Bộ đệm ổ cứng (HDD Cache): Hiện nay tuy các nhà sản xuất đang ngày càng một nâng
cao tốc độ của ổ cứng nhưng chắc chắn là tốc độ truy xuất dữ liệu của ổ cứng sẽ không
bao giờ có thể nhanh bằng RAM (Random Access Memory - bộ nhớ truy xuất ngẫu
nhiên). Để giảm bớt phần nào khoảng cách đó, các nhà sản xuất phần cứng và phần mềm
đã tạo ra bộ đệm ổ cứng (disk cache). Bộ đệm của ổ cứng sử dụng một phần của RAM để
lưu trữ những thông tin thường xuyên được các ứng dụng truy nhập. Chính việc lưu trữ
những thông tin này trên RAM, bộ đệm đã giúp tốc độ truy xuất dữ liệu nhanh hơn và
giúp kéo dài tuổi thọ của ổ cứng. Nguyên tắc hoạt động của bộ đệm khá đơn giản: những
dữ liệu thường xuyên được truy nhập sẽ được lưu trữ trong RAM khi đó nếu có ứng dụng
yêu cầu truy cập những dữ liệu này thì những dữ liệu này sẽ được lấy ra trực tiếp từ RAM
chứ không cần ổ cứng phải làm những công vịêc như: quay đĩa, xác định vị trí đầu đọc,
tìm kiếm…

Có 4 kiểu bộ đệm ổ cứng chính:


-Bộ đệm “mềm” (Software disk caches): sử dụng một phần bộ nhớ chính của máy (PC
RAM – main memory) để truy xuất và lưu trữ tạm thời một phần dữ liệu của ổ cứng. Loại
bộ đệm này do một chương trình tao và quản lý cho nên không cần đế những phần cứng
hỗ trợ đặc biệt. VCACHE chính là một ví dụ thực tế về bộ đệm mềm.
-Bộ đệm “cứng” (on-board disk caches): sử dụng bộ nhớ và bộ điều khiển cache được
thiết kế ngay trên board mạch của ổ cứng. Mặc dù nó không hề sử dụng bất cứ một phần
RAM nào của bộ nhớ chính (computer RAM) để làm công việc lưu trữ tạm thời nhưng
chúng có dung lượng rất thấp (128KB->2MB cá biệt có thể lên đến 4MB) và cực kỳ đắt
tiền.
-Bộ đệm “riêng” (disk caching controllers): tương tự như bộ đệm cứng, bộ đệm riêng sử
dụng bộ nhớ riêng (có cấu trúc khác RAM) nhưng bộ nhớ và bộ điều khiển mà bộ đệm
này sử dụng là bộ nhớ và chíp điều khiển được gắn riêng rẽ trên một card điều khiển chứ
không phải là trên board mạch của ổ cứng và lẽ dĩ nhiên giá thành của chúng cực kì đắt.
Tuy nhiên, bộ đệm riêng lại hoạt động tốt và nhanh hơn rất nhiều so với bộ đệm cứng vì
nó vượt qua được một số giới hạn của những phần của ổ cứng mà bộ đệm cứng luôn bị
ảnh hưởng.
-Buffers : ở đây chúng tôi không dịch hẳn từ buffer mà để nguyên như thế vì giữa buffers
và cache có những điểm rất giống nhau. Có rất nhiều tài liệu biên dịch hoặc nguyên bản
hoàn toàn không phân biệt giữa 2 khái niệm “cache” và “buffers” mà lại để nguyên là “bộ
đệm” – như vậy là không chính xác! Vậy giữa cache và buffers có gì khác nhau và giống
nhau ? Có một điểm duy nhất giống nhau giữa cache và buffers chính là “chúng đều là bộ
nhớ đệm có tác dụng lưu trữ tạm thời một số dữ liệu trên ổ cứng nhằm tăng tốc tốc độ
truy xuất dữ liệu và tăng tuổi thọ cho ổ cứng” và điểm khác nhau giữa chúng là :
Cache có tốc độ cao hơn nhiều so với buffers.
Cache phải cần đến bộ điều khiển cache - nếu là “cứng” thì cần phài có chíp điều khiển,
còn “mềm” thì phải cần phần mềm điều khiển – trong khi đó buffers chỉ là một con chíp
nhớ đơn giản không cần bộ điều khiển riêng.
Buffers gặp rất nhiều giới hạn trong các quá trình giao tiếp và chuyển đổi dữ liệu bởi vì
khả năng quản lý dữ liệu của nó rất kém. Khi lưu trữ dữ liệu tạm thời, buffer lưu trữ một
lúc cả một track vì thế nếu muốn tìm một sector nào trên track này thì hệ điều hành lại
phải tiếp tục tìm kiếm trên track mà buffer cung cấp - chậm hơn hẳn so với cache.
Những điều cần chú ý đến Cache : có thể bạn sẽ rất ngạc nhiên nếu như chúng tôi nói là
“ổ cứng có cache lớn không có nghĩa là sẽ truy xuất dữ liệu nhanh hơn ổ cứng có cache
nhỏ (hai cái cùng loại có cùng tốc độ và dung lượng)”. Nói điều này thì cũngkhông có gì
là bất thường lắm, cache là bộ nhớ do đó tốc độ truy xuất của bộ nhớ làm cache càng
nhanh thì càng tốt, tuỳ thuộc vào mức độ thôn minh và khả năng quản lý của “chíp điều
khiển” (cache controllers chip) và cuối cùng là tổ chức của bộ nhớ làm cache (cho phép
đọc/ghi dữ liệu tuỳ ý hoặc chỉ có thể đọc hoặc ghi từ đầu đến cuối). Tuy nhiên tác dụng
của bộ cache sẽ mất hoặc giảm đi rất nhiều nếu như ổ cứng đã được defragment (phần
này chúng tôi sẽ nói kỹ hơn ở phần Cấu trúc File System)

Ở đây chúng tôi xin được nói thêm một chút về VCACHE : Windows có một driver ảo
gọi là VCACHE có nhiệm vụ quản trị bộ nhớ đệm cho ổ cứng. VCACHE chính là một sự
thay thế cho “bộ đệm mềm” của DOS và các version Windows trước đó (thường được gọi
là SmartDrive). VCACHE có khả năng thay đổi rất nhanh dung lượng bộ nhớ mà nó sử
dụng, điều mà các trình quản lý bộ đệm trong DOS không thể làm được. Khi đĩa cứng
hoạt động liên tục (chép file hoặc đọc file lớn) trong khi đó việc truy cập bộ nhớ lại thấp
thì nó sẽ tự động điều chỉnh kích thước bộ đệm (tăng lên) cho phù hợp để RAM có thể
chia sẻ bớt một phần công việc của đĩa cứng. Nguợc lại, khi ổ cứng ít hoạt động (ít truy
xuất dữ liệu) nhưng RAM lại liên tục có lệnh truy xuất (khi chạy các ứng dụng tính toán
cao cấp) thì nó sẽ tự động điều chỉnh kích thước bộ đệm ( giảm xuống) để có được dung
lượng RAM tối đa cho các ứng dụng tính toán. VCACHE hoàn toàn có khả năng tạo ra
những file cache (còn gọi là swap file) ngay trên ổ cứng mạng (98,Me). Nó sử dụng quá
trình “đọc trước – ghi từ cache xuống” (read-ahead and write-behind caching). VCACHE
là một ví dụ điển hình của “bộ đệm mềm” (software disk cache).

Đọc trước (read-ahead) : là một phương pháp xem xét thử phần dữ liệu nào sẽ được ứng
dụng yêu cầu truy xuất kế tiếp rồi đọc nó vào bộ nhớ, nó luôn luôn được kích hoạt khi
máy vi tính đang trong trạng thái nghỉ ngơi (Standby) hoặc ít hoạt động (Idle). Kết quả
của phương pháp này là giảm được nhiều chuyển động của đầu đọc và đĩa cứng hoạt
động êm hơn (không đọc nhiều nên không gây tiếng ồn).

Ghi từ cache xuống (write-behind caching): cũng cho kết quả tuơng tự nhưng nó còn bao
gồm luôn công việc giữ phần dữ liệu trong cache để chúng đuợc ghi xuống đĩa cứng hoàn
toàn cho đến khi máy vi tính nghỉ ngơi (shutdown). Một vấn đề với phương pháp này là
“nếu như máy tính mất điện đột ngột thì những phần dữ liệu chưa được ghi từ cache
xuống ổ cứng sẽ mất trắng không tìm lại được vì cache là một dạng bộ nhớ cần nguồn
nuôi”.

B.Tổ chức dữ liệu cơ bản của đĩa cứng:

Ở đây chúng tôi xin được khẳng định rõ quan điểm của mình là “tổ chức dữ liệu cơ bản
(hay còn được gọi là tổ chức dữ liệu cấp thấp)” của đĩa cứng để phân biệt rõ ràng với “tổ
chức dữ liệu cấp cao” của ổ cứng do những hệ thống file (file system) của những OS
được cài đặt trên ổ cứng tổ chức mà trong một số tài liệu đã nói chung chung là “tổ chức
dữ liệu ổ cứng”. Tổ chức dữ liệu cơ bản của đĩa cứng là cách sắp xếp những phần tử/đơn
vị lưu trữ dữ liệu ở mức thấp nhất mà nhà sản xuất đã quy định đồng thời các giá trị đo
lường của ổ cứng cũng được tuân thủ theo nguyên tắc riêng.

Các đơn vị đo lường của ổ cứng được tính theo nguyên tắc sau :
Bit là đơn vị lưu trữ dữ liệu nhỏ nhất và chỉ có thể lưu trữ một trong hai giá trị 1 hoặc 0.
1 byte = 8 bit;
1 Kbyte = 1024 byte;
1 Mbyte = 1.000.000 byte;
1 Gbyte = 1000 Mbyte = 1.000.000.000 byte;
1 Tbyte = 1000 Gbyte=1.000.000 Mbyte=1.000.000.000 byte;

Cách thức tổ chức dữ liệu cấp thấp của ổ cứng: như đã trình bày ở những phần trên 1 byte
thì gồm nhiều bit và một sector thì bao gồm nhiều byte, một track thì bao gồm nhiều
sector và một cylinder thì bao gồm nhiều track đồng trục và bằng nhau. Ngoài ra chúng
tôi cũng có nhắc đến vấn đề “tổ chức dữ liệu kiểu liên tục” ở phần trên, thật ra các đơn vị
lưu trữ dữ liệu trên ổ cứng (tính từ đơn vị lưu trữ dữ liệu nhỏ nhất) chính là một chuỗi dài
các đơn vị bit từ chỗ đầu đọc bắt đầu đọc và ghi cho đến điểm cuối cùng mà đầu đọc có
thể đọc/ghi được. Cả một chuỗi dữ liệu bao gồm các giá trị 1 và 0 (tính theo đơn vị lưu
trữ bit) này chính là cách tổ chức đơn giản nhất hay nói cho có tính khoa học là tổ chức
dữ liệu cấp thấp của ổ cứng.

Để vấn đề trở nên mạch lạc và dễ hiểu hơn chúng tôi xin được minh hoạ đĩa cứng với
“cái thước dây của thợ may”. Bây giờ bạn đã bắt đầu liên tưởng được rồi, thay vì trên
thước dây có đơn vị nhỏ nhất là 1mm thì bạn hãy cho nó là 1 bit. Bây giờ bạn hãy lấy một
khúc gỗ tròn để đại diện cho trục ổ cứng rồi từ từ quấn cái thước dây này quanh trục cho
đến khi hết. Lúc này bạn sẽ thấy một sợi dây dài đã quấn thành nhiều vòng quanh trục,
vòng tròn lớn nhất nằm ở ngoài cùng và nhỏ nhất là nằm ở trong cùng. Bạn sẽ gọi từng
vòng là track, gọi từng cung của những vòng này là sector và đếm số mm trên từng vòng
một bạn sẽ biết được vòng nào dài bao nhiêu mm từ đó biết được số bit trên mỗi vòng và
nhận ra là các vòng ở ngoài càng lớn thì độ dài (dung lượng) càng cao hơn các vòng ở
trong. Và như chúng tôi đã nói là bạn phải liên tưởng, qua ví dụ thực tế về cái thước dây
chắc bạn cũng hiểu được tỗ chức dữ liệu cấp thấp trên ổ cứng là như thế rồi !

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ư là ổ 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 là
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
nhận dữ liệu.

Sau đây là bảng thống kê tốc độ của một số công nghệ gần đây:
Tốc độ truyền tải lý thuyết của IDE bus (ATA)
DMA 0 16bit đơn (single word) 2.1 Mgbyte/s
PIO Mode 0 3.3 Mgbye/s
DMA 1 (SWord) – DMA 0 (MWord) 4.2 MgByte/s
PIO mode 1 5.2Mgbyte/s
PIO mode 2, Sword DMA 2 8.3 MgByte/s

Tốc độ truyền tải lý thuyết của EIDE bus (ATA 2)


PIO mode 3 11.1 Mgbyte/s
MWord DMA 1 13.3Mgbyte/s
PIO Mode 4, MWord DMA 2 16.6mgbyte/s

Tốc độ truyền tải lý thuyết của Ultra ATA (Ultra DMA)


MWord DMA 3/ Ultra ATA 33 33mgbyte/s
Ultra DMA 3 44Mbbyte/s
Ultra DMA 4 / Ultra ATA 66 66Mgbyte/s
Ultra DMA 5 / Ultra ATA 100 100Mgbyte/s

II. Giới thiệu về SATA (Serial ATA):

Serial ATA là một bước phát triển của giao diện lưu trữ vật lý song song ATA, thay thế
cáp chuẩn 40 sợi và đầu kết nối IDE thành cáp 7 sợi và đầu kết nối SATA. Công nghệ
ATA song song đã đến đỉnh điểm của nó, nếu tiếp tục phát triển tiếp công nghệ này thì số
tiền chi ra sẽ rất lớn trong khi đó hiệu quả lại không cao đồng thời gặp rất nhiều khó khăn
vì các giới hạn cơ bản từ thởu khai sinh của Parallel ATA. Điều này đã thúc đẩy những
nhà nghiên cứu tìm đến một giao diện mới hơn, cho hiệu quả tốt hơn và tin cậy hơn.
Serial ATA hứa hẹn khả năng mở rộng công nghệ nền tảng ATA tối thiểu cũng được 10
năm. Vậy thì đâu là lợi ích của Serial ATA ?

Tính tương thích phần mềm: đối với các phần mềm hệ thống, một thiết bị Serial ATA
chẳng khác chút gì sơ với các thiết bị xưa cũ UDMA/ATA. Với các phần mềm ngày nay,
không tương thích là mấy với các thiết bị cũ, Serial ATA hứa hẹn một sự chuyển đổi
không liền mạch và sự chấp thuận nhanh chóng.

Cáp serial: Các thiết bị Serial ATA kết nối đến hệ thống thông qua một sợi cáp không đắt
(khá rẻ) cung cấp một đầu nối nhỏ thích hợp cho môi trường tiết kiệm không gian tối đa
của server. Điều này cho phép Serial ATA giảm bớ số lượng tín hiệu từ 26 tín hiệu như
Parallel ATA thành 4 tín hiệu. Cáp Serial ATA còn có thể cung cấp điện năng cho thiết bị
(tuỳ chọn không phải là mặc định)

Duy nhất 1 thiết bị trên 1 cáp: Khác xa với Parallel ATA, Serial ATA bỏ hẳn việc phân
chia Master và Slave thay vào đó là chỉ duy nhất một thiết bị trên 1 cáp được hệ thống
công nhận là thiết bị Master ATA.

Công nghệ truyền chuỗi dữ liệu: Serial ATA sử dụng công nghệ truyền chuỗi 8B/10B để
truyền nhận dữ liệu thông qua serial cáp. Sơ đồ bảo toàn dữ liệu cao cấp này được nhanh
chóng chấp nhận trên diện rộng như là một sơ đồ truyền chuỗi thực tế và thường được
dùng trong nhiều công nghệ như GigabitEthernet và Fibre Channel. Đây thực sự là giai
đoạn chuyển tiếp Serial ATA thành một phần của việc phát triển iSCSI trong tương lai.

Điện thế thấp phân biệt tín hiệu: Serial ATA sử dụng điện thế thấp nhằm phân biệt tín
hiệu (LVD) bằng nguồn điện 250mV. Nó còn bao gồm cả một nguồn điện nuôi thấp và
cần bộ giải nhiệt.

Con đường phát triển còn dài (10 năm nữa): Serial ATA dự định sẽ đưa ra 3 thế hệ có khả
năng chuyển nhận dữ liệu lên đến 1.5Gbit/sec, 3.0Gbit/s, và 6.0Gbit/s tức là cho phép tốc
độ truyền cho từng thế hệ lên đến 150Mbyte/s,300 Mbyte/s và 600 Mbyte/s.

Những lợi thế của SerialATA:

Hiệu suất cao hôm nay và tương lai : ngay từ thế hệ đầu tiên SerialATA đã đạt đến tốc độ
150Mbyte/s so với tốc độ tối đa mà Parallel ATA (giao diện ATA song song) đạt được là
133Mbyte/s. SerialATA còn dự định sẽ tiếp tục cho ra đời 2 thế hệ tiếp theo với tốc độ
cực cao 300Mbyte/s và 600Mbyte/s cho cùng 1 loại cáp (loại 150Mbyte/s) và đầu nối.

Hiệu quả kinh tế cao: với người sử dụng máy vi tính tại gia (Desktop PC) vấn đề nâng
cấp phần cứng mới luôn là vấn đề lớn. Tuy nhiên các nhà sản xuất đã dự tính những ổ đĩa
SerialATA sẽ có giá thành tương đương với các ổ đĩa Parallel ATA hiện lại nhưng lại có
tốc độ cao và dung lượng cao hơn.

Tháo ráp “nóng” và hữu dụng: các thiết bị SerialATA sẽ có them chức năng tháo ráp nóng
(hot swapable), điều mà với các ổ cứng Parallel ATA ta không bao giờ làm được. Điểm
mạnh này sẽ làm cho SerialATA trở thành một giải pháp có thể tồn tại được và trong
tương lai sẽ thay thế cho giải pháp RAID vốn rất rườm rà.

Cáp kết nối trực tiếp (Point-to-point cabling): SerialATA chỉ cho phép kết nối 1 port cho
1 ổ cứng duy nhất và cũng chính vì thế đã nâng cao khả năng cô lập lỗi đồng thời tăng
hiệu năng cho thiết bị. Không những thế, vì SerialATA không phải chia sẽ bus nên mỗi ỗ
đĩa có thể hoàn toàn đạt đến tốc độc 150Mbyte/s.

Dễ lắp đặt (cáp) và có lợi cho việc lưu chuyển không khí: SerialATA sử dụng cáp dài,
mỏng, mềm dẽo dễ uốn (không cứng và dễ nát như Parallel ATA) đồng thời truyền dẫn và
lắp đặt đơn giản, những tính năng trên sẽ giúp tăng cường việc lưu chuyển không khí cho
hệ thống và tăng hiệu năng giải nhiệt cho quạt.

Điểm đặc trưng và ích lợi của SerialATA

Đặc trưng:

- Được thiết kế có tốc độ cao cho tương lai.


- Giao diện tốc độ truyền tải dữ liệu lên đến 150Mbyte/s (và sẽ còn cao hơn).
- Chi phí thấp.
- Chuyển từ việc thiêt bị lưu trữ trong thànhthiết bị lưu trữ ngoài trong tương lai.
- Kết nối trực tiếp từ máy đến một thiết bị duy nhất.
- Điện thế thấp.
- Sử dụng ít pin ASIC hơn.
- Giao tiếp điều khiển điên năng mới.
- Driver và phần mềm khác biệt hoàn toàn so với Parallel ATA.
- Lệnh điều chỉnh.
- DMA nhóm đầu tiên.
- Cáp và đầu kết nối khác hẳn so với Parallel.

Ích lợi:

- Con đường phát triển còn dài (10năm nữa) sẽ làm giảm thiểu lại vấn đế “đa chuẩn giao
tiếp thiết bị” trong ngành công nghiệp máy tính hiện nay.
- Được giới thiệu lần đầu với tốc độ 150Mbyte/s dẫn đầu về tốc độ truyền tải dữ liệu trên
ổ cứng và đã tránh được lỗi “thắt cổ chai” có thể xảy ra với ổ đĩa 133Mbyte/s Parallel
ATA.
- Chi phí thấp tương đương với Parallel ATA
- Được thiết kế cho việc lưu trữ bên trong. Dự định SerialATA sẽ được phát triển có thêm
tính năng đặc biệt là “lưu trữ bên ngoài” (external storage).
- Lắp đặt và cấu hình dễ dàng. Không cần phải chỉnh jumper hoặc termination bên ngoài,
giảm thời gian tích hợp và thoả mãn yêu cầu dịch vụ của ngừoi dung cuối (end-user).
SerialATA đã đặt dấu chấm hết cho vấn đề kiểm tra Master/slave bị lỗi và tăng cường cô
lập vùng lỗi. Cả 2 thiết bị đều có thể truyền tải dữ liệu song song.
- Kết thúc việc sử dụng nguồn 5V cho tín hiệu I/O nhằm đơn giản thiết kế phần cứng,
giàm giá và ít tốn điện năng.
- Cho phép ASIC pin thành dạng “pin co chết” (die-shrink, rất dễ cắm và không bị cong
quẹo như pin thông thường) nhằm nâng cao hiệu quả chi phí cho cả thiết bị lẫn máy.
- Sử dụng lại driver của Parallel ATA làm đơn giản quá trình chuyển đổi.
- Giảm tổng chi phí, tăng hiệu năng. Cho phép mơ rộng thị trường tới các server tiếp
nhận (entry-level) và các hệ thống RAID.
- Quản lý điện năng và tiêu thụ điện năng thích hợp cho thiết bị di động.
- Cho phép thiết bị truy cập trực tiếp đến bộ nhớ của máy, giảm thiểu tổng lệnh và tình
trang cần xử lý cho bộ vi xử lý.
- SerialATA sử dụng lại cáp mới, dài, mỏng cùng loại đầu nối mới.

Với những ích lợi mà SerialATA mang lại, người ta không thể không đặt ra vấn đề “liệu
SerialATA có đẩy Parallel ATA đến chỗ không còn xuất hiện trên thị trường trong vòng 1
hoặc 2 năm tới không?” Câu trả lời lúc này là “chưa xác định được” ! Tuy nhiên một điều
rõ ràng mà ta có thể nhận thấy là người sử dụng đang dần dần chuyển sang SerialATA,
một sự lựa chọn thị trường tương tự như quá trình chuyển tiếp từ Parallel ATA sang
SerialATA. Chính vì lẽ đó Serial ATA và Parallel ATA sẽ còn chung sống với nhau nhiều
năm nữa nhưng Parallel ATA “chỉ hỗ trợ và lót đường cho sự phát triển của SerialATA”.
Cũng như những công nghệ sáng tạo khác, sự lựa chọn luôn kèm theo vấn đề giá cả và
chất lượng.
Hiện nay các thiết bị SerialATA đã xuất hiện nhiều trên thị trường và càng ngày càng có
nhiều dấu hiện cho thấy thị trường tiềm năng mà SerialATA mang lại. SerialATA sẽ còn
tiếp tục giảm giá - đòn ăn mòn thị trường Parallel ATA một cách từ tốn ! SerialATA, như
đã bàn đến về mặt thiết kế ở trên, chỉ có thể là một giải pháp dành cho các thiết bị lắp
trong (inside-a-box solution) cho nên SerialATA không thể kết nối với các thiết bị ngoài.
USB vẫn là cách tối ưu để kết nối những thiết bị ngoài. Những thiết bị được SerialATA
hỗ trợ: chuẩn giao tiếp ATA, ATAPI như CDs, DVDs, băng từ, các loại đĩa dung lượng
lớn tháo lắp được, ZIP, CDRW’s.

(Các thông số kỹ thuật tham khảo từ 3ware)

You might also like