Slashdot Mirror


Next Windows to Have New Filesystem

ocipio writes: "Microsoft is currently planning a new filesystem. Its planned that the new filesystem will make searches easier, faster, and more reliable. Windows will also be less likely to break, and easier to fix when it does. The new technology will cause practically all Microsoft products to be rewritten to take advantage of it. Called Object File System, OFS will be found in the next major Windows release, codenamed Longhorn. More information can be found here at CNET."

31 of 981 comments (clear)

  1. Re:funky fat32 tip! by Ahchay · · Score: 5, Informative

    Check that you're not running an Office documents reindex. This is on by default and _despite_ the name, what it does is search every file your document pool and attempts to add it to the index. Very not recommended.

    Yes, moving the documents _will_ stop this process, but it's not the most practical method is it? Better, by a long, long way, to turn off automatic indexing of office documents.

    Cheers
    Chris

  2. Metadata by Wanker · · Score: 5, Informative
    It looks like Microsoft is trying to implement a standard (for Windows) metadata storage method. The've been trying to do this for years, but backward compatibility issues keep forcing them to abandon it. The Macintosh method seems to work OK, but is extremely limited in scope. It looks like Microsoft is planning something much wider scale. (The analogies to SQL are scary-- I hope they're just analogies and they don't mean to really implement a SQL-compliant database as a filesystem.)

    The GNOME project has an excellent overview of some of the issues with metatata in general.

    Of course, this will mean a whole new found of application incompatibilities on Windows and a whole new round of reverse engineering to determine the filesystem and metadata layout.

  3. Veritas? by lylonius · · Score: 4, Informative

    From what I understand, Veritas essentially rewrote NTFS version 5 (shipped with win2000 and winXP) and
    integrated built-in volume management (dynamic disks) with some abstract layer to maintain the clunky drive letter schemes.

    I dont' really see the reasoning by mentioning that all Windows applications will require a rewrite; they only need to abstract the Win32::File APIs to handle the internal OFS changes... the changes that they document appear to do essentially what the Indexing services do for win2000 and winXP now. I assume it is just extra metadata strings that they associate with each file inode.

    It seems a bit arrogant of MS to think they can improve (or trash and rewrite) what is essentially Veritas' domain, file systems. But then again, we're talking about MS...

  4. This sounds familiar by Cat+Mara · · Score: 3, Informative

    I remember MS talking about this years ago, even before NT came out. They were calling it Cairo back then.

    In the end, IIRC, the UI elements of the Cairo project were recycled into the Windows 95 shell and the Object File System concept disappeared entirely... until now, it seems.

    Is no-one else disturbed at the short memories in the industry? I was at the launch of Visual Studio.NET in Ireland a few weeks back and there was a Microsoft goon waving a Tablet PC around his head like it was some completely new thing. I mentioned the Go Corp/ Windows for Pen Computing FUD from the early '90s to the guys I was there with and was met with blank stares.

  5. Re:They just discovered... by sql*kitten · · Score: 5, Informative

    that they can simply take FFS and Soft Updates and embed it in Windows, and call it OFS.

    NTFS has features like ACLs, streams, etc that aren't in FFS or UFS. Also, support for transparent compression and encryption, also sparse files. There's support for quotas in the filesystem, and it's quite resistant to the effects of fragmentation. It's journalled and supports Unicode. It's actually a very good filesystem, once of the better parts of NT.

  6. Specific tech info by The+Bungi · · Score: 5, Informative
    Unfortunately the article doesn't go into much technical detail. As far as I've heard from some people in "the know" (if you can go that far) is that the new FS will be based on some beefed up version of SQL Server. That much is apparent. However, this version will be enhanced with ORDBMS-like capabilities, which SQL Server doesn't have today. It will also be tied heavily into Active Directory. That much I do know.

    Now for some speculation. The implementation is likely to be based on the same "pluggable" FS driver architecture first introduced in Windows 2000, where the NTFS and FAT32 drivers are just a layer on top of the kernel (you can actually buy a devkit from Microsoft that will allow you to implement, say, ReiserFS for Windows 200). This however poses an interesting question: do you make this newfangled FS to sit on top of tried-and-true NTFS, or do you implement it at the kernel level and make NTFS a layer on top of that? Either way, I think the article is overstating the devastating effect on existing apps. Microsoft is not about to shoot itself in the foot so massively. Whatever this ends up being it's a good bet it will be fully backwards compatible. Kinda like Win32, which can still run 16-bit apps, albeit slower (in 2K and XP). But this will make companies more likely to either port existing code or release newer versions that take advantage of the redesigned FS.

    There's a interesting Register article here

    1. Re:Specific tech info by BakaMark · · Score: 2, Informative
      Out of all of the discussions here, this is what I don't understand the most. Why offer backwards compatibility over say, a conversion utility?

      I guess it is because of the need for services such as networking, etc. There are a lot of organisations out there that have a mixture of computers and networking them all together. The people who have been developing SAMBA over the years have a nice insight into how the low level communications turns into the Appropriate API Calls necessary to access a file, etc.

      It is the retention of that ability that will be important. To some businesses, and some quite large ones at that. Microsoft will shoot themselves in the foot if they cannot provide the means for say a Windows 2000 system, or a Windows XP system to access a Windows "NG" server.

      There is also the need to support the older applications that have not been "ported" to the Windows "NG" platform, that were originally written for the earlier Win32 systems.

      Offering a Conversion utility is possible. However a Conversion utility will only work with files, and not programs. A Conversion utility is made useless in a Networking environment because you have to be able to connect in the first place.

      Writing a completely new File System, or simply hacking new features into an old one, should not get in the way of how people are using computers for perfectly legitimate purposes right now (FileServers, WebServers, et al).

      NTFS has its roots in HPFS, which was originally developed for OS/2. NTFS still uses the same concepts as HPFS for the location of the blockmaps. HPFS/NTFS break the disk up into sections of 16Mb or so. Within each 16Mb section you have the blockmap for that section (allocation table) in the middle, with the data distributed on either side. As opposed to FAT (stands for File Allocation Table) which placed the blockmap at the beginning of the partition, and all of the data following. By laying out the BlockMap in sections in the HPFS way the hard disk head did not have that far to move to update the BlockMap data and then the corresponding sector on the disk. This of meant an improvement in performance.

      The main differences between HPFS and NTFS was the security (Windows NT 3.1), with compression and encryption added later (Windows NT 3.5x and Windows 2000). This was done by adding extra attributes chains into the system. When the NTFS file system driver was developed for Linux, they took the HPFS file system driver and modified it. Of course the Linux NTFS driver ignored the security attributes completely, and this has been known for some time.

      Microsoft originally said the OFS would be part of NT 5, before being renamed to Windows 2000, and the new File System was dropped, probably due to stability, testing and time issues.

      You have your old data on partition A with the NTFS, fine - keep it. Your new operating system runs on partition B with the new MSOFS (MS Object File System) and whatever data it produces it saves to the OFS partition.

      Probably the cost of having to pay for both licences of software. A workable solution for a single person. However, imagine a large company.....

      Why can't these two file systems exist together?

      They will probably keep the NTFS support, much like how they used to keep the FAT support. Well.... for at least the next generation or two.

      OFS is probably derived from a large amount of the lower levels of NTFS/HPFS anyway, with some sort of replacement for the directory structures. Within Windows 2000, you can already assign extra attributes to a file (such as description, etc). Maybe all that is being added is a new form of Index Search, but Microsoft have had that ability since Windows NT 4, with Option Pack 4, with Site Server loaded on top. The Site Server index search query engine (which replaced parts of the Option Pack 4 one) had the ability to filter it's output according to ACLs on the user, therefore if you had access to the file then you saw it in the results.

      However the Micorsoft Web Index search engine relied upon maintaining seperate index files, and it was a real pain when the index file was corrupted, because all of the indexing system stopped. Also the index file tended to grow, and grow and grow, as content was added. If you wanted it to shrink, you had to rebuild it. It is starting to become obvious as to why there was a mention of the SQL engine in this because that has some abilities to maintain it's record reorganisation.

      Meanwhile this new operating system is starting to look like an elephant compared to the mouse that is Windows 2000/XP. Imagine the overheads of writing a file and having the index update in realtime.

  7. Re:Wow! This would mean by killmenow · · Score: 4, Informative

    The Office XP executables are actually quite a bit smaller than the corrisponding exe's for previous versions of office
    Largely due to the migration of much of the needed code into the core OS DLLs. If it's in the OS, the apps are smaller, and they load faster.

    After all, wouldn't you rather allocate the memory once when the DLLs are loaded at startup...or repeatedly every time you run the app?
  8. another thing the mac _did_ very well by Anonymous Coward · · Score: 1, Informative

    Sadly, OS X uses the glorious idea of file extensions. Metadata for storing file information is only just tolerated. So much for progress.

  9. Less likely by PhoenxHwk · · Score: 2, Informative

    I just have this feeling that completely replacing the file system can't make it less likely to break. I've had no trouble with FAT32, and I seriously doubt MS's ability to write a filesystem that has no bugs. But maybe I'm just being pessimistic today.

  10. ReiserFS by Anonymous Coward · · Score: 2, Informative

    I'm surprised nobody's posted this yet, but ReiserFS is working on something similar, described in this whitepaper.

  11. Re:SQL Server _is_ the FS - Re:Metadata by cduffy · · Score: 4, Informative

    The SQL server files have to be on a "file system".. so what's THAT going to be?

    Not if your database server has its own datastore functionality built in -- and many do. You know how Oracle can work with raw partitions directly? Think 'bout that kind of functionality, just done by MS.

  12. Re:OT: Refreshing! by morcego · · Score: 2, Informative

    Lets get things straight here.

    There is no point of comparision between regular filesystens, and journaled ones. It's not a matter of Win x Linux. I would not dare pull the power cord of a ext2 based computer, but I would do it on a ext3 based one. And what is ext3 besides adding journaling capabilities to ext2 ?

    You see, journaling filesystems are all slower than regular ones. Of course, I new developted journaled fs tends to be faster the a filesystem developed 20 years ago (usualy).

    On the other hand, it's still possible to lose data on a journaled fs. Not as likely as in a regular one, so don't trust it too much. It's the worst thing you can do.

    --
    morcego
  13. Re:They just discovered... by aulendil · · Score: 3, Informative

    BeFS...

    BeFS was/is essentialy a database, which in conjunction with features like extended attributes will allow you to store your mail as files in a folder (actually any folder). The same can be done w/ mp3:s where you can store the ID3 tag as file attributes.

    All this makes for lightning fast search of mail, mp3:s etc because it's all in the FS, there is no need for looking at the actually contents of a file.

    So now, do not say a database as a file system will not be to any use for the consumer...

    And, oh, ReiserFS seems to be heading this way too...

  14. Re:Ill debunk that myth by cduffy · · Score: 5, Informative

    The extension, like the rest of the filename, is metadata. The output of a pipe or socket, in case you haven't noticed, doesn't include that metadata, but most apps getting their data piped in manage without it. For those that can't, most transport mechanisms move that metadata with the file, and so things work all right. If transport mechanisms need to be upgraded to include metadata... okay, we can do that. It's why most good standards are extensible.

    The problem is that it's inflexible, and individual file types include their own formats for additional metadata (like id3 tags). Hate to break it to 'ya, but having a whole bunch of little incompatible metadata formats sucks. It sucks a lot. If I want to write a search tool that can look through files' metadata, I don't want to teach it one format for MP3s, one format for Word documents, one format for Joe's Accounting System datafiles... well, you get the point.

    Files sharing names but with differing metadata are Bad. That you generally aren't allowed to have them is a Good Thing -- if the file is different enough to need different metadata (like foo.txt and foo.rtf), they should have different names (as foo.txt and foo.rtf do, incidentally -- how handy! -- but doing that for *all* metadata is inappropriate).

    You've "debunked" exactly nothing.

  15. Re:DB tech? OO or Relational? by Anonymous Coward · · Score: 1, Informative

    My company currently uses ObjectStore in several applications for its simplicity. With it, we are able to persist our objects in storage quickly and easily. And since the complete object is stored, we can retrieve it on demand without much hassel. On top of all that, 99% of the administration is transparent to the user.

    Relational has its uses, but don't make the blanket statement that OO databases are useless in production environments. Check your facts first.

  16. Re:They just discovered... by Anonymous Coward · · Score: 1, Informative

    Right. This begs the question of why bother ?

    actually, it doesnt beg the question
  17. Re:Predictions by bluGill · · Score: 4, Informative

    No, NTFS was not a rip-off of OS/2's HPFS. It was an update. Microsoft wrote HPFS (and did a good job), and updated it to NTFS. IIRC most of the updates just made it incompatable with HPFS, but there were probably one or two things done better in their defense.

  18. Re:but will it have symbolic links? by The+Bungi · · Score: 2, Informative
    NTFS 5 has symbolic links. They're called "hard links", but they work the same.

    It also has mount points as well as reparse points.

    Very few people actually use them, but that doesn't mean they're not there.

  19. Re:Searching by content by Satai · · Score: 3, Informative

    Also, say what you want about DOC/PDF, but they have supports for these new and fancy things called fonts and something called layout, which makes them slightly more useful for serious stuff.

    As do TeX, LaTeX and various other formats that are stored in plain text.

  20. Clearing up misconceptions by Salamander · · Score: 5, Informative

    A lot of people seem to've totally missed the point of what would be different about a database-oriented filesystem. File extensions? Not bloody well relevant! Let's consider the issue of searching. A database-oriented filesystem might allow you to create directories that are basically "views" of your filesystem, perhaps including all files that meet certain name, attribute or content criteria (like Evolution's vFolders but available to any app). These views would be up-to-the-instant accurate at all times, with no dead links and no problem with apps replacing links with actual files instead of updating the file that the link pointed to. Filesystems could also benefit from other things like referential-integrity checks, triggers, and cross-file transactional behavior. In fact, there has been a lot of work in the kernel-hacker community to figure out how just that last feature could be added to Linux filesystems. Basing a filesystem on a database also allows you to leverage all of the tools (e.g. efficient snapshots and replication) that have been developed for the database. There's a lot more here than just journaling and BeOS-style metadata.

    It's not that I think basing a filesystem on a database is a great idea. For one thing, it's a pretty good bet that performance is going to suck because of all the extra DB-related overhead. Administration might become more of a PITA too. I'm just trying to explain that the idea of a database-oriented filesystem has much broader implications than the trivial crap (much of which is relevant to neither filesystems nor databases) that people seem to be focusing on in this thread so far.

    --
    Slashdot - News for Herds. Stuff that Splatters.
  21. Re:You realize why they are doing this...right? by Anonymous Coward · · Score: 1, Informative

    This is really quite a scary development. I used to be an Oracle/ MS SQL Server DBA. Doing this is a (in some respects) brilliant tactical move for MS, but a disaster for users potentially. It could also be very dangerous. Adding database technology to the filesystem in the OS gives them a lot of power over your computer:

    - makes it easier to kill off oracle
    (I bet the real reason they stopped doing this was that the DOJ would have viewed this as anticompetitive behavior during the MS investigations). Why buy oracle when you get a MS database for free?

    - makes it really easy to spy on the users of the OS. Database triggers and stored procedures
    could be written so that every time you save an MP3 on your hard drive, it checks to see if it is copyrighted material and if so sends the info to the RIAA (for example). You will not even know these triggers run.

    This is no worse than having some spy softwarein existing FS related apis, but with a SQL database in the back, the quality of information would be much better, and the risk is much higher, especially if software is allowed to install their own triggers into this filesystem. Imagine the havoc then. Now imagine tying that fuctionality into IE so that such triggers and such can get installed remotely over the web without your consent. Imagine the viruses you can get then. And good luck at figuring out what is there - it will be impossible. If you thought the windows registry was hard to manage, well, this will be an order of magnitude worse.

    I am not sure if I would want this technology built into my OS. It is too dangerous if it is not implemented well, and I don't trust MS enough to believe that they (or someone else if others can put triggers into your os) will not attempt to spy on their users. The upside is that SQL gives really great query capability and maybe searching for files will be 5% easier. Is it worth it?

  22. Microsoft's hidden files: megabytes wasted by October_30th · · Score: 0, Informative
    Microsoft operating systems also slow the system down by only pretending to delete your browsing and e-mail history (what's the purpose of this "feature", by the way? Helping the FBI?!).

    My hidden files summed up to a couple of hundreds of megs of wasted diskspace from my primary disk...

    There are folders on your computer that Microsoft has tried hard to keep secret. Within these folders you will find two major things: Microsoft Internet Explorer has not been clearing your browsing history after you have instructed it to do so, and Microsoft's Outlook Express has not been deleting your e-mail correspondence after you've erased them from your Deleted Items bin. (This also includes all incoming and outgoing file attachments.) And believe me, that's not even the half of it.
    --
    The owls are not what they seem
  23. Re:What's wrong with implementing file(1) internal by swb · · Score: 3, Informative

    It's not perfect, but it relies on magic(5), the hints file with signatures of the various types of files. If you have a small magic(5) file you get stuff wrong, and some signatures need to be made "deeper" or smarter tests built in so that otherwise similar files can be told apart.

    I can see where it would be advisable to have your file manager or desktop GUI be able to update the magic(5) file by being told that one or more of the files are different and that better signatures need to be generated -- eg, find out what's the same about files a and b but isn't the same as c and d.

    Anything is naturally going to have some glitches, and some choices will always need to have an arbitrary definition since the definition of what they are may vary depending on interpretation.

    I just think that the overwhelming majority of files *will* be machine-typable based on contents with hints and that adding a lot of extra data to the filesystem will cripple its speed in the long run.

  24. Re:Predictions by Dr+Caleb · · Score: 3, Informative
    IIRC, Microsoft OS/2 1.2 (yes, there was such a thing!), NT 3.1, NT 3.5, NT 3.51 could all read HPFS partitions. They dropped support in NT 4.0, but if you copied the %winnt%\system32\drivers\HPFS*.dll from an NT 3.51 install and copied them to NT4 same location, then NT4 would read HPFS.

    I think the major change from HPFS to NTFS was that HPFS was only capable of locking down permssions to the directory level, and NTFS could do it to the file level.

    --
    "History doesn't repeat itself, but it does rhyme." Mark Twain
  25. Re:Predictions by Zeinfeld · · Score: 3, Informative
    Think SQL Server 2003 = OFS

    I think you are right, at least in part. I think that the other issue to consider is the close relationship between WNT and VMS.

    The last major release of VMS with a major improvement was back in about '91 when they added in the low level support for transactions in the file system. This was a truly major breakthrough. it is a pity that it came towards the end of the VMS era and as a result was never really exploited by applications.

    The advantage of a transaction based file system is that you can write updates out to disk without having to worry about partial completion. You know that the write will either succeed completely or fail completely. It is not possible for the program to crash in mid write and leave the data in a corrupted state.

    This would be a major advantage for application programmers. You could get ACID properties without having to mess arround changing your data structures to use SQL. You would not need to deal with the twits who think that Entity Relationships are the latest thing in comp sci rather than what they really are, an obsolete throwback from the COBOL era. You would not need UML or any of that rubbish either. And you can hand your Oracle DBA their pink slip.

    All in all a win win situation, unless that is you are an Oracle DBA or hold Oracle stock.

    --
    Looking for an Information Security student project suggestion?
    Try http://dotcrimeManifesto.com/
  26. Re:Extending the Unix doctrin. by nathanh · · Score: 3, Informative
    Everthing is a file, says Unix. But that was 30 years ago. Perhaps its time to extend the unix-doctrin: Everthing is a file and a directory.

    And 30 years ago the bleeding-edge filesystems (non-UNIX) did have metadata and resource forks and other whizbang ideas. Guess what? They sucked. You can't pipe a multistream file. You can't send it over the network. You can't dump it to tape. First you have to convert your whiz-bang metadata enabled file into a "bag of bytes" file. This means you need to manually add an additional "convert to bag of bytes" step before you do anything unusual with a file. UNIX removes the complexity by forcing the applications to save into the "bag of bytes" file format from the start. The metadata is still within the file, but the application put it there, and the application knows how to get it out.

    The UNIX people chose simplicity over complexity. History has shown that if people want metadata then they can implement it inside their applications (ID3 tags, TAR, GZIP headers). This is one of the many reasons why UNIX still survives: it dictates the means to store data, without enforcing a policy about what data is stored. Applications can then grow and evolve to include new-and-unthought-of metadata. This would not be possible if the UNIX filesystem had forced a restricted set of metadata onto everybody from the start.

    People who don't learn history are doomed to repeat it.

  27. Re:Predictions by killmenow · · Score: 3, Informative
    I am familiar with MSDE. I think this, along with the JET engine and the Exchange version of JET is part of why it makes sense for MS to do this. From their perspective, you gotta figure it makes sense to simplify and have one scalable storage solution.

    I think:
    1. enough people who know a thing or two more about this than me are talking about it
    2. now MS is talking about creating an Object File System
    3. and we know SQL Server research has been going into making it handle less structured data more effectively
    I think it all points to credibility. That's not to say there won't be some add-on for additional SQL Server functionality, but I think it's believable that the core functionality of storing and retrieving objects in OFS will come from SQL Server.
  28. Re:Predictions by Refrag · · Score: 5, Informative

    MSDE _is_ SQL Server throttled for = 10 users and without the visual tools.

    --
    I have a website. It's about Macs.
  29. Re:Predictions copy management by Anonymous Coward · · Score: 1, Informative

    Ummmm, it certainly will if you do "xhost +localhost" or whatever.

  30. OT: Re:funky fat32 tip! by Anonymous Coward · · Score: 1, Informative

    Better yet, disable the Active Desktop. (Uncheck "view as web page".) If you just have to have a jpg/gif as a background, convert it to a bitmap and set it up the traditional way.

    When AD is installed, it uses processor power to generate the desktop view (refreshing the screen). When using a bmp the image is cached in video ram and the video card is responsible for refreshing the desktop view. After all, that's what it's made for, but AD basically runs your desktop in Internet Explorer in a hidden window. At least that's what I'm guessing.

    If you don't understand what I just said, you are too stupid to use a computer. Buy a pencil.