> (1) There's routine during resume that copies pages to their old > locations. If you (would want to) have different kernel during resume, > how do you guarantee that that "kernel being resumed" does not use > memory ocupied by copying routine?
By having the copy routine sit elsewhere. You can have the copy routine be in a known location of the kernel beeing resumed (that is it uses its own copy routine) that is aligned on a page boundary and knows how to copy itself. Fairly trivial. > (2) Plus number of problems with devices grows with number of versions > squared. To guarantee it works properly you'd have to test all > combinations of "suspend kernel" and "resume kernel". Why ? You aren't passing any device/driver information from the boot kernel and the resumed one... do you ? > [(1) Could be solved by reserving 4KB somewhere for copy routine, and > making sure copy routine is never bigger than 4KB etc. But I'd like to > keep it simple and really don't want to deal with (2).] Then you don't wnat to do things properly... Ben.

