Menu

#75 Large file support

open
5
2014-02-23
2014-02-21
store
No

Hi,
I was wondering if it is possible to add read/write support for files over 2GB
While I can access files from the native Linux file system the drive size is reported only as 2Gb some of the databases I use are over 3GB and cannot be access from dosemu.

any advice or help would be greatly appreciated.

Discussion

  • Stas Sergeev

    Stas Sergeev - 2014-02-21

    Removed partition size limit: commit e99574ef81dc5
    Enjoy.

     
    • store

      store - 2014-02-21

      Hi,
      thank you very much.
      no i can list files bigger than 2GB but I still cannot copy or write to files bigger than 2Gb.

      any help is again greatly appriciated

       

      Last edit: store 2014-02-21
  • Stas Sergeev

    Stas Sergeev - 2014-02-21
    • status: open --> closed
    • assigned_to: Stas Sergeev
     
  • Stas Sergeev

    Stas Sergeev - 2014-02-21
    • status: closed --> open
     
  • Stas Sergeev

    Stas Sergeev - 2014-02-21

    What error do you get?

     
    • store

      store - 2014-02-21

      when i run in freedos if i type dir i can see the full 3GB of the file but when i for example try to copy that file only 2GB of the file is copied and the copy stops

       
  • Stas Sergeev

    Stas Sergeev - 2014-02-21

    It may be a freedos limitation.
    dosemu should do 4Gb I suppose.
    Could you try win95's DOS-7?

     
  • Stas Sergeev

    Stas Sergeev - 2014-02-21

    Hmm, here:
    http://en.wikipedia.org/wiki/Large_file_support
    it is said that DOS-7 enforces the 2Gb
    limit for compatibility too...
    Puzzled.
    They say it has some new API for 4Gb files.
    I wonder what could it be.
    Maybe if you use an 'xcopy' command from
    DOS-7 (and DOS-7 itself too), it will allow
    you to use 4Gb?

     
  • Bart Oldeman

    Bart Oldeman - 2014-02-21

    Hi Stas,

    first of all your patch has some problems: the spc value is a byte value and can now overflow for large partitions. It should really not be higher than 64; even 128 is too high because DOS programs multiply spcbps=128512=65536 using 16 bit MUL and that overflows.

    To properly report higher values than 2G for partitions DOSEMU would need to hook int21/ax=7303.

    As for the file size - yes DOS has many issues with files > 2G; indeed the DOS program is supposed to open the file using a newer API: int21/AH=6c with BH bit 4 set. Many DOS C programs assume that negative file offsets are not valid. There could indeed also be FreeDOS problems here too.

     
  • Stas Sergeev

    Stas Sergeev - 2014-02-21

    OK, I put a 64 limit instead of 32.
    But I'd like to hear if maybe it works
    fine with DOS-7+xcopy.

    store: please do NOT update from git
    this time (as I returned the limit)
    and do the DOS-7 test if possible.

     
    • store

      store - 2014-02-21

      Hi guys,
      Thank you for everything.
      Stas I'll try it tomorrow morning and get back to you.

       
    • store

      store - 2014-02-21

      Hi guys,
      Thanks for the help.
      Stas I'll try it tomorrow and let you know.

       
    • store

      store - 2014-02-22

      Hi,
      I tried DOS-7+xcopy, it's able to read to read the 3GB file but only writes a 2GB file. once the file reached 2GB xcopy attempts to overwrite the 2.GB file.

       
    • store

      store - 2014-02-22

      Hello again,
      I have now run another test a VMware installed with freedos 1.1 using copy command can copy a 3GB file.
      dosemu running freedos 1.1 will copy only 2GB of the same 3Gb file.
      I hope that helps.

       

      Last edit: store 2014-02-22
  • Bart Oldeman

    Bart Oldeman - 2014-02-23

    Could you try the newest git devel checkout
    86a4eae7d20
    this fixes both free space reporting and issues with read/write > 2G. Please confirm.

     
    • store

      store - 2014-02-23

      Thank you very much guys.

      its now working perfectly in both freedos and dos-7

      amazing support.
      thank you again.

       

Log in to post a comment.

MongoDB Logo MongoDB