Примечание. Многие поставщики систем UNIX предоставляют собственные средства обработки исключений.
Глава 5: управление памятью, отображение файлов и библиотеки DLL Область Windows UNIX Библиотека С Отображение файлов CreateFileMapping shmget
- Отображение файлов MapViewOfFile mmap, shmat
- Отображение файлов MapViewOfFileEx mmap, shmat
- Отображение файлов OpenFileMapping shmget
- Отображение файлов UnmapViewOfFile munmap, shmdt, shmctl
- Управление памятью GetProcessHeap -
- Управление памятью GetSystemInfo -
- Управление памятью HeapAlloc sbrk, brk или библиотека С malloc, calloc Управление памятью HeapCreate - - Управление памятью HeapDestroy - - Управление памятью HeapFree Используйте библиотеку С free Управление памятью HeapReAlloc Используйте библиотеку С realloc Управление памятью HeapSize - - Разделяемая память CloseHandle (в данном случае закрытие дескриптора объекта отображения файла) shmctl
- Разделяемая память CreateFileMapping, OpenFileMapping shmget
- Разделяемая память MapViewOfFile shmat - Разделяемая память UnmapViewOfFile shmdt - Библиотеки DLL LoadLibrary dlopen - Библиотеки DLL FreeLibrary dlclose - Библиотеки DLL GetProcAddress dlsyn - Библиотеки DLL DllMain pthread_once - Глава 6: управление процессами Область Windows UNIX Библиотека С Примечания Управление процессами CreateProcess fork();
execl()*, system()
- Существует 6 функций ехесхх Управление процессами ExitProcess _exit exit Управление процессами GetCommandLine argv[] argv[] Управление процессами GetCurrentProcess
getpid* - Управление процессами GetCurrentProcessId
getpid* - Управление процессами GetEnvironmentStrings - getenv Управление процессами GetEnvironmentVariable - getenv Управление процессами GetExitCodeProcess wait, waitpid - Управление процессами GetProcessTimes times, wait3, wait4 - Управление процессами GetProcessWorkingSetSize wait3, wait4 - Управление процессами -
execl*,execv*,execle*,execve*,execlp*,execvp* - В Windows прямой эквивалент отсутствует Управление процессами - fork, vfork - В Windows прямой эквивалент отсутствует Управление процессами - getppid - Отношения "предок/потомок" в Windows отсутствуют Управление процессами - getgid, getegid - Понятие группы процессов в Windows отсутствует Управление процессами - getpgrp - Управление процессами
- setpgid
- Управление процессами - setsid - Управление процессами
- tcgetpgrp - Управление процессами
- tcsetpgrp - Управление процессами OpenProcess - - Управление процессами SetEnvironmentVariable putenv - putenv не включена в стандартную библиотеку С Управление процессами TerminateProcess kill - Синхронизация: процесс WaitForMultipleObjects (в данном случае ожидание дескрипторов процесса) waitpid - Синхронизация: процесс WaitForSingleObject (в данном случае ожидание дескриптора процесса) wait, waitpid - Таймеры KillTimer alarm(0)
- Таймеры SetTimer alarm
- Таймеры Sleep sleep
- Таймеры Sleep poll или select без указания файлового дескриптора - Глава 7: Потоки и планирование выполнения Область Windows UNIX/Pthreads Примечания Управление потоками CreateRemoteThread
- TLS TlsAlloc pthread_key_alloc TLS TlsFree pthread_key_delete TLS TlsGetValue pthread_getspecific TLS TlsSetValue pthread_setspecific Управление потоками CreateThread, _beginthreadex pthread_create Управление потоками ExitThread, _endthreadex pthread_exit Управление потоками GetCurrentThread pthread_self Управление потоками GetCurrentThreadId - Управление потоками GetExitCodeThread pthread_yield Управление потоками ResumeThread - Управление потоками SuspendThread - Управление потоками TerminateThread pthread_cancel pthread_cancel является более безопасной Управление потоками WaitForSingleObject (в данном случае ожидание дескриптора потока) pthread_join Приоритет потоков GetPriorityClass pthread_attr_getschedpolicy, getpriority Приоритет потоков GetThreadPriority pthread_attr_getschedparam Приоритет потоков SetPriorityClass pthread_attr_setschedpolicy, setpriority, nice Приоритет потоков SetThreadPriority pthread_attr_setschedparam
Примечание. Будучи частью всех современных систем UNIX, потоки Pthreads доступны также в системах, отличных от UNIX.