1. Trang chủ
  2. » Tất cả

Báo cáo bài tâp lớn môn hệ điều hành đề tài tìm hiểu về file system

45 23 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo cáo bài tập lớn môn hệ điều hành đề tài tìm hiểu về file system
Tác giả Nhóm 11
Người hướng dẫn TS Nguyễn Thanh Bình
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Hệ điều hành
Thể loại Báo cáo bài tập lớn
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 45
Dung lượng 2,21 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Location : Trong Hệ thống tệp, có một số vị trí mà các tệp có thể được lưu trữ.. Các hoạt động này được thực hiện bởi người dùng bằng cách sử dụng các lệnh được cung cấp bởi hệ điều hành

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

TRƯỜNG ĐIỆN – ĐIỆN TỬ

BÁO CÁO BÀI TÂP LỚN MÔN HỆ ĐIỀU HÀNH

ĐỀ TÀI: TÌM HIỂU VỀ FILE SYSTEM

GIÁO VIÊN HƯỚNG DẪN: TS NGUYỄN THANH BÌNH

Trang 2

Mục lục

No table of contents entries found.

Trang 3

DANH MỤC HÌNH VẼ VÀ BẢNG BIỂU

I Hình ảnh

Trang 4

PHÂN CÔNG CÔNG VIỆC

Đỗ Kim Hoàn - File;

- File System;

- Hệ thống FAT Hoàng Minh Đức - File Directory;

- Tổ chức thông tin trên đĩa từ.

Trần Quang Linh - File System Setting:

+ Cài đặt cho cách quản lý file và phân bổ vùng nhớ.

+ Các cách truy nhập file trong hệ thống File;.

Trang 5

LỜI NÓI ĐẦU

Nếu chúng ta nói về hệ điều hành, trong tất cả các chức năng chính của

hệ điều hành thì hệ thống file là quan trọng nhất, nghĩa là hệ điều hành quản lýcác file Nếu chúng ta nói về Windows, nó có hệ thống file NTFS, trước đó có

hệ điều hành DOS có hệ thống file dos, nếu chúng ta nói về Unix thì có hệthống tệp Unix, nếu chúng ta nói về LINUX thì có hệ thống tệp mở rộng, trongthời đại ngày nay, chúng ta nói về dữ liệu lớn vì có hệ thống tệp ZFS Có nghĩa

là nếu chúng ta nói về bất kì hệ điều hành nào thì trong kernel của hệ điều hành

đó thì đều có một module là file system

File system là phần cứng hay phần mềm? File system là một phần mềm

và nằm trong hệ điều hành nghĩa là nó được quản lý bởi hệ điều hành Một filekhi máy tính sử dụng sẽ được lưu trữ trong bộ RAM hay Cache nhưng nhữngloại bộ nhớ này sẽ hoàn toàn mất hết dữ liệu khi máy tính không còn hoạt động.Vậy để khi chúng ta đóng máy tính và mở lên mà vẫn có dữ liệu thì một loại bộnhớ khác được sinh ra được gọi là bộ nhớ lưu trữ vĩnh viễn hay còn gọi là ổcứng (hard disk), ví dụ SSD, HDD, file system sẽ lấy dữ liệu từ những ổ cứngtrên để sử dụng User sẽ sử dụng file để xem thông tin dữ liệu của mình, các filenày được nằm trong các Foler ở trong Windows, Directory ở trong Linux và tất

cả chúng sẽ được quản lý ở File System User sẽ chỉ có thể xem được cácfoler/directory của mình mà không xem được chúng quản lý bởi File Systemnhư thế nào

Khi có một file dữ liệu cần được lưu trữ vào máy, file system sẽ chia nhỏchúng thành các block và từ các block đó chúng sẽ được ánh xạ tới các địa chỉcủa ổ cứng Công việc trên được xử lý bởi file system, vì vậy file system có vaitrò chính là lưu trữ dữ liệu, tìm kiếm và truy xuất dữ liệu

Trang 6

