Чтение онлайн

ЖАНРЫ

Системное программирование в среде Windows

Харт Джонсон М.

Шрифт:
Получение сведений о системе GetVersion uname – Получение сведений о системе GetVolumeInformation – Получение сведений о системе GlobalMemoryStatus getrlimit Получение сведений о системе Ряд предопределенных констант sysconf, pathconf, fpathconf Дата и время GetSystemTime Используйте библиотеку С time, gmtime Дата и время См. программу ls (Программа 3.2) Используйте библиотеку С asctime Дата и время CompareFileTime Используйте библиотеку С difftime Сравнение "календарных" значений даты и
времени Дата и время FileTimeToLocalFileTime, FileTimeToSystemTime Используйте библиотеку С localtime Дата и время FileTimeToSystemTime Используйте библиотеку С gmtime Дата и время GetLocalTime Используйте библиотеку С time, localtime Дата и время См. программу touch (программа 3.3) Используйте библиотеку С strftime Дата и время SetLocalTime – – Дата и время SetSystemTime – – Дата и время Вычитание значений отметок времени Используйте библиотеку С difftime Дата и время SystemTimeToFileTime Используйте библиотеку С mktime
Глава 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
Управление процессами 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)