Category Archives: Hệ Điều Hành

Đồng Bộ Hóa Tiến Trình – Ôn Tập 3

I. Giải Pháp Chờ Đợi Bận

Giải pháp này chỉ áp dụng khi có 2 tiến trình cùng thực thi 1 lúc, P0 và P1. quy uớc 1 tiến trình là Pi, và Pj là tiến trình còn lại, khi đó j = 1 – i.

  • Giải thuật 1:

cho 2 tiến trình sử dụng 1 biến dùng chung turn = 0 hoặc 1; nếu turn ==0 thì Pi được thực thi trong vùng tranh chấp của nó.

Trong đó

critical section: vùng tranh chấp chứa mã thực thi của tiến trình.

remainder section: phần còn lại thực hiện một số thao tác phụ.


//Tiến trình Pi
do{
while (turn != i);
//critical section
turn = j;
//remainder section
}while(1);
//Tiến trình Pj
do{
while (turn != j);
//critical section
turn = i;
//remainder section
}while(1);

Hạn chế:

Giải thuật không giữ được thông tin trạng thái của mỗi tiến trình.

  • Giải thuật 2:

Thay thế turn bằng boolean flag[2], gán các phần tử trong flag giá trị là false, nếu flag[i] == true → Pi sẵn sàng đi vào vùng tranh chấp.

 
//Tiến trình Pi 
do{ 
flag[i] = true;
while (flag[j]); 
//critical section
 flag[i] = false; 
//remainder section 
}while(1); 
//Tiến trình Pj 
do{ 
flag[j] = true;
while (flag[i]);
//critical section 
flag[j] = false;
//remainder section 
}while(1); 

Hạn chế:

  • P0 flag[0]=true;
  • P1 flag[1]=true;

Tiến trình P0, P1 sẽ đợi chờ mãi.

  • P0 flag[0]=false;
  • P1 flag[1]=true;

Tiến trình P1 được vào vùng tranh chấp.

  • P0 flag[0]=true;
  • P1 flag[1]=false;

Tiến trình P0 được vào vùng tranh chấp.

  • P0 flag[0]=false;
  • P1 flag[1]=false;

Nếu tiến 1 trong 2 tiến trình P0 hoặc P1 vào vùng sẵn sàng chạy trước thì sẽ được chạy trước, vì sẽ có flag[0] hoặc flag[1] sẽ bằng false.

Nếu cả 2 tiến trinhg P0 và P1 vào vùng sẵn sàng và bật flag[i]=true và flag[j]=true cùng lúc thì P0 và P1 sẽ chờ đợi mãi.

II. Giải Thuật Peterson

Giải thuật Peterson là sự kết hợp từ 2 giải thuật 1 và 2 ở trên.

 
//Tiến trình Pi 
do{ 
flag[i] = true;
turn=j;
while (flag[j] && turn==j); 
//critical section
 flag[i] = false; 
//remainder section 
}while(1); 
//Tiến trình Pj 
do{ 
flag[j] = true;
turn=i;
while (flag[i] && turn=i);
//critical section 
flag[j] = false;
//remainder section 
}while(1); 

Pi đi vào vùng tranh chấp nếu và chỉ nếu flag[j] = false hoặc turn = 0.

Không thể có trường hợp 2 tiến trình cùng thực thi 1 lúc, vì giả sử điều này xảy ra, ta có flag[i]==flag[j] == true, nhưng turn sẽ là 1 hoặc 0.

Giả sử turn = i, và turn = j được thực hiện đồng thời, khi đó sẽ chỉ có 1 kết quả cuối cùng, và vì vậy, turn == 0, hoặc turn == 1.

II. Giải Thuật Bakery

Loading…

 

Advertisements

Giải Thích Một Số Hình Vẽ Trong Sách William Stallings, “Operating Systems”, 7th edition, 2012 – Ôn Tập 2

1. Giải thích quá trình thực thi chương trình của CPU theo Figure 1.4, trang 13, William Stallings, “Operating Systems”, 7th edition, 2012.

  • Giới thiệu sơ qua:

– PC viết tắt của Program counter (Bộ đếm chương trình):  chứa địa chỉ của dòng lệnh tiếp theo

– IR viết tắt của  Instruction register (Thanh ghi lệnh) : chứa  lệnh đang được thực thi

– AC viết tắt của  Accumulator : là bộ nhớ tạm thời

– 1=0001 là lấy dữ liệu từ bộ nhớ

– 2=0010 lưu thanh ghi AC vào bộ nhớ

– 5=0101 cộng vào thanh ghi AC từ bộ nhớ

  • Giải thích:

Lưu ý giá trị đầu tiên từ bên trái qua là cách thức thực thi ở đây là 1, phần phía sau là địa chỉ mà lệnh đó thực thi.

Bước 1:

Đọc từ thanh ghi PC địa chỉ của lệnh cần lấy hình trên địa chỉ là 300 sau đó đưa dòng lệnh tại địa chỉ 300 là 1940 vào thanh ghi IR

Bước 2:

Đưa địa chỉ lệnh tiếp theo cần thực thi vào thanh ghi PC, thanh ghi PC lúc này chứa địa chỉ 301.

Thực thi lệnh  1940 ở thanh ghi IR

Như ghi chú bên trên 1 là nó thực  hiện việc lấy dữ liệu từ bộ nhớ ở địa chỉ 940 đưa vào bộ nhớ tạm thời ở thanh ghi AC.

Bước 3:

Đọc từ thanh ghi PC lấy lệnh tiếp theo để thực thi ở đây nó lấy lệnh ở địa chỉ 301 đưa vào thanh ghi IR

Ở đây lệnh có giá trị là 5941 cũng như  giải thích bên trên lệnh này có ý nghĩa là cộng vào thanh ghi AC với giá trị lấy từ địa chỉ 941 ,giá trị đó ở đây là 2.

Bước 4:

Đưa địa chỉ lệnh tiếp theo cần thực thi vào thanh ghi PC.

Thực hiện phép cộng 3+2=5 tại thanh ghi AC như hình ta được giá trị 5.

Bước 5:

Đọc từ thanh ghi PC lấy lệnh tiếp theo để thực thi ở đây nó lấy lệnh ở địa chỉ 302 đưa vào thanh ghi IR

ở đây lệnh có giá trị là 2941 cũng như  giải thích trên lệnh này có ý nghĩa là lưu thanh ghi AC vào bộ nhớ ở địa chỉ 941

Bước 6:

Thực thi lệnh lưu  0005 vào bộ nhớ 941.

Đó là quá trình thực thi chương trình của bộ nhớ và các thanh ghi hệ Hexa

2. Giải thích quá trình thực thi lệnh của hệ thống khi có ngắt, Figure 1.7, trang 16, William Stallings, “Operating Systems”, 7th edition, 2012.

Ngắt là các lệnh cần thực thi mà không phải báo trước.

Bước 1: Lấy lệnh để thực thi.

Bước 2: Thực thi lệnh có  3 trường hợp

– Trường hợp 1 : Nếu không có ngắt xảy ra thì lệnh sẽ được đưa về hàng đợi chờ thực thi tiếp

– Trường hớp 2 : Nếu ngắt xảy ra thì lệnh sẽ được đưa vào trạng thái ngắt (trạng thái chờ ) và thực thi trạng thái chờ đó ,cho đến khi trạng thái chờ được gọi đến đưa vào hàng đợi để chờ cho đến khi nó được gọi  để thực thi.

– Trường hợp 3 : Nếu lệnh đó đã hoàn thành thì dẫn đến kết thúc việc thực thi đoạn lệnh đó.

3. Giải thích về các loại bộ nhớ, Figure 1.14, trang 25, William Stallings, “Operating Systems”, 7th edition, 2012.

Càng tiến dần lên đỉnh tháp thì vùng nhớ càng nhỏ nhưng tốc độ lại càng nhanh và giá cả mắc hơn, tần suất truy cập với vi xử lý nhiều hơn.

Càng tiền dần về chân tháp thì vùng nhớ càng lớn nhưng tốc độ càng chậm và giá cả rẻ hơn, tần suất truy cập với vi xử lý it hơn.

Inboard memory là các bộ nhớ được gắn trực tiếp trên bo mạch chủ gồm có Registers (các thanh ghi), Cache (Bộ nhớ đệm Cache), Main memory bộ nhớ chính (RAM)

Outboard storage là các bộ nhớ lưu trữ nắm ngoài bo mạch chủ (local secondary storage) như đĩa cứng, đĩa mềm,và các loại đĩa quang CD-ROM..v..v

Off-line storage là các bộ lưu trữ nằm ngoài.