File system xử lý các vấn đề sau

 File Structure: Chúng tôi đã thấy các cấu trúc dữ liệu khác nhau trong đó tệp có thể được lưu trữ Nhiệm vụ của hệ thống tệp là duy trì cấu trúc tệp tối ưu.

 Recovering Free space: Bất cứ khi nào một tệp bị xóa khỏi đĩa cứng, sẽ có một dung lượng trống được tạo trong đĩa Có thể có nhiều khoảng trống như vậy cần được khôi phục để phân bổ lại chúng cho các tệp khác.

 disk space assignment to the files: Mối quan tâm chính về tệp là quyết định nơi lưu trữ tệp trên đĩa cứng Có nhiều thuật toán lập lịch đĩa khác nhau sẽ được đề cập sau trong hướng dẫn này.

 Tracking data location: Một tệp có thể hoặc không thể được lưu trữ chỉ trong một khối Nó có thể được lưu trữ trong các khối không liền kề trên đĩa Chúng tôi cần theo dõi tất cả các khối chứa một phần của tệp.

1.2 File System Structure

 File system cung cấp quyền truy cập hiệu quả vào đĩa bằng cách cho phép dữ liệu được lưu trữ, định vị và truy xuất một cách thuận tiện Một file sytsem phải có khả năng lưu trữ tệp, định vị tệp và truy xuất tệp.

 Hầu hết các Hệ điều hành sử dụng phương pháp phân lớp cho mọi tác vụ bao gồm

cả file system Mỗi lớp của file system chịu trách nhiệm cho một số hoạt động.

 Hình ảnh hiển thị bên dưới mô tả chi tiết cách hệ thống tệp được chia thành các lớp khác nhau cũng như chức năng của từng lớp.

Trang 7

Hình 7: Các lớp của file system

 Khi một chương trình ứng dụng yêu cầu một tệp, yêu cầu đầu tiên được chuyển đến file system logic File system logic chứa dữ liệu Meta của cấu trúc tệp và thư mục Nếu chương trình ứng dụng không có các quyền cần thiết của tệp thì lớp này sẽ báo lỗi Các file system hợp lý cũng xác minh đường dẫn đến tệp.

 Nói chung, các tệp được chia thành các khối logic khác nhau Các tệp sẽ được lưu trữ trong đĩa cứng và được truy xuất từ đĩa cứng Đĩa cứng được chia thành các track và sector khác nhau Do đó, để lưu trữ và truy xuất các tệp, các khối logic cần được ánh xạ tới các khối vật lý Việc ánh xạ này được thực hiện bởi Mô-đun tổ chức tệp Nó cũng chịu trách nhiệm quản lý không gian trống.

 Khi mô-đun tổ chức tệp đã quyết định khối vật lý nào mà chương trình ứng dụng cần, nó sẽ chuyển thông tin này đến file system cơ bản File system cơ bản chịu trách nhiệm đưa ra các lệnh tới điều khiển I/O để tìm nạp các khối đó.

 Các điều khiển I/O chứa các mã bằng cách sử dụng mà nó có thể truy cập đĩa cứng Các mã này được gọi là trình điều khiển thiết bị Các điều khiển I/O cũng chịu trách nhiệm xử lý các ngắt.

2 Tổ chức thông tin trên đĩa từ

2.1 Cấu trúc vật lý của đĩa từ

 Mặt đĩa từ (magnetic disk): Dùng để lưu trữ thông tin Thông tin có thể lưu trữ

ở hai mặt khác nhau.

Trang 8

 Lớp vỏ cứng bên ngoài bảo vệ cả đĩa.

2.2 Mặt đĩa từ

 Thông tin lưu trên đĩa từ ở cả hai mặt là mặt trên và mặt dưới hay mặt 0

và mặt 1.

 Mỗi mặt được đọc với một đầu đọc ghi (header) khác nhau Cho nên

người ta đồng nhất mặt đĩa với số hiệu đầu đọc ghi: đầu từ 0 ở mặt 0 và đầu từ 1 ở mặt 1.

 Dữ liệu sẽ được lưu trữ trên đĩa ở các vòng tròn đồng tâm hay còn gọi là

“rãnh đĩa (track)” Các rãnh đĩa được đánh số: 0, 1, 2, … từ ngoài vào

trong

 Trong các vòng tròn đồng tâm, chúng ta chia ra các cung từ bằng nhau

hay gọi là sector Các Sector được đánh số: 1, 2, 3, … Một sector trên đĩa

được xác định bằng toạ độ 3 chiều: (mặt đĩa; rãnh đĩa; số hiệu vector trênrãnh đĩa)

Trang 9

2.3 Sector

 Sector đơn vị thông tin hệ thống máy tính dung để làm việc với đĩa từSector xác định qua tọa độ 3 chiều: Header, Track, Sector

Ví dụ: Boot Sector cıa đĩa mềm: Sector <0, 0, 1>

 Sector được xác định qua số hiệu sector (tọa độ 1 chiều)

o Vị trí tương đối so với sector đầu tiên của đĩa, ví dụ: Sector đầu

tiên của đĩa <0, 0, 1> (mặt 0, rãnh 0, sector thứ nhất) có số hiệu

#0, tương tự <0, 0, 2> sẽ có số hiệu là #1, …

o Đối với mặt 1, số hiệu sẽ bắt đầu từ #8 (số hiệu lớn nhất tương ứng của mặt 0) và giảm dần về #0 Ví dụ <1, 0, 1> #8

2.4 Cấu trúc vật lý đĩa cứng

 Gồm nhiều mặt đĩa được đánh số từ 0,1…

 Các rãnh cùng bán kính tạo lên cylinder, được đánh số từ 0,1,…

 Các sector trên mỗi mặt của mỗi cylinder được đánh số từ 1,2,…

Trang 10

 Định vị thông tin theo tạo độ 3 chiều là (Header, Cylinder, Sector) hay (H, C, S) Ngoài ra cũng có thể định vị theo toạ độ 1 chiều bằng số hiệu sector như với đĩa từ; Sector – Header – Cylinder.

Trang 11

2.6 Cấu trúc logic của đĩa

 Đĩa mềm: Mỗi hệ điều hành có một chiến lược quản lí riêng

 Đĩa cứng; Có dung lượng lớn và được chia thành nhiều phân vùng khác nhau

o Phân vùng có nhiều tên gọi khác nhau: Partitions, Volumes

(Microsoft), MiniDisk (IBM),

o Mỗi phân vùng là một tập hợp các Cylinder liên tiếp nhau

o Người dùng ấn định kích thước của mỗi phân vùng bằng các

chương trình phân chia ổ đĩa

 Mỗi phân vùng có thể được quản lí bỏi một hệ điều hành riêng Hệ điều hành sẽ format phân vùng theo định dạng file mà hệ điều hành đó sử dụng ví dụ: NTFS(MSDOS), EXT3(Linux), …

 Trước tất cả các phân vùng là các section bị che

Section đầu tiên của toàn bộ thiết bị lưu trữ là section quan trọng nhất, gọi là Master Boot Record (MBR)

 MBR có cấu trúc gồm 3 phần:

o Chương trình nhận biết: Có nhiệm vụ là đọc bảng phân chương để biết vị trí các phân vùng và phân vùng tích cực (chứa Hệ điều hành) Khi xác định được phân vùng tích cực sẽ đọc và thực hiện sector đầu tiên của phân vùng này

o Bảng phân chương (64 bytes): Gồm 4 phần tử, mỗi phần tử 16 bytes chứa thông tin một vùng (vị trí, kích thước, hệ thống file mà )

o Chữ ký hệ thống luôn là 55AA

 Cấu trúc 1 phần tử của bảng phân chương:

Trang 12

o Byte đầu tiên: Byte 0 hay Byte dấu hiệu, nó cho biết rằng phân vùng này có phải phân vùng tích cực hay không? Có thể chứa 1 trong 2 giá trị: hoặc là giá trị 0, hoặc là giá trị 80h.

Nếu giá trị 0 thì cho biết răngf phân vùng này chứa dữ liệu thường Nếu giá trị 80h thì cho biết rằng phân vùng này chứa hệ điều hành

 3 byte tiếp theo dùng để xác định toạ độ của sector đầu tiên của phân vùng: Byte 1 cho biết số hiệu mặt đĩa hay số hiệu đầu đọc ghi(header)., Byte 2, Byte 3 tạo thành 1W dùng để mã hoá số hiệu sector và

cylinder đầu của phân vùng Cách mã hoá: số hiệu sector dùng 6 bit thấp; số hiệu cylinder dùng 10 bit (Toạ độ 3 chiều)

 Byte 4 là mã nhận diện hệ thống Ví dụ giá trị 05/0F thì là Partition

mở rộng; với giá trị 06 là BigDos; giá trị 07 là NTFS; …

 Byte 5,6 và 7 chứa toạ độ sector cuối cùng cảu phân vùng trong đó byte 5 chứa giá trị mạt đĩa; byte 6 và 7 tạo thành 1W dùng để mã hoá

số hiệu sector và cylinder

 4 byte 8, 9, 10, 11 cho biết số hiệu của sector đầu tiên của phân vùng.(vị trí tương đối với sector đầu tiên cảu đĩa)

 4 byte 12, 13, 14, 15 cho biết tổng số sector của phân vùng (giới hạn kích thước là 2 TB)

3 Tổng quan về File

3.1 Thuộc tính của File

File là một tập hợp có tên của thông tin liên quan được ghi trên bộ lưu trữ thứ cấp như đĩa từ, băng từ và đĩa quang Nói chung, một tệp là một chuỗi các bit, byte, dòng hoặc bản ghi có ý nghĩa được xác định bởi người tạo và người dùng tệp Với file, chúng ta có một số thuộc tính sau:

Name: Mỗi tệp mang một tên mà tệp được nhận dạng trong hệ thống tệp Một

thư mục không thể có hai tệp trùng tên.

Identifier: Cùng với tên, Mỗi tệp có phần mở rộng riêng xác định loại tệp Ví dụ: một tệp văn bản có phần mở rộng là .txt,

Type : Trong Hệ thống tệp, Tệp được phân loại theo các loại khác nhau như tệp video, tệp âm thanh, tệp văn bản, tệp thực thi, v.v.

Trang 13

Location : Trong Hệ thống tệp, có một số vị trí mà các tệp có thể được lưu trữ Mỗi tệp mang vị trí của nó làm thuộc tính của nó.

Size : Kích thước của tệp là một trong những thuộc tính quan trọng nhất của

nó Theo kích thước của tệp, chúng tôi muốn nói đến số byte mà tệp có được trong bộ nhớ.

Protection:Quản trị viên của máy tính có thể muốn các biện pháp bảo vệ khác nhau cho các tệp khác nhau Do đó, mỗi tệp mang một bộ quyền riêng cho nhóm Người dùng khác nhau.

Time and Date : Mỗi tệp mang một dấu thời gian chứa thời gian và ngày mà tệp được sửa đổi lần cuối.

3.2 Thao tác với File

File là một tập hợp dữ liệu có liên quan về mặt logic được ghi trên bộ lưu trữ thứ cấp dưới dạng chuỗi các thao tác Nội dung của các tệp được xác định bởi người tạo ra nó, người đang tạo file Các thao tác khác nhau có thể được thực hiện trên một file như đọc, ghi, mở và đóng, v.v được gọi là các thao tác với file Các hoạt động này được thực hiện bởi người dùng bằng cách sử dụng các lệnh được cung cấp bởi hệ điều hành Một số thao tác phổ biến như sau:

