FILE NAMING

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

4.1.

1 FILE NAMING

Tệp là một cơ chế trừu tượng. Nó cung cấp cách lưu trữ thông tin trên đĩa và đọc lại sau này, che giấu
người dùng khỏi chi tiết về cách và nơi lưu trữ thông tin cũng như cách hoạt động của đĩa. Đặc điểm
quan trọng nhất của bất kỳ cơ chế trừu tượng nào là cách đặt tên cho các đối tượng được quản lý, do đó
chúng ta sẽ bắt đầu xem xét hệ thống tệp với chủ đề đặt tên tệp. Khi một quy trình tạo ra một tệp, nó sẽ
đặt tên cho tệp. Khi quy trình kết thúc, tệp vẫn tồn tại và có thể được truy cập bởi các quy trình khác sử
dụng tên của nó. Quy tắc cụ thể cho việc đặt tên tệp có sự khác nhau giữa các hệ thống, nhưng tất cả các
hệ điều hành hiện tại đều cho phép các chuỗi từ một đến tám ký tự là tên tệp hợp lệ. Ví dụ như andrea,
bruce và cathy là các tên tệp khả dụng. Thường thì chữ số và ký tự đặc biệt cũng được phép, vì vậy các
tên như 2, urgent! và Fig.2-14 cũng thường hợp lệ. Nhiều hệ thống tệp hỗ trợ tên dài tới 255 ký tự. Một
số hệ thống tệp phân biệt chữ hoa và chữ thường, trong khi những hệ thống khác thì không. UNIX thuộc
nhóm đầu tiên; MS-DOS cũ thuộc nhóm thứ hai. (Dù cổ điển, MS-DOS vẫn rất phổ biến trong các hệ
thống nhúng, vì vậy nó chưa hề lỗi thời.) Vì vậy, hệ thống UNIX có thể có ba tệp riêng biệt với các tên
maria, Maria và MARIA. Trong MS-DOS, tất cả các tên này đều tham chiếu đến cùng một tệp.

Một phần mở rộng về hệ thống tệp có thể được đề cập ở đây. Windows 95 và Windows 98 đều sử dụng
hệ thống tệp MS-DOS, gọi là FAT-16, và do đó kế thừa nhiều đặc điểm của nó, như cách xây dựng tên tệp.
Windows 98 đã giới thiệu một số mở rộng cho FAT-16, dẫn đến FAT-32, nhưng hai hệ thống này khá giống
nhau. Ngoài ra, Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7 và Windows 8 đều
hỗ trợ cả hai hệ thống tệp FAT, mặc dù chúng thực sự đã lỗi thời. Tuy nhiên, các hệ điều hành mới hơn
này cũng có hệ thống tệp nội tại tiên tiến hơn nhiều (NTFS) với các đặc điểm khác nhau (như tên tệp
trong Unicode). Trên thực tế, có một hệ thống tệp thứ hai cho Windows 8, được gọi là ReFS (hệ thống
tệp chống lỗi), nhưng nó nhắm đến phiên bản máy chủ của Windows 8. Trong chương này, khi chúng ta
nhắc đến hệ thống tệp MS-DOS hoặc FAT, chúng ta ý chỉ FAT-16 và FAT-32 như được sử dụng trên
Windows trừ khi có chỉ định khác. Chúng ta sẽ thảo luận về các hệ thống tệp FAT sau trong chương này
và NTFS trong Chương 12, nơi chúng ta sẽ xem xét Windows 8 chi tiết hơn. Nhân tiện, cũng có một hệ
thống tệp giống FAT mới, được biết đến là hệ thống tệp exFAT, một mở rộng của Microsoft cho FAT-32
được tối ưu hóa cho ổ flash và các hệ thống tệp lớn. ExFAT là hệ thống tệp hiện đại duy nhất của
Microsoft mà OS X có thể đọc và ghi.

Nhiều hệ điều hành hỗ trợ tên tệp hai phần, với hai phần tách biệt bằng dấu chấm, như prog.c. Phần sau
dấu chấm được gọi là phần mở rộng tệp và thường chỉ ra điều gì đó về tệp. Trong MS-DOS, tên tệp là từ
1 đến 8 ký tự, cộng với một phần mở rộng tùy chọn từ 1 đến 3 ký tự. Trong UNIX, kích thước của phần
mở rộng, nếu có, là tùy thuộc vào người dùng, và tệp có thể có hai hoặc nhiều phần mở rộng, như
homepage.html.zip, trong đó .html chỉ ra một trang web trong HTML và .zip chỉ ra rằng tệp
(homepage.html) đã được nén bằng chương trình zip. Một số phần mở rộng tệp phổ biến và ý nghĩa của
chúng được hiển thị trong Hình 4-1.
Trong một số hệ thống (ví dụ như tất cả các phiên bản của UNIX), phần mở rộng tệp chỉ là các quy ước và
không bị hệ điều hành ép buộc. Một tệp có tên file.txt có thể là một loại tệp văn bản, nhưng tên này chủ
yếu để nhắc nhở người sở hữu hơn là truyền đạt thông tin thực tế cho máy tính. Mặt khác, trình biên
dịch C có thể yêu cầu rằng các tệp mà nó biên dịch phải kết thúc bằng .c và có thể từ chối biên dịch nếu
chúng không tuân thủ. Tuy nhiên, hệ điều hành không quan tâm đến điều này. Các quy ước như vậy đặc
biệt hữu ích khi cùng một chương trình có thể xử lý nhiều loại tệp khác nhau. Ví dụ, trình biên dịch C có
thể được cung cấp một danh sách gồm nhiều tệp để biên dịch và liên kết với nhau, một số là tệp C và
một số là tệp ngôn ngữ lắp ráp. Phần mở rộng trở nên cần thiết cho trình biên dịch để phân biệt tệp nào
là tệp C, tệp nào là tệp lắp ráp và tệp nào là các tệp khác.

Ngược lại, Windows nhận thức được phần mở rộng và gán ý nghĩa cho chúng. Người dùng (hoặc các quy
trình) có thể đăng ký phần mở rộng với hệ điều hành và chỉ định cho mỗi phần mở rộng một chương
trình “sở hữu” phần mở rộng đó. Khi người dùng nhấp đúp vào tên tệp, chương trình được gán cho phần
mở rộng tệp sẽ được khởi chạy với tệp đó làm tham số. Ví dụ, nhấp đúp vào file.docx sẽ khởi động
Microsoft Word với file.docx làm tệp ban đầu để chỉnh sửa.

You might also like