I have two large (4GB) NANDs in my system and I want to try implementing a periodic checkpoint mechanism to help speed up boot. Given the heavy amount of IO and the amount of state the checkpoint snapshots for these NANDS I cannot guarantee I can get a clean unmount (more like I can guarantee I will get an unclean shutdown).

 

My current thought is to add a kernel thread that will checkpoint every 30 seconds to 1 minute. Each time I “auto” checkpoint I would remove the older checkpoint once the new one is written. Of course given the timeing of shutdown can’t be guaranteed this means I need to handle cleaning up that old checkpoint a boot as well in case it did not get erased. I have this much working and it improves boot time but of course there are issues.

 

 The part I am missing and am unsure the best way to implement is the scan that I need to do for any changes after my checkpoint. Currently any modifications after my auto checkpoint are lost and this can cause corruption of existing data etc. Any ideas on the best way to do this? Am I completely going down the wrong path here?

 

Regards,

 

JG

 

 

JOSH GELINSKE
FIRMWARE ENGINEERING MANAGER

Appareo Systems, LLC
1810 NDSU Research Circle N
Fargo, ND 58102
P: (701) 356-2200 Ext 251
F: (701) 356-3157
http://www.appareo.com
mailto:jgelinske@appareo.com


{*}

NOTICE: This message (including attachments) is covered by the Electronic Communication Privacy Act, 18 U.S.C. sections 2510-2521, is CONFIDENTIAL and may also be protected by ATTORNEY-CLIENT OR OTHER PRIVILEGE. If you believe that it has been sent to you in error, do not read it. If you are not the intended recipient, you are hereby notified that any retention, dissemination, distribution, or copying of this communication is strictly prohibited. Please reply to the sender that you have received the message in error and then delete it.



{-}