"Data Fork"/"Alternate Data Streams"

This is a discussion on "Data Fork"/"Alternate Data Streams" within the Tech Board forums, part of the Community Boards category; Does anyone use "user space" tools to do anything with "ADS"? The only examples I can think of are a ...

  1. #1
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    4,246

    "Data Fork"/"Alternate Data Streams"

    Does anyone use "user space" tools to do anything with "ADS"?

    The only examples I can think of are a security risk, pointless (similar to badly implemented ID3 tagging), or prone to data loss.

    I'm working on some file system stuff and found myself wondering about "ADS" in the wild.

    Soma

  2. #2
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Portugal
    Posts
    7,460
    For a short time I've considered the possibility of using it as an alternative means for code documentation. I was at the time exploring possible ways to separate documentation from code. I'm still not satisfied with today's practice of inserting documentation into the code. But I never explored this much beyond simply thinking about it.

    It's however a project I have in mind for sometime in the near|far future. A source documentation system that does not rely on spamming our sources with alien tags. This way one can keep their sources clean and readable without being forced to branch their project in revision control. But admittedly, ADS is not a possibility for storage.

    I've been gaining an interest in flex and bison and plan to start studying these two sometime in the near future. They may be part of the solution.
    The programmer’s wife tells him: “Run to the store and pick up a loaf of bread. If they have eggs, get a dozen.”
    The programmer comes home with 12 loaves of bread.


    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  3. #3
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    4,246
    [Update]
    An associate sent me the documentation for a file system that uses "ADS" as an area for version patching, "COW" optimizations, and a few "NFS" permissions.

    The administrators are required to format the system in such a way as to disable this option.

    The drivers allow the "ADS" area to expand on demand by a constant factor as a fake performance measure, but the "user space" tools don't understand the format of the "ADS" area; the tools report incorrect file size, can't reclaim space by defragmenting the "ADS" variables, and a "copy(1)-rename(1)-copy(2)-rename(2)-delete(1)" leaves duplicate "ADS" variables for the relevant file(original/copy(1/2)).
    [/Update]

    I've been gaining an interest in flex and bison and plan to start studying these two sometime in the near future. They may be part of the solution.
    NO! Such a "smart comment" feature would require a differencing engine smart enough to reconstruct the original from the updated file.

    "Flex and "Bison" are part of the problem. You do not want to try to parse C++ with a "LALR" parser. You'll have to do so much by hand (either on the grammar side or with the generated source) that you'll probably wish you had just wrote it by hand from scratch.

    Granted, "Bison" has some support for "GLR" parsers, but the last I poked around the support was lousy. If it has improved enough you may do okay, but I'd say you are better off researching other tools from the start.

    Soma

  4. #4
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Portugal
    Posts
    7,460
    a differencing engine smart enough to reconstruct the original from the updated file
    Modern source code documentation engines only work on demand anyways and reconstruct from scratch (to my knowledge). I don't plan to deviate from that. I just want the tags and their contents out of my source files.

    Anyways, I won't take over the thread anymore. Just that for a little while I actually thought of using ADS
    The programmer’s wife tells him: “Run to the store and pick up a loaf of bread. If they have eggs, get a dozen.”
    The programmer comes home with 12 loaves of bread.


    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Need help in C programming (too lazy)
    By cwillygs in forum C Programming
    Replies: 12
    Last Post: 04-20-2010, 12:23 AM
  2. Understanding the Linker Map File
    By Hops in forum C Programming
    Replies: 0
    Last Post: 01-14-2010, 04:40 PM
  3. xor linked list
    By adramalech in forum C Programming
    Replies: 23
    Last Post: 10-14-2008, 10:13 AM
  4. Bitmasking Problem
    By mike_g in forum C++ Programming
    Replies: 13
    Last Post: 11-07-2007, 11:24 PM
  5. Program Crashing
    By Pressure in forum C Programming
    Replies: 3
    Last Post: 04-18-2005, 10:28 PM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21