Một nguồn lực tốt để bắt đầu với việc phát triển trình điều khiển hệ thống tập tin Windows cho một newbie là gì?Một nguồn lực tốt để bắt đầu với phát triển trình điều khiển hệ thống tập tin Windows là gì?
Trả lời
Windows NT File System Internals bởi Rajeev Nagar.
trang Resource File System OSR Online (và OSR trực tuyến nói chung):
Các NTFSD mailing list/diễn đàn (cũng được tổ chức bởi OSR):
Và bắt đầu với Vista, Windows Driver Kit (WDK), mà thường được gọi là DDK, hiện nay bao gồm các hệ thống tập tin thể Cài đặt (IFS) Kit:
Chỉ cần một người đứng đầu lên - Phát triển hệ thống tệp Windows cực kỳ phức tạp vì hệ thống tệp được tích hợp chặt chẽ với trình quản lý bộ nhớ Windows. Đó là thứ mà mọi người dành cho sự nghiệp. Chỉ cần bạn có một ý tưởng những gì bạn có thể nhận được vào.
Bạn có thể thử Windows Hardware Developer Central, có liên kết tới blog, nhóm tin, sách và các tài nguyên hữu ích khác cho tác giả trình điều khiển.
Tôi cũng khuyên bạn nên tải xuống và cài đặt Windows DDK và khám phá một số mẫu được bao gồm. Nên có các trình điều khiển bộ xương khác nhau có thể được sử dụng làm điểm bắt đầu cho công việc tùy chỉnh của bạn.
Đối với trình điều khiển Windows cũng xem blog này: http://blogs.msdn.com/doronh/
Đối với Linux phát triển dựa trên hai cuốn sách tốt đến tâm: Linux Device Drivers và Linux Kernel Development. Trình điều khiển thiết bị Linux cuốn sách có thể hơi khó khăn để giới thiệu tốt về hạt nhân là điểm khởi đầu hữu ích.
source code việc triển khai Windows của hệ thống tệp ext2 có thể hữu ích.
Nhưng khi Mike B đề cập một cách chính xác đây là khu vực cực kỳ phức tạp, tôi khuyên bạn nên tìm hiểu một số khái niệm phát triển trình điều khiển cơ bản và viết một số không trình điều khiển hệ thống tệp trước khi bắt đầu phát triển trình điều khiển hệ thống tệp.
Nếu bạn làm điều này để sử dụng thương mại và không cho mục đích học tập tôi sẽ đề nghị gia công phần mềm này work.This sẽ là cách hiệu quả nhất chi phí để đi.
cuốn sách này: http://www.amazon.com/Windows-2000-Device-Driver-Book/dp/0130204315/ref=sr_1_1?ie=UTF8&s=books&qid=1246856381&sr=8-1
hoặc bất kỳ cuốn sách mới hơn, bạn có thể tìm thấy bởi một nghệ thuật Baker. Tôi đọc cuốn Sổ tay lái xe NT của ông khoảng 10 năm trước, và cuối cùng nó đã làm mọi thứ rõ ràng.
BTW, sách từ 10 năm trước trở lên/ít hơn vẫn hợp lệ. Bạn không thể sử dụng các ví dụ, nhưng mô hình cơ bản không thay đổi - chỉ trở nên phức tạp hơn trong thời trang M $ điển hình.Các công cụ IRP là tất cả vẫn còn hợp lệ.
Các công cụ OSR là tốt - nhưng đắt tiền ... Tôi nghĩ rằng đối với một sự hiểu biết đầy đủ về thiết kế toàn bộ Baker không thể bị đánh bại. Ngoài ra, bất cứ ai đọc điều này chỉ cố gắng tìm hiểu trình điều khiển Windows - tôi sẽ tránh những thứ NTFS ... siêu phức tạp của nó, và không có gì để làm với những gì bạn cần để thực hiện một trình điều khiển USB đơn giản, hoặc thậm chí là một thiết bị DMA.
Để thêm một số sử dụng chế độ hệ thống tập tin tùy chọn phát triển tài xế:
- Dokan - mã nguồn mở, với giao diện cho C, .NET, Java, Ruby, FUSE.
- CBFS (Hệ thống tệp gọi lại) - thương mại, có tài liệu tốt.
Các giải pháp này hoạt động như FUSE (Hệ thống tệp trong phần mềm Chế độ người dùng dành cho Linux). Họ làm tất cả các công việc phức tạp trong hạt nhân và vượt qua yêu cầu thích nghi với bạn ứng dụng chế độ người dùng.
Dokan thiếu một số tính năng như phiên bản hiện tại, nhưng tôi nghĩ rằng việc đóng góp vào nó dễ dàng hơn và thêm các tính năng bạn cần để làm cho trình điều khiển hệ thống tập tin không bị xước.
Dokan cũng là một ví dụ điển hình về mã trình điều khiển chế độ lõi.
- 1. Các nguồn lực tốt nhất để bắt đầu với phát triển plugin Eclipse là gì?
- 2. Bắt đầu phát triển trình điều khiển
- 3. Một số nguồn lực tốt để bắt đầu lập trình COBOL là gì?
- 4. Hệ thống xếp hàng - cách tốt nhất để bắt đầu nhiều công nhân là gì?
- 5. Trình điều khiển hệ thống tệp người dùng Android trên thiết bị không bắt nguồn từ?
- 6. Hệ thống kiểm soát mã nguồn trong phát triển web
- 7. Mới đối với nhân Linux/Phát triển trình điều khiển
- 8. Phát triển trình điều khiển C#?
- 9. Các công cụ mã nguồn mở tốt nhất để phát triển các ứng dụng Flash là gì? Những nơi tốt nhất để bắt đầu học là gì?
- 10. Hệ điều hành tốt nhất cho nhà phát triển Microsoft là gì?
- 11. Phát triển "Hệ thống tệp" cho linux, mac, windows
- 12. Phát triển trình điều khiển máy Mac
- 13. Hệ thống tập tin đơn giản
- 14. Hệ thống tập tin tốt cho ổ đĩa NAND được nhúng là gì?
- 15. Bắt đầu với sự phát triển Android
- 16. Các nguồn lực tốt nhất để học Ant là gì?
- 17. Hệ thống tập tin Linux tốt nhất cho MySQL (InnoDB) là gì?
- 18. Hệ điều hành nào là tốt nhất cho phát triển PHP hoặc Phát triển nói chung?
- 19. Bạn muốn bắt đầu với phát triển Windows Phone 7
- 20. Bắt đầu với phát triển Mac
- 21. Điều gì có thể khiến các cuộc gọi hệ thống Perl bắt đầu thất bại?
- 22. Bắt đầu phát triển VSTO
- 23. học lập trình trình điều khiển Windows
- 24. Trên hệ thống/hệ thống tập tin nào là os.open() nguyên tử?
- 25. Sự khác nhau giữa trình điều khiển WDM, trình điều khiển KMDF và trình điều khiển UMDF là gì?
- 26. Cách tốt nhất để bắt đầu với OSGI là gì?
- 27. Gettext không có hệ thống tập tin
- 28. Hướng dẫn tốt để bắt đầu phát triển Palm WebOS?
- 29. Phát triển một hệ điều hành
- 30. Hệ thống tập tin giả trên * nix