1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-14 08:54:58 +00:00
serenity/Base/usr/share/man/man1/allocate.md
Liav A b74cb569ec Utilities/allocate: Modernize the code a bit
Use LibCore ArgsParser to parse the parameters instead of using the raw
strings from the argv (Main::Arguments) array.

Also, use indicative names for variables in the code so the utility code
is more understandable.
2023-07-05 08:34:51 +02:00

1.8 KiB

Name

allocate - allocate memory

Synopsis

$ allocate [--unit B/KiB/MiB/GiB] [--sleep-time N] [number]

Description

allocate allocates a specific amount of virtual memory. If nothing is specified then it will allocate 100 bytes of memory. If number is specified without unit, it will default to number of bytes. It also writes to each allocated page and then sleeps for N seconds (by default 10). It is primarily used to test the kernel's memory management capabilities.

Options

  • -u, --size-unit: Allocation's Size Unit (Base 2 units - B, KiB, MiB or GiB)
  • -n, --sleep-time: Number of seconds to sleep before freeing memory

Examples

$ allocate 500
allocating memory (500 bytes)...
done in 0ms
writing one byte to each page of allocated memory...
done in 0ms
sleeping for 10 seconds...
0
1
2
3
4
5
6
7
8
9
done.
freeing memory...
done in 0ms

$ allocate 500 -u KiB
allocating memory (512000 bytes)...
done in 0ms
writing one byte to each page of allocated memory...
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
done in 4ms
sleeping for 10 seconds...
0
1
2
3
4
5
6
7
8
9
done.
freeing memory...
done in 0ms

$ allocate -u KiB -n 2 500
allocating memory (512000 bytes)...
done in 0ms
writing one byte to each page of allocated memory...
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
done in 0ms
sleeping for 2 seconds...
0
1
done.
freeing memory...
done in 0ms