4. Hiểu về kiến trúc hệ thống Corei7 của Intel, Figure 1.20, trang 36, William Stallings, “Operating Systems”, 7th edition, 2012.

Một ví dụ của hệ thống đa lõi là Intel Core i7, bao gồm 4 vi xử lý x86, mỗi vi xử lý có 1 L2 cache dành riêng, và một L3 cache dùng chung. Một cơ chế mà Intel sử dụng để tạo ra các bộ nhớ đệm hiệu quả là việc lấy lại dữ liệu từ bộ nhớ đệm, trong mỗi lần duyệt phần cứng  để tìm dữ liệu các dữ liệu này sẽ được cho vào các bộ nhớ đệm khi có yêu cầu tìm dữ liệu mà đã được yêu cầu trước đó thì chỉ tìm lại trong bộ nhớ đệm.

Chip Core i7 hỗ trợ  2 hình thức giao tiếp bên ngoài với những chip khác.

DDR3 memory controller: điều khiển lưu lượng dữ liệu từ bộ nhớ chính vào chip, nó hỗ trợ 3 kênh giao tiếp với mỗi kênh có độ rộng 8 bytes và tổng độ rộng bus là 192 bits, tổng lưu lượng dữ liệu lên đến 32 GB/s.

QuickPath Interconnect (QPI): là một liên kết điểm tới điểm với nhiều kết nối điện đặc biệt. Nó cho phép giao tiếp với tốc độ cao giữa kết nối với các chip vi xử lý. Liên kết QPI vận hành với tốc độ 6.4 GT/s (stransfers per second).

5. Mô tả “Mô hình tiến trình năm trạng thái”.

  • Running: Tiến trình đang được thực thi.
  • Ready: Một tiến trình ở trạng thái sẵn sàng để được thực thi khi có cơ hội.
  • Blocked/Waiting: Một tiến trình mà nó không thể thực thi cho đến khi các tác vụ con được hoàn tất ví dụ như các thiết bị nhập xuất chuột bàn phím v.v.
  • New: Một tiến trình vừa mới được sinh ra nhưng chưa được đưa vào hàng đợi để thực thi và xử lý bởi hệ điều hành. Thông thường thì, một tiến trình mới không được tải vào RAM.
  • Exit: Một tiến trình đã được giải phóng bởi hệ điều hành. Hoặc là nó dừng bởi các tiến trình liên quan tới nó hoặc vì lý do nào khác nó bị hủy bỏ.

Null → New: Một tiến trình mới được sinh ra để thực thi một chương trình.

Ví du:

-Một dãy công việc mới yêu cầu thực hiện.

-Người dùng đăng nhập vào hệ thống.

New → Ready: Hệ điều hành sẽ chuyển đổi tiến trình từ trạng thái New sang trạng thái Ready khi nó được chuẩn bị được thêm vào hàng đợi.

Ready→ Running: Khi tiến trình được chọn để chạy, Hệ điều hành sẽ chọn một trong các tiến trình ở trạng thái Ready. Đó là công việc của bộ phận lập lịch và điều phối.

Running→ Exit: Tiến trình hiện tại đang thực thi được chấm dứt bởi hệ điều hành nếu tiến trình đó đã hoàn tất, hoặc là nó bị hủy vì lý do.

Ví dụ:

-Tiến trình hoàn tất.

-Vượt quá giời hạn thời gian.

-Tràn bộ nhớ.

-Truy cập trái phép đến vùng nhớ không được cho phép truy cập.

-Sử dụng tài nguyên trái phép.

-Chia với số 0.

-Đợi chờ vô hạn định.

-Lỗi nhập xuất.

-Thực thi lệnh không tồn tại.

-Tiến trình cha chấm dứt.

-Tiến trình cha yêu cầu chấm dứt.

Running → Ready: Đây là lý do chung cho những tiến trình đang chạy nhưng đã hết thời hạn cho phép.

Running → Blocked: Một tiến trình được đưa vào trạng thái Blocked nếu như gặp một tác vụ con xuất hiện thì tiến trình phải chờ để hoàn thành tác vụ con.

Blocked→ Ready: Một tiến trình ở trạng thái Blocked được chuyển sang trạng thái Ready khi tác vụ con đã hoàn tất.

Ready→Exit: Nếu tiến trình cha chấm dứt, tất cả tiến trình con liên quan với tiến trình cha đó cũng chấm dứt theo.

Blocked→Exit: Cũng tương tự trạng thái từ Ready→Exit.

Tính Toán Thời Gian Chờ Của Các Giải Thuật Lập Lịch CPU – Ôn Tập 1

I. Giải Thuật First Come First Serve (FCFS)

Ví dụ: Xét 4 tiến trình P1, P2, P3,P4 đến tại thời điểm 0, với thời gian xử lý được tính bằng mili giây.

P4→P3→P2→P1→CPU.

Bảng thời gian xử lý:

Quá trình

Thời gian xử lý

P1

24

P2

4

P3

4

P4

5

Bảng thời gian chờ:

Vì các tiến trình đến cùng thời điểm tại t0=0 nên

P1

P2 P3

P4

P1

24 24

24

P2

4

4

P3

4

P4

Thời gian chờ TB: (0 + 24 +28 +32 ) / 4 = 21 (ms).

Lược đồ Gantt :

P1

P2 P3

P4

0                                                 24                             28                      32                                 37

II. Giải Thuật Shortest Job First (SJF)

Ví dụ 1: Xét 4 tiến trình P1, P2, P3,P4 đến tại thời điểm 0, với thời gian xử lý được tính bằng mili giây.

P4→P3→P2→P1→CPU.

Bảng thời gian xử lý:

Quá trình

Thời gian xử lý

P1

24

P2

4

P3

4

P4

5

Do đây là giải thuật SJF nên ta sắp xếp lại thứ tự đến CPU dựa vào thời gian xử lý, thời gian xử lý ngắn nhất thì được thực hiện trước tiên.

P1→P4→P3→P2→CPU.

P2 P3 P4

P1

P2

4 4 4

P3

4

4

P4

5

P1

Thời gian chờ TB: (4 + 8 + 13) / 4 = 6 (ms).

Lược đồ Gantt :

P2 P3 P4

P1

0           4               8                       13

Ví dụ 2:

Tiến Trình

Thời Gian Đến

Thời Gian Xử Lý

P1

0

12

P2

1

5

P3

2

7

P4

3

3

Bảng thời gian chờ:

P1

P2 P3

P4

T0

(-11)

T1

1 (-4)

T2 1 (-3) 1

T3

1 (-2) 1 1

T5

2 (-0) 2 2
T6 1 1

(-2)

T8 2 2

(-0)

T9

1 (-6)

T15

6 (-0)
T16 (-10)

T26 (-0)

Thời gian chờ TB: (15 + 0+ 7 + 3) / 4 = 6.25 (ms)

Lược đồ Gantt:

P1 P2 P4 P3

P1

0                       1                             6                             9                                 16                       27

Ví dụ 3:

Tiến Trình

Thời Gian Đến

Thời Gian Xử Lý

P1

0 6

P2

1

3

P3 2

4

P4 2

2

Bảng thời gian chờ:

P1 P2 P3 P4

T0

(-5)

T1 1 (-2)

T2

1 (-1) 1 1

T3

1 (-0) 1

1

T4 1 1

(-1)

T5

1 1 (-0)
T6 1 (-3)

T9

3 (-0)
T10 (-4)

T14

(-0)

Thời gian chờ TB: (9 + 0+ 4 + 2) / 4 = 3.75 (ms).

P1

P2 P4 P3

P1

0                                1                     4                        6                              10                           15

III. Giải Thuật Priority (P)

Ví dụ: Xét 6 tiến trình P1, P2, P3,P4,P5,P6 mỗi tiến trình có mỗi độ ưu tiên khác nhau đến cùng tại thời điểm t0=0 với thời gian xử lý được tính bằng mili giây.

Quá Trình

Thời gian xử lý

Độ ưu tiên

P1

5 6

P2

10 1

P3

15 5
P4 6

4

P5 2

2

P6 4

3

Do đây là giải thuật P nên ta sắp xếp lại thứ tự đến CPU dựa vào độ ưu tiên, độ ưu tiên nhỏ thì được thực hiện trước tiên.

P1→P3→P4→P6→P5→P2→CPU

P2 P5 P6 P4 P3 P1

P2

10 10 10 10 10
P5 2 2 2

2

P6

4 4

4

P4 6

6

P3

15

P1

Thời gian chờ TB: (0 + 10 + 12 + 16 + 22 + 37)/6=16.16 (ms).

Lược đồ Gantt :

P2 P5 P6 P4 P3

P1

0                  10                      12                          16                   22                     37                   42

IV. Giải Thuật Round Robin (RR)

Ví dụ 1: Xét 4 tiến trình P1, P2, P3,P4 đến tại thời điểm 0, với thời gian xử lý được tính bằng mili giây sử dụng thuật toán Round Robin (xoay vòng) để tính thời gian chờ trung bình.

Quá Trình

Thời Gian Xử Lý

P1

5

P2

20

P3

11

P4

8

Giả sử định mức thời gian là 10 mili giây.

Bảng thời gian chờ :

Thời Gian

P1 P2 P3 P4

T0

(-4) 1 1

1

T4 (-0) 4 4

4

T5

(-19) 1 1

T15

(-10) 9 9
T16 1 (-10)

1

T25 9 (-1)

9

T26

1 1 (-7)

T32

7 7 (-0)
T33 (-9) 1

T42 (-0) 9

T43 (-0)

Lược đồ Gantt:Thời gian chờ TB: (0+23+33+25)/4=20.25 (ms).

P1 P2 P3 P4 P1

P3

0              5                         16                              26                           33                        43

Ví dụ 2:

Quá Trình

Thời Gian Đến Thời Gian Xử Lý

P1

0

24

P2 1

3

P3

2

3

Giả sử định mức thời gian là 4 mili giây.

P1

P2

P3

T0

(-23)

T1

(-22) 1
T2 (-21) 1

1

T3 (-20) 1

1

T4

1 (-2) 1

T6

2 (-0)

2

T7 1

(-2)

T9

2 (-0)

T10

(-19)

T29 (-0)

Thời gian chờ TB:  (6 + 3 + 5) / 3 = 4.66 (ms).

P1

P2 P3

P1

0                                  4                                           7                                 10                           30

Đọc Tập Tin Bằng Phần Mềm Đọc Đĩa Thô Norton Disk Editor 2002

Ở đây chúng ta sẽ sử dụng Hiren’sBootCD 9.9  và máy ảo Virtual Box.

I.Phân vùng đĩa 

Đầu tiên chúng ta vào Hiren’s BootCD 9.9 và chọn Start BootCD

Sau đó chúng ta sẽ chọn Partition Tools

Tiếp theo chọn Partition Magic Pro 8.05 để thực hiện việc phân vùng đĩa cứng

Thực hiện việc phân vùng  ở đây chúng ta sẽ phân vùng đĩa cứng thành : 1 Primary FAT32,

1 Extended ,trong Extend sẽ có 3 ổ đĩa Logical định dạng theo FAT32

Sau khi hoàn thành việc phân vùng cho ổ đĩa ta tiến hành cài Win vào ổ C hoặc sử dụng Mini Windows XP ở Hiren’s Boot có sẵn .Thực hiện việc tạo 1 Folder có tên MyFolder  ở ổ đĩa D hoăc ổ đĩa nào bất kỳ

trong MyFolder tạo ra tập tin MyText.txt với nội dung : Hello World ,Nào chúng ta sẽ cùng nhau bắt đầu đọc tập tin bằng phần mềm Norton Disk Editor 2002 trong Hiren’s Boot 9.9 .

II.Đọc Folder 

Vào lại Hiren’s Boot 9.9 của chúng ta,chúng ta sẽ chọn Hard Disk Tools 

Sau đó chọn More 2 lần  :

Tiếp theo ta sẽ chọn Norton Disk Editor 2002 

Sau đó màn hình như bên dưới sẽ hiện ra ta tiến hành chọn vào Object -> Drive

Chọn vào Physical disks để đọc đĩa cứng vật lý .

Ok sau khi chọn xong thì chúng ta đang ở Sector 0 là Sector đầu tiên của Ổ đĩa trong đó có chứa MBR (Master Boot Record) .Master Boot Record dùng để mô tả thông tin của các phân vùng trên ổ đĩa .

MBR sẽ được biểu diễn bằng 64 byte chạy từ 01BE -> 01FD

Trong 64 byte đó thì được chia nhỏ thành 4 entry mỗi entry có độ dài 16 byte

Nhìn vào MBR bên dưới ta nhận ra ổ đĩa này được chia làm 2 phân vùng .

Phân vùng 1 Primary từ 01BE -> 01CD

Phân vùng 2 Extended  từ 01CE->01DD

Ở đây chúng ta chỉ nói đến vấn đề đọc File còn những chi tiết khác về thông tin ổ đĩa cách đọc các thông tin đó như thế nào thì các bạn có thể tham khảo thêm ở giáo trình FAT32

