* Corrected: consistent behavior on the `PHYS_ADDR Out_PhysAddr` out
variable, use MS clean code standard ("always initialize out
variables"). (Thanks for hinting out!)
* Changed kernel boundary check (in Unload) to use the header definition
instead of using an own hardcoded value. (Thanks for hinting out, nicer
this way!)
* Important: goto exit was missing in an error condition in the reverse
query ioctl.
* More Physical Ranges allowed by Winpmem. "300 ought to be enough for
everybody!"
Updated binary to:
1. save function allows to save the actual driver
2. install/uninstall commands allow the driver to be installed and left
in background
* Refactored device io control.
* Added support for detecting a level 5 paging system.
* Made DbgPrints (mostly) toggleable again, except critical ones.
* Made Winpmem rogue PTE TLB-uncached (cache disable bit).
* Improvements on the usermode program bulk reading logic.
* Increased version number to 4.0.1, BETA, for now.
More details about the changes in changelog.md.
To get good quality memory images it is important to acquire the image
as quickly as possible to avoid smear.
The following algorithms are supported
1. None - no compression
2. S2 - this algorithm gains about 50% compression over none but very
little loss of speed. The result is slightly faster than none.
3. Snappy - this is a reasonable trade off getting compression
slightly less than gzip but about twice the time as none.
4. Gzip - This method is very slow and so not recommended but it is
compatible with the traditional gzip tool
Also added an extract command to convert the compressed images to raw
images later.
When CPU scheduler throws the PTE remap thread of the CPU core n, and later resumes execution on core m, than this can cause issues.
Fixed typo in title and added a limitation section.
* Add files via upload
* Delete pci.c
* Delete pci.h
* Delete pte_mmap_windows.c
* Delete pte_mmap_windows.h
* Delete betatest.txt
* Rename CHANGELOG.txt to CHANGELOG.md
* version 3.0.1, sorry for screwing tabs & spaces
* Sorry for screwing the tabs and spaces. Common consent seem to be spaces nowadays, so everything is spaces now. All files end with a line end.
* Important fixing of several logical checks (some of them leading to a sort of overprotection that disabled methods in Winpmem for no reason). More safeguarding against obvious input mistakes (such as handing over 0 addresses) when using ioctl codes programmatically. This was done after it happened to myself a few times when testing.
* More sanity checking when trying to restore the rogue pte page.
* This is almost a total rewrite. My former idea to increase version number to just 2.0.2 is ridiculous. It's 3.0.1 now, and considered an early **alpha** version that might still have bugs. Make no mistake, stability and reliability was significantly increased over the old version.
* update changelog
* update version info
* update version info
* Fix spelling
* bugfixes and large pages for reverse query
* important bugfixes
* large page support added in PTE parsing for reverse query.
* more updates
* minor spelling
* remove duplicate variant2
* Linux x64 Linpmem version, initial
Early version, really please report errors or feature enhancements.
* minor updates
* update readme.md and updates.md
* correct old readme
* Update UPDATES.md
* Minor docs update
* secure boot / signing driver
* Update CHANGELOG.md
* Delete LinPmem directory
Delete Linpmem because it was moved to its own repo (https://github.com/Velocidex/Linpmem).
* Add Linpmem hint.
Add the Linux version hint.
* major code refactoring, design changes, bug fixes, documentation
* added FAST I/O read
* Hyper-V/VSM patch, and better icon
* signed pictures with true zw signature
* forgot a condition in iospace read
* package binaries into zip
* updated comments to match usermode part and undelete old signed drivers
* Corrected/updated comments and adjusted status codes
* add a bug and glitches list to keep track
* Delete OPEN_BUGS_AND_GLITCHES.md
* bug fixes
* Better line indent
* Disapproved but working buffered I/O version.
* increased the version number to reflect possible lack of backward compability
* provide ready-to-use test binaries and instructions for willing beta testers.
* Correction/update of current version information