Process.h

C header file


title: "Process.h" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["process.h", "c-(programming-language)-headers"] description: "C header file" topic_path: "general/process-h" source: "https://en.wikipedia.org/wiki/Process.h" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary C header file ::

process.h is the C header file which contains function declarations and macros used in working with threads and processes. Most C compilers that target DOS, Windows 3.1x, Win32, OS/2, Novell NetWare or DOS extenders supply this header and the library functions in their C library. Neither the header file nor most of the functions are defined by either the ANSI/ISO C standard or by POSIX.

History

Microsoft's version of the file dates back to at least 1985, according to its copyright statement. An early reference to the file was in a post on the net.micro.pc usenet on Oct-26-1986. The compiler used was Microsoft C compiler version 3.0. The Lattice C compiler version 3.30 (Aug-24-1988) did not have such a header file, but offered similar functions. Borland provided the header in their Turbo C compiler version 2.01. The C Ware-Personal C compiler version 1.2c (June 1989) had only the ANSI headers.

Functions

::data[format=table] | Name||Description||Notes | |---| | [execl, execle, execlp, execlpe](exec-operating-system) | | [execv, execve, execvp, execvpe](exec-operating-system) | | [spawnl, spawnle, spawnlp, spawnlpe](spawn-computing) | | [spawnv, spawnve, spawnvp, spawnvpe](spawn-computing) | | beginthread, beginthreadNT | | [endthread](endthread) | | [getpid](getpid) | | [cexit](cexit) | ::

Constants

::data[format=table] | Name||Description||Notes||OS | |---| | _P_WAIT | | _P_NOWAIT, _P_NOWAITO | | _P_OVERLAY | | _P_DETACH | | _WAIT_CHILD | | _WAIT_GRANDCHILD | ::

Implementations

Given the fact there is no standard on which to base the implementation, the functions declared by process.h differ, depending on the compiler in use. Below is a list of compilers which provide process.h.

  • DJGPP
  • OpenWatcom,
  • Digital Mars
  • MinGW
  • Microsoft Visual C++
  • Borland Turbo C, 2.0 and later
  • Lcc32
  • QNX Neutrino QCC 6.x

Differences

Another aspect that might vary is the combined length of exec* and spawn* parameters.

  • Delorie DJGPP: does not have such a limit.
  • Digital Mars: the maximum is 128 bytes; nothing is stated about the ending '\0' character.
  • Microsoft cl: the argument list for the new process must not exceed 1024 bytes.

References

References

  1. "Copyright 1985–1989, Microsoft Corporation", in [[QuickC]] version 2.00 process.h file
  2. (November 2024)
  3. [http://www.delorie.com/djgpp/ Delorie.com]
  4. [http://www.delorie.com/djgpp/doc/incs/process.h DJGPP process.h], delorie.com
  5. [http://www.openwatcom.org/index.php/Main_Page Openwatcom.org] {{webarchive. link. (2015-03-17)
  6. [http://www.openwatcom.org/ftp/manuals/clib.pdf OpenWatcom clib] {{Webarchive. link. (2006-10-11 , openwatcom.org)
  7. [http://www.digitalmars.com/ DigitalMars.com]
  8. [http://www.digitalmars.com/rtl/process.html Digital Mars process.h], digitalmars.com
  9. [http://www.mingw.org/ MinGW.org]
  10. "MSDN.Microsoft.com".
  11. "Borland.com".
  12. [https://archive.today/20110710191522/http://dn.codegear.com/article/20841Turbo C version 2.01], dn.codegear.com
  13. [http://www.cs.virginia.edu/~lcc-win32/ CS.Virginia.edu]
  14. [http://www.qnx.com/products/neutrino_rtos/ QNX.com]
  15. [http://www.delorie.com/djgpp/doc/libc/libc_736.html DJGPP spawn*], delorie.com
  16. [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/HTML/crt_system.2c._wsystem.asp Microsoft MSDN], msdn.microsoft.com

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

process.hc-(programming-language)-headers