Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* fillmem.c
- * pack system memory with random numbers, then sleep
- * for memory manager development and testing
- */
- #include <stdlib.h>
- #include <unistd.h>
- #include <stdio.h>
- #include <limits.h>
- int main(int argc, char *argv[])
- {
- int *data;
- int megs_to_fill = 512;
- long allocs;
- int sleeptime = 300;
- int c, tmp, i;
- int randomized;
- while ((c = getopt(argc, argv, "m:s:")) != -1){
- switch(c){
- case 'm':
- tmp = atoi(optarg);
- if (0 < tmp && tmp < 1025){
- megs_to_fill = tmp;
- }
- break;
- case 's':
- tmp = atoi(optarg);
- if (0 < tmp && tmp < 901){
- sleeptime = tmp;
- }
- break;
- default:
- break;
- }
- }
- printf("Megs_to_fill: %d Sleeptime: %d\n", megs_to_fill, sleeptime);
- allocs = 256 * 1024 * megs_to_fill;
- data = malloc (allocs * sizeof(int));
- if (data == NULL){
- printf("Not enough memory\n");
- return -1;
- }
- for (i = 0; i < allocs; i++){
- randomized = random() % INT_MAX;
- // printf("Filling data location %d with %d\n", i, randomized);
- data[i] = randomized;
- }
- printf("%dM filled, sleeping for %dsec\n", megs_to_fill, sleeptime);
- sleep(sleeptime);
- free(data);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement