VideoHelp Forum




+ Reply to Thread
Results 1 to 10 of 10
  1. Member yoda313's Avatar
    Join Date
    Jun 2004
    Location
    The Animus
    Search Comp PM
    I know that old dos had a max of 8 characters and a 3 digit extension. I guess what I want to know is how was it determined to use three letters for the extension? Why not two or four? Is there some computational restriction that made three a logical choice? Or was it as simple as three was easier to make abrreviations for long names???

    I know NT and XP no longer have the 8 character restriction and you see four digit extensions sometimes - mainly .divx (is that really a four digit extension or is it just a fake .avi extension?). What is the difference between dos and NT that allows the filename increase in letter usage from 8 to essentially infintity?? Is it faster processors or more memory? Or did they redesign the code specifically to allow for longer file names??

    I'd be interested in the answers. No real reason but just idle curiousity.
    Donatello - The Shredder? Michelangelo - Maybe all that hardware is for making coleslaw?
    Quote Quote  
  2. Member
    Join Date
    Nov 2002
    Location
    United States
    Search Comp PM
    Neither, actually. I don't have a definite answer, but you have to keep in mind that MS-DOS was essentially a copy of the UNIX system shell, with somewhat renamed commands (out of command.com) and similar file system. Instead of actually allowing you to define a "filetype", the idea of "file extension" was introduced instead, and I guess they felt 2 letters is too limiting.

    Technically the LFN (long file name), introduced with Win95, have taken away the 8.3 limit, but the truth is it's NOT really gone. If you do a DIR you can see that "Program Files" subdir is really PROGRA~1. The OS will generate a 8.3 name for each LFN you use and keep hashing until it generates a unique one. And that's still true today, even on XP.
    Quote Quote  
  3. MS-DOS was a clone of CP/M. In those days computers typically had 16 KB of memory, 180 KB floppy disks, and single digit MHz CPUs. The use of 8.3 filenames was simply a matter of space (on disk and in memory) savings and processing power.
    Quote Quote  
  4. Member
    Join Date
    Aug 2004
    Location
    Western Ma. United States
    Search Comp PM
    Hardware. 3 letters = 24 Bits. 24 Bit registers were very common.
    Programers wrote for the chips available.
    A lot more to it, but best use of hardware and memory.
    Quote Quote  
  5. Member yoda313's Avatar
    Join Date
    Jun 2004
    Location
    The Animus
    Search Comp PM
    Ok so it was a space limitation then.

    Originally Posted by jagabo
    MS-DOS was a clone of CP/M
    What's CP/M?? I thought MS-DOS was its own creation?
    Donatello - The Shredder? Michelangelo - Maybe all that hardware is for making coleslaw?
    Quote Quote  
  6. CP/M was the popular O/S used on 8080 and Z80 CPUs before the IBM PC was introduced.

    http://en.wikipedia.org/wiki/CP/M

    MS-DOS was designed to look and work a lot like CP/M.
    Quote Quote  
  7. Member yoda313's Avatar
    Join Date
    Jun 2004
    Location
    The Animus
    Search Comp PM
    Thanks jagabo.
    Donatello - The Shredder? Michelangelo - Maybe all that hardware is for making coleslaw?
    Quote Quote  
  8. It was 16 bits total including the attribute bits hidden, system, read-only, and archive. Yes, the period counted. IIRC the actual length of the extension was designed for particular extensions like "exe" and "com", with a seperator, (the period) leaving eight characters for the file name.
    Quote Quote  
  9. Member
    Join Date
    Aug 2004
    Location
    Western Ma. United States
    Search Comp PM
    I belive some are confusing Bits with Bytes.
    8 bits = 1 byte

    Following from "Upgrading and Repairing PCs 13th Ed."

    Table 25.6 FAT Directory Format
    Offset Offset Field
    (Hex) (Dec) Length Description Bit Length
    00h 0 8 bytes Filename 8X8= 64
    08h 8 3 bytes File extension 3X8= 24
    0Bh 11 1 byte File attributes 1X8= 8
    0Ch 12 10 bytes Reserved (00h) 10X8= 80
    16h 22 1 word Time of creation
    18h 24 1 word Date of creation
    1Ah 26 1 word Starting cluster
    1Ch 28 1 dword Size in bytes

    Filenames and extensions are left-justified and padded with spaces, (which are represented as ASCII
    32h bytes). In other words, if your filename is “AL”, it is really stored as “AL------”, where the hyphens
    are spaces. The first byte of the filename indicates the file status for that directory entry, shown in
    Quote Quote  
  10. DOS was essentially a copy of the UNIX system
    Nope. The main difference being that in Unix, file name extensions were always optional for executables. This was not the case for CP/M, AppleDOS or early MSDOS flavours.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!