Exmem - page 3 - General Discussion and Assistance - CHDK Forum

Exmem

  • 26 Replies
  • 8679 Views
*

Offline srsa_4c

  • ******
  • 4451
Re: Exmem
« Reply #20 on: 10 / May / 2020, 13:02:26 »
Advertisements
I checked in the modules.
I tested a few more cards and one of them turned out to be horribly slow in the restore phase (a C4 8GB Toshiba). That card performs according to its specs when benchmarking, but is really slow when small files are written on it (restoration takes several minutes). I also checked without the additional crc verification (which reads files back), still slow.

*

Offline reyalp

  • ******
  • 14125
Re: Exmem
« Reply #21 on: 10 / May / 2020, 16:37:11 »
I tested a few more cards and one of them turned out to be horribly slow in the restore phase (a C4 8GB Toshiba). That card performs according to its specs when benchmarking, but is really slow when small files are written on it (restoration takes several minutes).
Not too surprising that lots of small files could be slow. Did you use regular or low level format?
You could check if uploading a full build with chdkptp is similarly slow to see if it's somehow unique to the restore code. (unzip a full build into a directory, then mup dir A/)

FWIW, I didn't time but speeds seemed reasonable on all the cards I tried.
Don't forget what the H stands for.

*

Offline srsa_4c

  • ******
  • 4451
Re: Exmem
« Reply #22 on: 10 / May / 2020, 17:24:56 »
Did you use regular or low level format?
Tried both, no difference. Also tried different DIGIC generations (II-6) and found no difference in performance. Upload through chdkptp is also slow.
I suspect that short files plus FAT updates kill performance on these unfortunate cards.
Fortunately, users with such cards will at least see the progress on screen and will probably not resort to shut down the camera.

*

Offline reyalp

  • ******
  • 14125
Re: Exmem
« Reply #23 on: 10 / May / 2020, 18:37:34 »
I suspect that short files plus FAT updates kill performance on these unfortunate cards.
Fortunately, users with such cards will at least see the progress on screen and will probably not resort to shut down the camera.
Agreed.

One other note:  exmem_ualloc and exmem_ufree aren't found on the Digic 7 EOS M cameras (m5, m6, m100). They are found on g7x2

This doesn't matter, I just happened to notice when rebuilding my finsig_thumb2 test firmwares.
Don't forget what the H stands for.

*

Offline srsa_4c

  • ******
  • 4451
Re: Exmem
« Reply #24 on: 11 / May / 2020, 15:52:48 »
One other note:  exmem_ualloc and exmem_ufree aren't found on the Digic 7 EOS M cameras (m5, m6, m100). They are found on g7x2

This doesn't matter, I just happened to notice when rebuilding my finsig_thumb2 test firmwares.
The exmem allocation related event procedures have been removed from the latest PowerShot firmware cameras. The firmware functions are still there, but identifying them in sigfinder would require some work. So I just went for adding the stubs manually.

*

Offline reyalp

  • ******
  • 14125
Re: Exmem
« Reply #25 on: 28 / December / 2020, 21:50:21 »
An idle thought I had about the file shelter code a while back: It should be possible to make a single-file self installer that has all the files in "file shelter" format built into the binary. Since you can upload files to root of the card with standard PTP operations, the install could be as simple as: Run some app or command on your PC, run firmware update on the cam. The fi2 file extracts the real CHDK install, makes the card bootable, and deletes itself.

However, there's enough caveats that it might just add confusion
1) It can't handle formatting / partitioning, so the FAT32 / exFAT limits would still apply.
2) While you can technically upload with regular PTP, convincing normal software to do it may be difficult or impossible. On windows, requiring the user to install libusb and chkdptp would defeat the purpose.
3) Some cameras crash if A/ is not present in the upload filename, while the rest crash if it is. These aren't currently identified, although the sig finder could probably detect it based on the assert.
Don't forget what the H stands for.

*

Offline srsa_4c

  • ******
  • 4451
Re: Exmem
« Reply #26 on: 29 / December / 2020, 17:01:47 »
It should be possible to make a single-file self installer that has all the files (...) built into the binary.
I was also considering something similar (6-7 years ago), but I wanted the files to be compressed. I shelved the idea when my experiments with a compression library turned out to be not-so-great.
But, all DryOS cameras have decompression code in their firmware, so that could be used once identified.
Quote
1) It can't handle formatting / partitioning, so the FAT32 / exFAT limits would still apply.
Providing no installer for ports with more severe issues (such as missing .fi2) could reduce the number of dissatisfied users.
Quote
2) While you can technically upload with regular PTP, convincing normal software to do it may be difficult or impossible. On windows, requiring the user to install libusb and chkdptp would defeat the purpose.
Is it possible/supported for third parties to use Windows PTP/MTP support DLLs?
Libusb is not a problem on Linux but (its installation is) painful on Windows. Don't know about MacOS.

 

Related Topics


SimplePortal © 2008-2014, SimplePortal