Харт Джонсон М.
Шрифт:
Глава 4: обработка исключений
| Область | Windows | UNIX | Библиотека С |
|---|---|---|---|
| SEH | __try–__except | Используйте сигналы библиотеки С | Используйте сигналы библиотеки С |
| SEH | __try–__finally | Используйте сигналы библиотеки С | Используйте сигналы библиотеки С |
| SEH | AbnormalTermination | Используйте сигналы библиотеки С | Используйте сигналы библиотеки С |
| SEH | GetExceptionCode | Используйте сигналы библиотеки С | Используйте сигналы библиотеки С |
| SEH | RaiseException | Используйте сигналы библиотеки С | signal, raise |
| Сигналы | Используйте блок __finally | Используйте библиотеку С | atexit |
| Сигналы | Используйте библиотеку С или TerminateProcess | kill | raise |
| Сигналы | Используйте библиотеку С | Используйте библиотеку С | signal |
| Сигналы | Используйте SEH, VEH | sigemptyset | – |
| Сигналы | Используйте SEH, VEH | sigfillset | – |
| Сигналы | Используйте SEH, VEH | sigaddset | – |
| Сигналы | Используйте SEH, VEH | sigdelset | – |
| Сигналы | Используйте SEH, VEH | sigismember | – |
| Сигналы | Используйте SEH, VEH | sigprocmask | – |
| Сигналы | Используйте SEH, VEH | sigpending | – |
| Сигналы | Используйте SEH, VEH | sigaction | – |
| Сигналы | Используйте SEH, VEH | sigsetjmp | – |
| Сигналы | Используйте SEH, VEH | siglongjmp | – |
| Сигналы | Используйте SEH, VEH | sigsuspendf | – |
| Сигналы | Используйте SEH, VEH | psignal | – |
| Сигналы | Используйте SEH, VEH или библиотеку С | Используйте библиотеку С | abort |
Примечание. Многие поставщики систем 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 | – |