version 2.2, 2001-08-21

Summary

grabmem is a utility that allocates a chunk of memory, then immediately frees it and exits. That is its purpose in life; that is all that it does, and it does it reasonably well.

Rationale

"But why?", you ask. Well, two main reasons:

To solve system problems

To cause system problems

Briefly, the kinds of system problems that may be solved are ones related to resource starvation, that resource being memory. Grabbing and freeing a whole lot of it will make it available for whatever programs start running directly after.

The kinds of system problems that may be caused are also those related to the starvation of memory, as grabmem may be instructed to keep the memory allocated and never exit, and even exercise that memory so that it will not be swapped out. By doing this quickly, grabmem can make even a UNIX machine painfully unresponsive. Remember, that if you do this to someone else's machine, you may cause discomfort to other users, and they may discomfit you.

grabmem is also useful for testing, eg. simulating a low-memory configuration or testing a system's sustained memory bandwidth, although substantially better test suites and methods are available.

Remuneration

I don't need money. I didn't write this program to get rich from it. I wrote it for myself, and decided that other people may find it useful. If you find it useful, please do not attempt to pay me. Send an email instead. Include a photo of something in your home town if it pleases you. Berate me for any bugs you find. Request features. Submit patches. Propose novel theories of physics. Look up at the sky. Smile at pretty strangers in the street. Go home early. Live. And know that your true friends are there for you, despite the fact that you spend too much time reading documentation.

License

This program is free software, so you get the source code and can do just about anything with it, short of limiting other people's rights to the code. You can even sell it and incorporate it into your own programs if you wish; asx long as you abide by the terms set out in the LICENSE document, it's OK.