Create operation: Thao tác này được sử dụng để tạo một tệp trong file system Đây là hoạt động được sử dụng rộng rãi nhất được thực hiện trên file system Để tạo một tệp mới thuộc loại cụ thể, chương trình ứng dụng được liên kết gọi file system File system này phân bổ không gian cho tệp Vì file system biết định dạng của cấu trúc thư mục, nên mục nhập của tệp mới này được tạo vào thư mục thích hợp.

 Open operation: Thao tác này là thao tác phổ biến được thực hiện trên

tệp Tệp sau khi được tạo phải được mở trước khi thực hiện các thao tác xử lý tệp Khi người dùng muốn mở một tệp, nó sẽ cung cấp tên tệp để mở tệp cụ thể trong file system Nó yêu cầu hệ điều hành thực hiện lệnh gọi hệ thống mở và chuyển tên tệp cho file system.

Trang 14

 Write operation: Thao tác này được sử dụng để ghi thông tin vào một

tệp Một cuộc gọi hệ thống ghi được đưa ra chỉ định tên của tệp và độ dài của

dữ liệu phải được ghi vào tệp Bất cứ khi nào độ dài tệp được tăng lên theo giá trị đã chỉ định và con trỏ tệp được định vị lại sau byte cuối cùng được ghi.

 Read operation: Hoạt động này đọc nội dung từ một tập tin Một con trỏ Đọc

được hệ điều hành duy trì, trỏ đến vị trí mà dữ liệu đã được đọc.

 Re-position or Seek operation: Lệnh gọi hệ thống tìm kiếm định vị lại các

con trỏ tệp từ vị trí hiện tại đến một vị trí cụ thể trong tệp tức là tiến hoặc lùi tùy thuộc vào yêu cầu của người dùng Thao tác này thường được thực hiện với những hệ thống quản lý tệp hỗ trợ tệp truy cập trực tiếp.

 Delete operation: Việc xóa tệp sẽ không chỉ xóa tất cả dữ liệu được lưu trữ bên trong tệp mà nó còn được sử dụng để giải phóng không gian đĩa bị chiếm bởi nó Để xóa tệp đã chỉ định, thư mục được tìm kiếm Khi mục nhập thư mục được định vị, tất cả không gian tệp được liên kết và mục nhập thư mục sẽ được giải phóng.

 Truncate operation: Cắt bớt chỉ đơn giản là xóa tệp ngoại trừ xóa các thuộc

tính Tệp không bị xóa hoàn toàn mặc dù thông tin được lưu trữ bên trong tệp được thay thế.

 Close operation: Khi quá trình xử lý tệp hoàn tất, tệp phải được đóng lại để tất

cả các thay đổi được thực hiện vĩnh viễn và tất cả các tài nguyên bị chiếm dụng

sẽ được giải phóng Khi đóng, nó giải phóng tất cả các bộ mô tả bên trong đã được tạo khi tệp được mở.

 Close operation: Thao tác này thêm dữ liệu vào cuối tệp.

 Rename operation: Thao tác này được sử dụng để đổi tên tệp hiện có.

3.3 Truy cập vào File:

Để có những thao tác với file như trên, đầu tiên ta cần phải truy cập vào file:

3.3.1 Sequential Access

Trang 15

Hình 1 Mô hình Sequential Access

Hầu hết các hệ điều hành truy cập tệp theo tuần tự Nói cách khác, chúng ta có thể nói rằng hầu hết các tệp cần được hệ điều hành truy cập tuần tự.

Trong truy cập tuần tự, hệ điều hành đọc tệp từng từ Một con trỏ được duy trì ban đầu trỏ đến địa chỉ cơ sở của tệp Nếu người dùng muốn đọc từ đầu tiên của tệp thì con trỏ cung cấp từ đó cho người dùng và tăng giá trị của nó lên 1 từ Quá trình này tiếp tục cho đến khi kết thúc tập tin.

