storage revision 1.1.2.2 1 1.1.2.2 matt $NetBSD: storage,v 1.1.2.2 2008/03/23 00:23:07 matt Exp $
2 1.1.2.2 matt
3 1.1.2.2 matt NetBSD Storage Roadmap
4 1.1.2.2 matt ======================
5 1.1.2.2 matt
6 1.1.2.2 matt This is a small roadmap document, and deals with the storage and file
7 1.1.2.2 matt systems side of the operating system.
8 1.1.2.2 matt
9 1.1.2.2 matt NetBSD 5.0 will ship with the following storage elements in place:
10 1.1.2.2 matt
11 1.1.2.2 matt 1. puffs/putter
12 1.1.2.2 matt 2. ReFUSE
13 1.1.2.2 matt 3. rump
14 1.1.2.2 matt 4. RAIDframe
15 1.1.2.2 matt 5. iSCSI target
16 1.1.2.2 matt 6. iSCSI initiator
17 1.1.2.2 matt 7. cgd
18 1.1.2.2 matt 8. fss
19 1.1.2.2 matt
20 1.1.2.2 matt The following elements and projects are pencilled in for 5.0, but
21 1.1.2.2 matt please do not rely on them being there.
22 1.1.2.2 matt
23 1.1.2.2 matt 9. pud
24 1.1.2.2 matt 10. devfs
25 1.1.2.2 matt 11. journalling functionality for ffs
26 1.1.2.2 matt 12. logical volume management
27 1.1.2.2 matt 13. a native port of Sun's ZFS
28 1.1.2.2 matt 14. ReFUSE-lowlevel
29 1.1.2.2 matt 15. web-based management tools for storage subsystems
30 1.1.2.2 matt 16. support for flash devices - NAND and MMC/SD
31 1.1.2.2 matt 17. read/write support for UDF file systems
32 1.1.2.2 matt
33 1.1.2.2 matt We are working on the following elements, and expect them to be in 6.0:
34 1.1.2.2 matt
35 1.1.2.2 matt 18. OSD (object storage device)
36 1.1.2.2 matt 19. basic FCIP support
37 1.1.2.2 matt
38 1.1.2.2 matt We expect to branch for the 5.0 release in April or May 2008, which would
39 1.1.2.2 matt put a NetBSD 5.0 Release date in Q4 2008. An annual release cycle would
40 1.1.2.2 matt thus mean that 6.0 would be branched in April or May 2009.
41 1.1.2.2 matt
42 1.1.2.2 matt Pictorially, this looks like:
43 1.1.2.2 matt
44 1.1.2.2 matt 2008 2009
45 1.1.2.2 matt Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug
46 1.1.2.2 matt |===|===|===|===|===|===|===|===|===|===|===|===|===|===|===|===|===|===|===|
47 1.1.2.2 matt
48 1.1.2.2 matt | ------- 5.0 --------- | | ------- 6.0
49 1.1.2.2 matt branch release branch
50 1.1.2.2 matt
51 1.1.2.2 matt 1-8 11,16 9,10,12,13,14,17 15 18 19
52 1.1.2.2 matt
53 1.1.2.2 matt We'll continue to update this roadmap as features and dates get firmed up.
54 1.1.2.2 matt
55 1.1.2.2 matt
56 1.1.2.2 matt Some explanations
57 1.1.2.2 matt =================
58 1.1.2.2 matt
59 1.1.2.2 matt 10. devfs
60 1.1.2.2 matt ---------
61 1.1.2.2 matt
62 1.1.2.2 matt Devfs will allow device special files (the files used to access
63 1.1.2.2 matt devices) to be created dynamically as and when they are attached to
64 1.1.2.2 matt the system. This will greatly reduce the number of files in a /dev
65 1.1.2.2 matt directory and removes the need to run the MAKEDEV script when support
66 1.1.2.2 matt for new devices is added to the NetBSD kernel. NetBSD's devfs
67 1.1.2.2 matt implementation will also allow multiple instances of the file system
68 1.1.2.2 matt to be mounted simultaneously, which is very useful for chroot jails.
69 1.1.2.2 matt
70 1.1.2.2 matt Responsible: mjf
71 1.1.2.2 matt
72 1.1.2.2 matt 11. Journalling Functionality for FFS
73 1.1.2.2 matt -------------------------------------
74 1.1.2.2 matt
75 1.1.2.2 matt Contributed by Wasabi Systems, Inc, technical review on tech-kern
76 1.1.2.2 matt in March 2008.
77 1.1.2.2 matt
78 1.1.2.2 matt 12. Logical Volume Management
79 1.1.2.2 matt -----------------------------
80 1.1.2.2 matt
81 1.1.2.2 matt Based on the Linux lvm2 and devmapper software, with a new kernel component
82 1.1.2.2 matt for NetBSD written.
83 1.1.2.2 matt
84 1.1.2.2 matt Responsible: haad, martin
85 1.1.2.2 matt
86 1.1.2.2 matt 13. Native port of Sun's ZFS
87 1.1.2.2 matt ----------------------------
88 1.1.2.2 matt
89 1.1.2.2 matt Mostly completed by ad@, this is the FreeBSD port of Sun's ZFS, with
90 1.1.2.2 matt modifications to make it compile on NetBSD 5.0 by ad@, and based on
91 1.1.2.2 matt the original Sun code for the block layer, rather than the GEOM-based
92 1.1.2.2 matt layer.
93 1.1.2.2 matt
94 1.1.2.2 matt Responsible: oster, agc
95 1.1.2.2 matt
96 1.1.2.2 matt 14. ReFUSE-lowlevel
97 1.1.2.2 matt -------------------
98 1.1.2.2 matt
99 1.1.2.2 matt FUSE has two interfaces, the normal high-level one, and a lower-level
100 1.1.2.2 matt interface which is closer to the way standard file systems operate. This
101 1.1.2.2 matt adds the low-level functionality in the same way that ReFUSE adds the
102 1.1.2.2 matt high-level functionality
103 1.1.2.2 matt
104 1.1.2.2 matt Responsible: pooka, agc
105 1.1.2.2 matt
106 1.1.2.2 matt 15. Web-based Management tools for Storage Subsystems
107 1.1.2.2 matt -----------------------------------------------------
108 1.1.2.2 matt
109 1.1.2.2 matt Standard tools for managing the storage subsystems that NetBSD provides,
110 1.1.2.2 matt using a standard web-server as the basic user interface on the storage
111 1.1.2.2 matt device, allowing remote management by a standard web browser.
112 1.1.2.2 matt
113 1.1.2.2 matt Responsible: agc
114 1.1.2.2 matt
115 1.1.2.2 matt 16. OSD
116 1.1.2.2 matt -------
117 1.1.2.2 matt
118 1.1.2.2 matt Based on the T10 specification, and the Intel reference code. An Object
119 1.1.2.2 matt Storage Device, where some of the functionality of a file system is placed
120 1.1.2.2 matt in the storage device.
121 1.1.2.2 matt
122 1.1.2.2 matt Responsible: agc
123 1.1.2.2 matt
124 1.1.2.2 matt
125 1.1.2.2 matt Alistair Crooks
126 1.1.2.2 matt Sun Mar 2 23:31:03 GMT 2008
127