storage revision 1.6
11.6Scegger$NetBSD: storage,v 1.6 2009/10/02 07:17:16 cegger Exp $ 21.1Sagc 31.1SagcNetBSD Storage Roadmap 41.1Sagc====================== 51.1Sagc 61.1SagcThis is a small roadmap document, and deals with the storage and file 71.1Sagcsystems side of the operating system. 81.1Sagc 91.3SagcThe following elements and projects are pencilled in for 6.0, but 101.1Sagcplease do not rely on them being there. 111.1Sagc 121.5Sagc1. devfs 131.5Sagc2. logical volume management 141.5Sagc3. a native port of Sun's ZFS 151.5Sagc4. ReFUSE-lowlevel 161.5Sagc5. web-based management tools for storage subsystems 171.5Sagc6. support for flash devices - NAND and MMC/SD 181.5Sagc7. rump extensions 191.5Sagc8. virtualised disks in userland 201.5Sagc9. in-kernel iSCSI initiator 211.5Sagc 221.5SagcWe currently expect to branch 6.0 in the March 2010 timeframe, with a view 231.5Sagcto a 6.0 release later in 2010. 241.1Sagc 251.4SagcWe'll continue to update this roadmap as features and dates get firmed up. 261.1Sagc 271.1SagcSome explanations 281.1Sagc================= 291.1Sagc 301.5Sagc1. devfs 311.1Sagc--------- 321.1Sagc 331.1SagcDevfs will allow device special files (the files used to access 341.1Sagcdevices) to be created dynamically as and when they are attached to 351.1Sagcthe system. This will greatly reduce the number of files in a /dev 361.1Sagcdirectory and removes the need to run the MAKEDEV script when support 371.1Sagcfor new devices is added to the NetBSD kernel. NetBSD's devfs 381.1Sagcimplementation will also allow multiple instances of the file system 391.1Sagcto be mounted simultaneously, which is very useful for chroot jails. 401.5SagcPlease contact core@ if you are interested in devfs development. 411.1Sagc 421.1SagcResponsible: mjf 431.1Sagc 441.5Sagc2. Logical Volume Management 451.5Sagc---------------------------- 461.1Sagc 471.1SagcBased on the Linux lvm2 and devmapper software, with a new kernel component 481.3Sagcfor NetBSD written. Merged in 5.99.5 sources, will be in 6.0. 491.1Sagc 501.1SagcResponsible: haad, martin 511.1Sagc 521.5Sagc3. Native port of Sun's ZFS 531.5Sagc--------------------------- 541.5Sagc 551.5SagcTwo Summer of Code projects have been held, concentrating on the 561.5Sagcprovision of ZFS support for NetBSD. Mostly completed by haad, and 571.5Sagcbuilding on ver's work, this is the port of Sun's ZFS, with 581.5Sagcmodifications to make it compile on NetBSD by ad@, and based on the 591.5SagcSun code for the block layer. Discussions are still taking place to 601.5Sagcget the design right for support for the openat(2) system call family, 611.5Sagcand the correct architecture for reclaiming vnodes. 621.1Sagc 631.5SagcThe ZFS source code has been committed to the repository. 641.1Sagc 651.5SagcResponsible: haad, ad, ver 661.1Sagc 671.5Sagc4. ReFUSE-lowlevel 681.5Sagc------------------ 691.1Sagc 701.1SagcFUSE has two interfaces, the normal high-level one, and a lower-level 711.1Sagcinterface which is closer to the way standard file systems operate. This 721.1Sagcadds the low-level functionality in the same way that ReFUSE adds the 731.1Sagchigh-level functionality 741.1Sagc 751.1SagcResponsible: pooka, agc 761.1Sagc 771.5Sagc5. Web-based Management tools for Storage Subsystems 781.5Sagc---------------------------------------------------- 791.1Sagc 801.1SagcStandard tools for managing the storage subsystems that NetBSD provides, 811.1Sagcusing a standard web-server as the basic user interface on the storage 821.1Sagcdevice, allowing remote management by a standard web browser. 831.1Sagc 841.1SagcResponsible: agc 851.1Sagc 861.5Sagc6. Support for flash devices - NAND and MMC/SD 871.5Sagc---------------------------------------------- 881.5Sagc 891.5SagcThe NetBSD Foundation is interested in having a file system which is 901.5Sagcoptimised to work with today's flash devices, including SSDs both with 911.5Sagcwear-levelling functionality and without, as well as support for NAND, 921.5Sagcand MMC/SD devices. Please get in touch with core@ if you're interested 931.5Sagcin helping out with this area of development. 941.5Sagc 951.5SagcResponsible: TBD 961.5Sagc 971.5Sagc7. RUMP Extensions 981.5Sagc------------------ 991.5Sagc 1001.5SagcRump support has been in NetBSD for 2 releases now, and continues to be 1011.5Sagcdeveloped actively. Recent additions have included cgd support, and smbfs 1021.5Sagcclient support. 1031.5Sagc 1041.5SagcResponsible: pooka 1051.5Sagc 1061.5Sagc8. Virtualised disks in Userland 1071.5Sagc-------------------------------- 1081.5Sagc 1091.5SagcFor better support of virtualization, a library which provides a consistent 1101.5Sagcview of virtualized disk images has been developed by jmcneill. 1111.5Sagc 1121.5SagcResponsible: jmcneill 1131.5Sagc 1141.5Sagc9. In-kernel iSCSI Initiator 1151.5Sagc---------------------------- 1161.5Sagc 1171.6SceggerNetBSD has had an userland implementation of an iSCSI initiator since 1181.5SagcNetBSD 4.99.35, based on ReFUSE. There is a possibility that an 1191.5Sagcin-kernel initiator may be available - please contact core if you are 1201.5Sagcinterested in this functionality. 1211.5Sagc 1221.5SagcResponsible: core 1231.5Sagc 1241.1Sagc 1251.1SagcAlistair Crooks 1261.5SagcTue 15 Sep 2009 08:44:14 PDT 127