Các hệ thống văn bản hiện đại cung cấp khái niệm truy cập trực tiếp và truy cập được lập chỉ mục nhưng phương pháp được sử dụng nhiều nhất là truy cập tuần tự do thực tế là hầu hết các tệp như tệp văn bản, tệp âm thanh, tệp video, v.v cần được truy cập tuần tự.

3.3.2 Direct Access

Truy cập trực tiếp chủ yếu được yêu cầu trong trường hợp hệ thống cơ sở dữ liệu Trong hầu hết các trường hợp, chúng tôi cần lọc thông tin từ cơ sở dữ liệu Truy cập tuần tự có thể rất chậm và không hiệu quả trong những trường hợp như vậy.

Giả sử mỗi khối của bộ lưu trữ lưu trữ 4 bản ghi và chúng tôi biết rằng bản ghi chúng tôi cần được lưu trữ trong khối thứ 10 Trong trường hợp đó, truy cập tuần tự sẽ không được thực hiện vì nó sẽ đi qua tất cả các khối để truy cập bản ghi cần thiết.

Trang 16

Hình 2: Mô hình Direct Access

Truy cập trực tiếp sẽ cho kết quả cần thiết mặc dù thực tế là hệ điều hành phải thực hiện một số tác vụ phức tạp như xác định số khối mong muốn Tuy nhiên, điều

đó thường được thực hiện trong các ứng dụng cơ sở dữ liệu.

3.3.3 Indexed Access

Nếu một tệp có thể được sắp xếp trên bất kỳ tệp nào được sắp xếp thì một chỉ mục có thể được gán cho một nhóm các bản ghi nhất định Tuy nhiên, một bản ghi cụ thể có thể được truy cập bằng chỉ mục của nó Chỉ mục không là gì ngoài địa chỉ của một bản ghi trong tệp.

Khi truy cập chỉ mục, việc tìm kiếm trong cơ sở dữ liệu lớn trở nên rất nhanh chóng và dễ dàng nhưng chúng ta cần có thêm dung lượng trong bộ nhớ để lưu trữ giá trị chỉ mục.

Trang 17

Mỗi phân vùng phải có ít nhất một thư mục trong đó có thể liệt kê tất cả các tệp của phân vùng đó. Một mục nhập thư mục được duy trì cho mỗi tệp trong thư mục lưu trữ tất cả thông tin liên quan đến tệp đó

Hình 3: Cấu trúc thư mục

Một thư mục có thể được xem như một tệp chứa dữ liệu Meta của một loạt tệp

Mọi Thư mục đều hỗ trợ một số thao tác phổ biến trên tệp:

3.4.2 Single Level Directory

Phương pháp đơn giản nhất là có một danh sách lớn tất cả các tệp trên đĩa. Toàn bộ hệ thống sẽ chỉ chứa một thư mục được cho là đề cập đến tất cả các tệp

có trong hệ thống tệp. Thư mục chứa một mục nhập cho mỗi tệp có trên hệ thống tệp

Hình 4: Cấu trúc Single Level Directory

Loại thư mục này có thể được sử dụng cho một hệ thống đơn giản

Trang 18

Ưu điểm Nhược điểm

 Thực hiện rất đơn giản.

 Nếu kích thước của các tệp

rất nhỏ thì việc tìm kiếm sẽ

trở nên nhanh hơn.

 Việc tạo, tìm kiếm, xóa tệp

 Bảo vệ không thể được thực hiện cho nhiều người dùng.

 Không có cách nào để nhóm các loại tệp giống nhau.

 Việc chọn tên duy nhất cho mọi tệp hơi phức tạp và giới hạn số lượng tệp trong hệ thống vì hầu hết Hệ điều hành đều giới hạn số lượng ký

tự được sử dụng để tạo tên tệp.

Bảng 1: So sánh ưu nhược điểm của Single Level Directory

3.4.3 Two Level Directory

Trong hệ thống thư mục hai cấp, có thể tạo một thư mục riêng cho mỗi người dùng. Có một thư mục chính chứa các thư mục riêng dành cho từng người dùng. Với mỗi người dùng, có một thư mục khác nhau ở cấp độ thứ hai, chứa nhóm tệp của người dùng. Hệ thống không cho phép người dùng truy cập vào thư mục của người dùng khác mà không được phép

Hình 5:Cấu trúc Tow Level Directory

Đặc điểm của Two Level Directory

 Mỗi tệp có một tên đường dẫn là /User-name/directory-name/

 Những người dùng khác nhau có thể có cùng tên tệp

 Việc tìm kiếm trở nên hiệu quả hơn vì chỉ cần duyệt qua danh sách của một người dùng

 Các loại tệp giống nhau không thể được nhóm vào một thư mục cho một người dùng cụ thể

Trang 19

Mọi Hệ điều hành đều duy trì một biến là PWD chứa tên thư mục hiện tại (tên người dùng hiện tại) để việc tìm kiếm có thể được thực hiện một cách thích hợp

3.4.4 Tree Structured Directory

Trong hệ thống thư mục có cấu trúc Tree, bất kỳ mục nhập thư mục nào cũng

có thể là tệp hoặc thư mục con. Hệ thống thư mục cấu trúc cây khắc phục được nhược điểm của hệ thống thư mục hai cấp. Các loại tệp tương tự hiện có thể được nhóm trong một thư mục

Mỗi người dùng có thư mục riêng và không thể nhập vào thư mục của người dùng khác. Tuy nhiên, người dùng có quyền đọc dữ liệu của root nhưng anh ta không thể viết hoặc sửa đổi dữ liệu này. Chỉ quản trị viên của hệ thống mới có toàn quyền truy cập vào thư mục gốc

Tìm kiếm hiệu quả hơn trong cấu trúc thư mục này. Khái niệm về thư mục làm việc hiện tại được sử dụng. Một tệp có thể được truy cập bằng hai loại đường dẫn, tương đối hoặc tuyệt đối

Đường dẫn tuyệt đối là đường dẫn của tệp đối với thư mục gốc của hệ thống trong khi đường dẫn tương đối là đường dẫn đối với thư mục làm việc hiện tại của hệ thống. Trong các hệ thống thư mục có cấu trúc cây, người dùng được cấp đặư mục

Hình 6: Cấu trúc Tree Directory

Một hệ thống thư mục có cấu trúc cây có thể bao gồm nhiều cấp độ khác nhau, do

đó có một tập hợp các quyền được gán cho từng tệp và thư mục

Các quyền là RWX liên quan đến việc đọc, viết và thực thi các tệp hoặc thư mục. Các quyền được gán cho ba loại người dùng: chủ sở hữu, nhóm và những người khác

Có một bit nhận dạng phân biệt giữa thư mục và tệp. Đối với một thư mục, nó

là d và đối với một tệp, nó là dấu chấm (.)

III File FAT

Tồn tại nhiều hệ thống file khác nhau như file FAT, NTFS, ETX3, CDFS, UDF

Hệ thống FAT

Trang 20

 FAT32 dùng cho Win98

 12/16/32: số bit dùng để định danh cluster

 Hệ thống quản lý file trong CDROM

 Hạn chế về độ sâu cây thư mục và kích thước tên

Hệ thống UDF

 Phát triển từ CDFS cho DVD-ROM, hỗ trợ tên file dài

Ở trong báo cáo này sẽ lựa chọn hệ thống file đơn giản nhất và dễ dàng hiểu nhất đó là hệ thống file FAT Hệ thống file FAT được sử dụng rất thông dụng vì nó được đưa ra bởi hãng Microsoft.

1 Cấu trúc của hệ thống file FAT

Khi chúng ta có một phân vùng mà chúng ta muốn sử dụng cho hệ thống file FAT thì đầu tiên chúng ta cần phải tiến hành format

Hình 20: Cấu trúc hệ thống file FAT16 và FAT32

