Các bước để tạo một tập tin mới:
. Một chương trình ứng dụng gọi các hệ thống tập tin hợp lý, mà biết định dạng của các cấu trúc thư mục
của hệ thống tập tin hợp lý phân bổ một khối điều khiển tập tin mới (FCB) .Nếu tất cả FCBs được tạo ra tại hệ thống tập tin thời gian sáng tạo , một FCB được phân bổ từ danh sách miễn phí.
Các hệ thống tập tin hợp lý thì: Đọc các thư mục thích hợp vào bộ nhớ, Cập nhật các thư mục với tên tập tin mới và FCB, Viết thư mục trở lại đĩa.
UNIX đối xử với một thư mục chính xác giống như . một tập tin bằng phương tiện của một trường loại trong inode
Windows NT thực hiện các cuộc gọi hệ thống riêng biệt cho các tập tin và thư mục và xử lý các thư mục như những thực thể tách biệt với các tập tin.
Các bước để mở một tập tin bằng cách sử dụng open ():
1. Chức năng đầu tiên tìm kiếm bàn mở tập tin hệ thống để xem các tập tin đã được sử dụng bởi một process.If điều này là, mở tập tin nhập cảnh cho mỗi quá trình bàn được tạo ra chỉ vào toàn hệ thống mở tập tin hiện có bảng. Thuật toán này có thể có chi phí đáng kể; do đó, các bộ phận của cấu trúc thư mục thường được lưu trữ trong bộ nhớ để hoạt động tốc độ.
2. Một khi các tập tin được tìm thấy, FCB được sao chép vào một bảng mở tập tin toàn hệ thống trong bộ nhớ. Bảng này cũng theo dõi số lượng của các quá trình đó có các tập tin mở.
3. Một mục được tạo ra trong bảng mở tập tin cho mỗi quá trình, với một con trỏ đến các mục trong bảng mở tập tin hệ thống.
4. Các chức năng sau đó trả về một con trỏ / chỉ số để nhập cảnh thích hợp trong bảng hệ thống tập tin cho mỗi quá trình. Sau đó tất cả các hoạt động tập tin tiếp theo được thực hiện thông qua pointer.UNIX này đề cập đến con trỏ này là descriptor.Windows tập tin đề cập đến nó như là các tập tin xử lý.
Các bước để đóng một tập tin bằng cách sử dụng close ():
1. Các entry cho mỗi quá trình bảng được lấy ra
2. Đề mở các mục nhập của toàn hệ thống được giảm đi
3. Khi tất cả các tiến trình đã mở các tập tin cuối cùng gần it.Any cập nhật siêu dữ liệu được sao chép lại cho các thư mục trên ổ đĩa structure.The toàn hệ thống mục bảng mở tập tin được gỡ bỏ.
Các phân vùng và lắp
Mỗi phân vùng có thể là nguyên liệu, không chứa hệ thống tập tin, hoặc định dạng như là một hệ thống tập tin.
Một phân vùng nguyên liệu được sử dụng khi không có hệ thống tập tin là phù hợp: không gian trao đổi UNIX có thể sử dụng một phân vùng nguyên liệu. Một số cơ sở dữ liệu sử dụng phân vùng nguyên liệu và định dạng dữ liệu cho phù hợp với các phân vùng needs.Raw của họ cũng có thể được sử dụng để thực hiện các hệ thống RAID.
Khởi động thông tin có thể được lưu trữ trong một phân vùng khởi động riêng biệt: chỉ có định dạng riêng của nó bởi vì các trình điều khiển thiết bị hệ thống tập tin không thông tin yet.Boot nạp thường là một chuỗi tuần tự các khối nạp như một hình ảnh vào bộ nhớ. Những hình ảnh khởi động có thể chứa mã để thực hiện một khởi động kép nếu nhiều hệ điều hành đang bị trì hoãn trên cùng một đĩa.
Các phân vùng gốc được gắn ở time.It khởi động có chứa các hạt nhân hệ điều hành và các tập tin hệ thống có thể khác.
khối lượng khác có thể được tự động gắn kết vào lúc khởi động hoặc bằng tay gắn sau.
Là một phần của một thành công gắn kết hoạt động, hệ điều hành để kiểm chứng rằng các thiết bị lưu trữ có chứa một hệ thống tập tin hợp lệ: Nó yêu cầu trình điều khiển thiết bị để đọc các thư mục thiết bị và xác minh rằng các thư mục có dạng dự kiến. Nếu định dạng không hợp lệ, phân vùng đó phải có kiểm tra tính nhất quán của nó và có thể sửa chữa. Cuối cùng, các ghi chú hệ điều hành trong bộ nhớ của nó gắn kết cấu trúc bảng mà một hệ thống tập tin được gắn cùng với các loại hệ thống tập tin. Các hệ thống Microsoft Windows dựa trên gắn kết mỗi khối lượng trong một không gian tên riêng biệt biểu thị bằng một lá thư và một hệ điều hành colon.The đặt một con trỏ đến các tập tin hệ thống trong lĩnh vực cấu trúc thiết bị tương ứng với ổ đĩa letter.UNIX cho phép các hệ thống tập tin được gắn ở bất kỳ directory.Mounting được thực hiện bằng cách thiết lập một lá cờ trong bản sao trong bộ nhớ của inode cho thư mục.
ảo Hệ thống tập tin
ảo hệ thống tập tin (VFS) cung cấp một cách hướng đối tượng thực hiện các hệ thống tập tin.
VFS cho phép các hệ thống tương tự giao diện cuộc gọi (API) để được sử dụng với nhiều loại khác nhau của các hệ thống tập tin.
Các API là giao diện VFS, chứ không phải bất kỳ loại hình cụ thể của hệ thống tập tin.
cấu trúc và quy trình dữ liệu được sử dụng để cô lập các chức năng cơ bản systemcall từ các chi tiết thực hiện. Vì vậy, việc thực hiện hệ thống tập tin bao gồm ba lớp lớn, như được mô tả bằng sơ đồ ở hình 12.4. Lớp đầu tiên là giao diện tập tin hệ thống, dựa trên open (), read (), write (), và đóng () các cuộc gọi và mô tả tập tin. Lớp thứ hai được gọi là hệ thống tập tin ảo (VFS) lớp. Lớp VFS phục vụ hai chức năng quan trọng:
1. Nó tách hoạt động tập tin hệ thống chung chung từ việc thực hiện chúng bằng cách định nghĩa một giao diện VFS sạch. Một số hiện thực cho giao diện VFS có thể cùng tồn tại trên cùng một máy, cho phép truy cập trong suốt với các loại khác nhau của các hệ thống tập tin gắn tại địa phương.
2. Nó cung cấp một cơ chế để đại diện cho duy nhất một tập tin qua mạng. VFS được dựa trên một cấu trúc file-đại diện, được gọi là một vnode, có chứa một số vấn thiết kế cho một tập tin duy nhất trên toàn mạng. (Inode UNIX là duy nhất chỉ trong vòng một hệ thống tập tin duy nhất.) Độc đáo trên toàn mạng này là cần thiết để hỗ trợ các hệ thống tập tin mạng. Các hạt nhân duy trì một cấu trúc vnode cho mỗi nút hoạt động (tập tin hoặc thư mục).
đang được dịch, vui lòng đợi..
