Đĩa từ là một loại thiết bị lưu trữ lâu dài, thường được sử dụng trong đĩa mềm (floppy disk) hoặc đĩa cứng (hard disk).

Ổ đĩa từ (magnetic disk drive) là một tập hợp gồm nhiều đĩa từ xếp chồng lên nhau và nhiều đầu đọc ghi tương ứng với mỗi mặt của đĩa từ.

  • Mỗi đĩa từ có hai mặt (head).
  • Mỗi mặt đĩa có nhiều vòng tròn đồng tâm (track).
  • Mỗi cung tròn trên đĩa có kích thước 4096 bit (512 byte) thì sẽ tương đương với một sector (hay block).

  • Tập hợp các track đồng tâm thì được gọi là cylinder.
  • Mỗi mặt đĩa đều có một đầu đọc - ghi (read - write head) để đọc và ghi dữ liệu.
  • Mỗi lần đọc hay ghi thì sẽ thao tác với ít nhất một cung tròn, tương ứng với 512 bytes - 1 sector - 1 block. Nói cách khác, đơn vị cơ bản của đĩa từ là sector.

Disk drive structure

Capacity

Dung lượng của một ổ đĩa từ phụ thuộc vào các yếu tố sau:

  • Số mặt.
  • Số track trên mỗi mặt.
  • Số sector trên mỗi track.
  • Kích thước (byte) trên mỗi track.

Để tính tổng số sector, ta có công thức sau:

Công thức tính tổng số sector

Tổng sector = tổng số mặt tổng số track mỗi mặt tổng số sector mỗi track.

Có được tổng số sector thì ta có thể suy ra được dung lượng của ổ đĩa bằng công thức sau:

Tính dung lượng dựa trên tổng số sector

Dung lượng = tổng sector 0.5 (KB)

Physical and Logical Address

Vị trí của mỗi sector trong ổ đĩa từ được thể hiện bằng ba thông số là track (cylinder), head và sector. Ba thông số này tạo thành địa chỉ CHR (Cylinder-head-sector address).

Tuy nhiên, ở đây ta dùng thứ tự của các thông số là (sector, track, head).

  • Head được đánh số từ đĩa đầu tiên đến đĩa cuối cùng của ổ đĩa, có giá trị bắt đầu là 0.
  • Track được đánh số từ ngoài vào trong tâm đĩa, có giá trị bắt đầu từ 0.
  • Sector vật lý được đánh số bắt đầu từ 1 theo chiều ngược với chiều quay của đĩa (để giá trị đọc được có thứ tự tăng dần).

Có thể đánh chỉ số cho các sector dựa trên ba thông số của sector vật lý ở trên, ta gọi chỉ số này là chỉ số sector logic, hay còn gọi là LBA (Logical Block Address). Các chỉ số sector logic có giá trị nằm trong khoảng . Với là tổng sector của ổ đĩa.

![[Physical sector to logical sector.webp| x-small]]

Khi sử dụng hết một track, dữ liệu sẽ được lưu ở mặt còn lại của đĩa với cùng chỉ số track. Điều này giúp cho đầu đọc - ghi hạn chế việc điều chỉnh vị trí (sử dụng cơ học). Khi đổi mặt thì chỉ cần đổi sang đầu đọc - ghi ở mặt còn lại (sử dụng tín hiệu điện tử).

Ta có hai công thức chuyển đổi như sau:

Chuyển chỉ số sector vật lý sang chỉ số sector logic

l = (t sides st) + (h st) + s - 1

Chuyển chỉ số sector logic sang chỉ số sector vật lý

Các chỉ số của sector vật lý được tính như sau (div là phép chia lấy phần nguyên, mod là phép chia lấy phần dư):

  • s = (l mod st) + 1
  • t = l div (st sides)
  • h = (l div st) mod sides

Với:

  • st là số sector/track
  • th là số track/head
  • sides là số lượng mặt
  • h là giá trị head
  • t là giá trị track
  • s là giá trị sector
  • l là chỉ số sector logic

Floppy Disk

Từ đây về sau, nếu không nói kích thước cụ thể, ta mặc định đĩa mềm có kích thước 1.4 MB (mặc dù không chính xác là 1.4 MB).

Các thông số trên đĩa mềm: có 2 head, mỗi head 80 track, mỗi track 18 sectors.

Có thể suy ra:

  • Tổng số sector là 2 80 18 = 2880 sectors.
  • Mỗi sector tương đương với 512 bytes = 0.5 Kilobyte. Suy ra có 2880 0.5 = 1440 KB.
  • Mà 1024 KB = 1 MB. Suy ra 1440 KB = 1440 / 1024 ~ 1.4 MB.
  • Như vậy, đĩa mềm có dung lượng khoảng 1.4 MB.

Chuyển đổi giữa sector logic và sector vật lý:

  • Sector 0…17 tương ứng với sector vật lý (1,0,0)…(18,0,0)
  • Sector 18…35 tương ứng với sector vật lý (1,0,1)…(18,0,1)
  • Sector 2879 tương ứng với sector vật lý (18,79,1).