Khi format phân vùng đó theo định dạng của hệ thống file flash thì nó sẽ chia phân vùng này ra thành bao gồm vùng hệ thống và vùng dữ liệu Trong phần hệ thống, được chia thành các phần nhỏ là Boot Sector, FAT group Trong vùng dữ liệu, được chia thành các khối được gọi là các cluster Với FAT12 và FAT16 thì sẽ sử dụng 12 hoặc 16 bit để định ra của một cluster tạo ra hệ thống FAT12, FAT16; với FAT12 có

Trang 21

thước lớn nhất của hệ thống FAT12 là 32MB và FAT16 là 2Gb hoặc 4Gb Với FAT32, về mặt lý thuyết có thể dùng 32 bit để định danh 1 phần tử, tuy nhiên chỉ dùng 28 bit trong thực tế, cho nên số cluster lớn nhất có thể là 2^28 – 18 Kích thước lớn nhất của một phân vùng FAT32 có thể đạt tới 2Tb, 8Tb hoặc 16Tb Về cấu trúc file hệ thống của FAT12 và FAT16 là giống nhau và phần thư mục gốc được đặt trong vùng hệ thống còn với FAT32 thì nó được đặt trong vùng dữ liệu nên kích thước và vị trí có thể được thay đổi

2 Boot Sector

2.1 Tổng quan

Boot sector là sector đầu tiên của một phân vùng dành cho hệ thống file FAT

và được chia thành 3 phần như sau đầu tiên là câu lệnh Jmp và mã vùng nhảy tới, tiếp tới là một vùng là bảng tham số Bios parameters blog, tiếp đến là chương trình mồi và cuối cùng là 4 byte được gọi là chữ ký của hệ thống.

Hình 21: Cấu trúc của Boot Sector và ví dụ

Khi bật máy tính, đầu tiên là top power on the test rồi tiếp đến là thực hiện chương trình nhật biết, trong chương trình nhận biết sẽ đọc bảng phân chương để biết rằng phân vùng nào chưa hệ điều hành và sau đó đọc sector đầu tiên của phân vùng chứa hệ điều hành vào trong bộ nhớ và thực hiện phân vùng này Nếu phân vùng chưa

hệ điều hành là phân vùng của Microsoft như Windown thì sector đầu tiên sẽ chính là boot sector vậy nên sau chương trình nhận biết thì chương trình tiếp theo là boot sector Boot sector sẽ thực hiện bằng câu lệnh Jmp, câu lệnh này sẽ nhảy của bảng thông số Bios và thực hiện thương trình mồi Chương trình mồi sẽ tìm kiếm những file của hệ điều hành và tiến hành nạp các file đó vào trong bộ nhớ Bảng thống số Bios sẽ

có các thông số dùng để mô tả các tổ chức của phân vùng tương ứng ví dụ nó cho biết

Trang 22

rằng kích thước của bảng FAT, kích thước của thư mục gốc, kích thước của cluster,

để tìm kiếm vị trí của thư mục gốc, vị trí các file,

2.2 Bảng tham số bios

 Cấu trúc bảng tham số đĩa dành cho FAT16

Hình 22: Ví dụ giải mã bảng tham số bios của FAT16

EB 3C 90 MSDOS5.0

00 02 40

01 00 02

00 02

00 00 F8 D1 09 3F 00

40 00 3F 00 00 00

41 0C 34 00

80h 00 29h D513 5B24

NO NAME FAT16

Nhảy đến đầu chương trình mồi Tên hệ thống file đã format đĩa Kích thước 1 sector, thường là 512

Số sector cho một cluster (32K – Cluster)

Số sector đừng trước FAT/ Số sector để dành

Số bảng FAT

Số phần tử của ROOT FAT32: 00 00 Tổng số sector trên đĩa ( <32M) hoặc 0000 Khuôn dạng đĩa (F8:HD, F0: Đĩa 1.44M)

Số sector cho một bảng FAT (209)

Bảng 2:Phân tích bảng tham số đĩa dành cho FAT16

 Cấu trúc tham số đĩa dành cho FAT32

Ngày đăng: 25/03/2023, 05:44

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w