Nguồn gốc của DS_store (2006)
(arno.org)-
Nguồn gốc của DS_Store của Apple
-
Nếu là người dùng Mac hoặc từng chuyển tệp từ Mac sang Windows, hẳn bạn đã quen với tệp
.DS_Store -
Nguồn gốc của cái tên này bắt nguồn từ năm 1999
-
Vào thời điểm đó, tác giả là trưởng nhóm kỹ thuật của Finder trên Mac OS X tại Apple
-
Codebase của Finder đã tồn tại 8 năm và đã hết vòng đời hữu ích
-
Để thực hiện thay đổi cần một nỗ lực kỹ thuật khổng lồ, và mỗi lần thay đổi thì hai hoặc ba tính năng không liên quan lại bị hỏng
-
Vì vậy đã quyết định viết lại Finder từ đầu cho Mac OS X
-
Một phần của công việc là tách giao diện người dùng khỏi chức năng cốt lõi, tức backend
-
Backend của Finder có nhiệm vụ liệt kê tệp, theo dõi các thay đổi của hệ thống tệp và xử lý metadata
-
Nội bộ, hai thành phần này được gọi là Finder_FE và Finder_BE (Frontend và Backend)
-
Sau đó nhận ra rằng backend của Finder cũng sẽ hữu ích bên ngoài Finder
-
Vì vậy đã lập kế hoạch biến nó thành một API công khai
-
Trước đó tác giả từng phụ trách việc đặt tên cho Icon Services và Navigation Services, nên đã chọn cái tên Desktop Services
-
.DS_Storelà viết tắt của "Desktop Services Store" -
Dấu "." được thêm vào đầu để nó được coi là tệp ẩn trên các hệ điều hành Unix, bao gồm cả Mac OS
-
Về mặt cá nhân, tác giả cho rằng cái tên này không thực sự hay và đáng ra nên chọn một cái tên mang tính mô tả hơn
-
Lỗi dẫn đến việc tạo
.DS_Storequá mức đến nay vẫn chưa được sửa -
Nó lẽ ra chỉ nên được tạo khi người dùng điều chỉnh thiết lập hiển thị hoặc đặt vị trí thủ công của biểu tượng trong thư mục
-
Tuy nhiên, chỉ cần truy cập một thư mục thì gần như chắc chắn
.DS_Storesẽ được tạo ra -
Finder_BE, tức Desktop Services, còn được dùng ngoài Finder
-
Navigation Services (hộp thoại mở/lưu) cũng sử dụng nó
-
Tuy nhiên, API Desktop Services đến nay vẫn chưa được công khai hoàn toàn
- Xuất bản ngày 1 tháng 10 năm 2006
- Tác giả: Arno Gourdol
Ý kiến của GN⁺
- Bài viết này cung cấp bối cảnh kỹ thuật bằng cách giải thích lịch sử của Finder trên Mac OS X và nguồn gốc của tệp
.DS_Store - Vấn đề tạo tệp
.DS_Storequá mức vẫn chưa được giải quyết, và điều này có thể ảnh hưởng đến trải nghiệm người dùng - Khả năng tái sử dụng của backend Finder cho thấy triết lý thiết kế phần mềm của Apple
- Các công cụ quản lý hệ thống tệp khác có chức năng tương tự gồm NTFS của Windows và ext4 của Linux
- Khi áp dụng công nghệ mới hoặc mã nguồn mở, cần cân nhắc khả năng tương thích với hệ thống hiện có cũng như vấn đề bảo trì
1 bình luận
Ý kiến trên Hacker News
Khái niệm "fork" trong hệ thống tệp của Mac có nghĩa là các thành phần resource và data tồn tại thành cặp
Trước đây có cách tắt việc tạo tệp .DS_Store nhưng đã bị loại bỏ
Không hiểu vì sao tệp .DS_Store phải nằm trong cùng thư mục
Tệp .DS_Store chỉ nên được tạo khi người dùng điều chỉnh thiết lập chế độ xem của thư mục hoặc đặt vị trí biểu tượng thủ công
Ngay từ năm 1999, ứng dụng đã được tách thành frontend và backend
Cũng đáng nhắc đến cách tắt mặc định việc tạo tệp .DS_Store khi duyệt các volume mạng
Mỗi khi nhìn thấy tệp .DS_Store lại nghĩ đến Nintendo DS
Với những người không dùng Mac, việc tải tệp .tgz từ Github mà bên trong có .DS_Store khá phiền phức
Dù là người rất hâm mộ MacOS, nhưng Finder là một trong những trình quản lý tệp ngớ ngẩn nhất
Tệp DS Store là một sự tồn tại đáng tiếc