Developer > Application
C,C++ 윈도우즈, 유닉스, C라이브러리 비교 - Process Management
2013.11.27 00:22
Chapter 6: Process Management
Subject | Windows | UNIX | C Library | Comments |
---|---|---|---|---|
Process Mgt | CreateProcess | fork (); execl ()*, system() | N/A | There are 6 execxx functions |
Process Mgt | ExitProcess | _exit | exit | |
Process Mgt | GetCommandLine | argv [] | argv [] | |
Process Mgt | GetCurrentProcess | getpid* | N/A | |
Process Mgt | GetCurrentProcessId | getpid* | N/A | |
Process Mgt | GetEnvironmentStrings | N/A | getenv | |
Process Mgt | GetEnvironmentVariable | N/A | getenv | |
Process Mgt | GetExitCodeProcess | wait, waitpid | N/A | |
Process Mgt | GetProcessTimes | times, wait3, wait4 | N/A | |
Process Mgt | GetProcessWorkingSetSize | wait3, wait4 | N/A | |
Process Mgt | N/A | execl*, execv*, execle*, execve*, execlp*, execvp* | N/A | Windows does not have a direct equivalent |
Process Mgt | N/A | fork, vfork | N/A | Windows does not have a direct equivalent |
Process Mgt | N/A | getppid | N/A | No parent/child relationships in Windows |
Process Mgt | N/A | getgid, getegid | N/A | No process groups in Windows |
Process Mgt | N/A | getpgrp | N/A | |
Process Mgt | N/A | setpgid | N/A | |
Process Mgt | N/A | setsid | N/A | |
Process Mgt | N/A | tcgetpgrp | N/A | |
Process Mgt | N/A | tcsetpgrp | N/A | |
Process Mgt | OpenProcess | N/A | N/A | |
Process Mgt | SetEnvironmentVariable | putenv | N/A | putenv is not part of the Standard C library |
Process Mgt | TerminateProcess | kill | N/A | |
Synch: Process | WaitForMultipleObjects (process handles) | waitpid | N/A | |
Synch: Process | WaitForSingleObject (process handle) | wait, waitpid | N/A | |
Timers | KillTimer | alarm (0) | N/A | |
Timers | SetTimer | alarm | N/A | |
Timers | Sleep | sleep | N/A | |
Timers | Sleep | poll or select, no file descriptor | N/A | |