gcore(1)

gcore1

Get core images of running process

Usage

gcore [-f] [-k] [-c core] [executable] pid

Overview

The gcore utility creates a core image of the specified process, suitable for use with gdb(1) (ports/devel/gdb). By default, the core is written to the file “core.<pid>”. The process identifier, pid, must be given on the command line.

The following options are available:

-c

Write the core file to the specified file instead of “core.<pid>”.

-f

Dumps all available segments, excluding only malformed and undumpable segments. Unlike the default invocation, this flag dumps mappings of devices which may invalidate the state of device transactions or trigger other unexpected behavior. As a result, this flag should only be used when the behavior of the application and any devices it has mapped is fully understood and any side effects can be controlled or tolerated.

-k

Use the ptrace(2) PT_COREDUMP kernel facility to write the core dump, instead of reading the process' memory and constructing the dump file in gcore itself. This is faster, and the dump is written by the same kernel code that writes core dumps upon fatal signals.

Files

core.<pid>

the core image

Releases

87 releases since FreeBSD 2.0.5-RELEASE; the text changed 45 times.

  1. 2.0.5–2.1.7.1
  2. 2.2.2
  3. 2.2.5–2.2.9
  4. 3.0–3.4
  5. 3.5–3.5.1
  6. 4.0–4.2
  7. 4.3
  8. 4.4–4.6.2
  9. 4.7–4.11
  10. 5.0–5.2.1
  11. 5.3–6.3
  12. 6.4
  13. 7.0
  14. 7.1
  15. 7.2
  16. 7.3
  17. 7.4
  18. 8.0
  19. 8.1
  20. 8.2
  21. 8.3
  22. 8.4
  23. 9.0
  24. 9.1
  25. 9.2
  26. 9.3
  27. 10.0
  28. 10.1
  29. 10.2
  30. 10.3
  31. 10.4
  32. 11.0
  33. 11.1
  34. 11.2
  35. 11.3
  36. 11.4
  37. 12.0
  38. 12.1
  39. 12.2
  40. 12.3
  41. 12.4
  42. 13.0
  43. 13.1–13.2
  44. 13.3–13.5
  45. 14.0–14.5
  46. 15.0–16.0

-f since FreeBSD 8.2-RELEASE; -k since FreeBSD 13.1-RELEASE.

-s until FreeBSD 11.4-RELEASE.

History

A gcore utility appeared in 4.2BSD.

Bugs

Because of the ptrace(2) usage gcore may not work with processes which are actively being investigated with truss(1) or gdb(1) (ports/devel/gdb). Additionally, interruptable sleeps may exit with EINTR.

The gcore utility is not compatible with the original 4.2BSD version.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.