Lúc nảy chúng ra có lưu 1 Folder tên là MyFolder ở trong ổ đĩa D vậy giờ chúng ta sẽ phải đi vào vùng Extended để đọc thông tin của ổ đĩa D.

Ở đây tại 01D6->01D9  có giá trị 7A 00 77 01 đảo ngược giá trị này lại 01 77 00 7A =24579450 là Sector bắt đầu của vùng EBR(Extend Boot Record) ,Vùng này mô tả các thông tin của các ổ đĩa Logical

Chúng ta sẽ đi tới Sector 24579450 bằng cách chọn menu Object -> Physical Sector

Đã đến được EBR rồi ở đây Entry đầu tiên mô tả thông tin ổ đĩa D ở 01C6->01C9 có giá trị 3F 00 00 00 đảo ngược lại là 00 00 00 3F = 63 là địa chỉ logic của ổ đĩa D .muốn biết địa chỉ vật lý chúng ta lấy  Địa chỉ bắt đầu vùng Extended + địa chỉ logic của ổ đĩa D = 24579450 + 63 = 24579513

Đi đến Sector 24579513 đi đến được đầu của ổ đĩa D đây là vùng Reserved của ổ đĩa D ở đây ta sẽ đọc được những thông tin quan trọng .

 Ở 000D có giá trị 04  => 4 là số sector/cluster

000E->000F có giá trị 26 00 đảo ngược lại 00 26 => 38 là số sector của vùng Reserved 

0010 có giá trị 02 => có 2 FAT Structure

Ở vị trí 0024->0027 có giá trị 45 3E 00 00 đảo ngược lại là 00 00 3E 45 => 15941 là số sector của 1 FAT Structure vậy 2 FAT Structure sẽ có giá trị là (15941 *2 ) =31882

Để đọc được Folder hoặc File ta sẽ phải tới được vùng Root Directory nơi này là nơi mô tả thông tin các Folder hay tập tin có trên phân vùng ổ đĩa đó .

Sector Begin Root Directory = (Sector Bắt Đầu Vùng Reserved + Số Sector Vùng Reserved + Số Sector của Vùng FAT )

Sector Begin Root Directory=  24579513 + 38 +  31882 = 24611433

Nào cùng đi tới vùng Root Directory của ổ đĩa D ở Sector 24611433 

Ở đây ta sẽ tìm thấy các Folder hoặc tập tin Ở trên ta đã nhìn thấy thông tin mô tả Folder MyFolder rồi giờ ta thực hiện việc đọc nó thôi

Ở 0154 -> 0155 có giá trị 00 00 đảo ngược lại 00 00 là giá trị byte cao của cluster bắt đầu

Ở 015A->015B có giá trị 03 00 đảo ngược lại 00 03 là giá trị của byte thấp của cluster bắt đầu

Ghép giá trị byte cao và byte thấp sau khi đảo ngược lại thành 00 00 00 03 => N=3

Áp dụng vào công thức

Sector đầu tiên của cluster = (N-2) * Số Sector /Cluster  + Địa chỉ bắt đầu vùng Root Directory

Sector vật lý đầu tiên của vùng dữ liệu=(3-2) * 4 +  24611433 =  24611437

Chúng ta đi đến Sector 24611437

Lúc này đã đọc được Folder giờ ta chon vào View -> as Hex chúng ta sẽ nhìn thấy được bên trong nó có 1 tập tin tên MyText.txt

III. Đọc Tập Tin

Thực hiện việc đọc tập tin này

Ở 0094 -> 0095 có giá trị 00 00 đảo ngược lại 00 00 là giá trị byte cao của cluster bắt đầu

Ở 009A->009B có giá trị 11 00 đảo ngược lại 00 11 là giá trị của byte thấp của cluster bắt đầu

Ghép giá trị byte cao và byte thấp sau khi đảo ngược lại thành 00 00 00 11 => N=17

Áp dụng vào công thức

Sector đầu tiên của vùng dữ liệu = (N-2) * Số Sector /Cluster  + Địa chỉ bắt đầu vùng Root Directory

Sector vật lý đầu tiên của vùng dữ liệu=(17-2) * 4 +  24611433 =  24611493

Chúng ta đi đến Sector 24611493

Dòng Hello World đã xuất hiện vậy chúng ta đã hoàn thành việc đọc Folder và Tập Tin bằng Norton Disk Editor .