Системное программирование в среде Windows - [215]

Шрифт
Интервал

waitpid-
Синхронизация: процесс WaitForSingleObject (в данном случае ожидание дескриптора процесса) wait, waitpid-
Таймеры KillTimer alarm(0) -
Таймеры SetTimer alarm -
Таймеры Sleep sleep -
ТаймерыSleeppoll или 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
Приоритет потоковSetThreadPrioritypthread_attr_setschedparam

Примечание. Будучи частью всех современных систем UNIX, потоки Pthreads доступны также в системах, отличных от UNIX.

Главы 8-10: синхронизация потоков
Область Windows UNIX/Pthreads Примечания
Синхронизация: критические разделы DeleteCriticalSection Для эмуляции объектов критических разделов используйте мьютексы. Библиотека С в данном случае не применима
Синхронизация: критические разделы EnterCriticalSection Некоторые системы предоставляют собственные эквиваленты. Библиотека С в данном случае не применима
Синхронизация: критические разделы InitializeCriticalSection
Синхронизация: критические разделы LeaveCriticalSection
Синхронизация: события CloseHandle (в данном случае закрытие дескриптора события) pthread_cond_destroy
Синхронизация: события CreateEvent pthread_cond_init
Синхронизация: события PulseEvent pthread_cond_signal Вручную сбрасываемое событие
Синхронизация: события ResetEvent -
Синхронизация: события SetEvent pthread_cond_broadcast Автоматически сбрасываемое событие
Синхронизация: события WaitForSingleObject (в данном случае ожидание дескриптора события) pthread_cond_wait
Синхронизация: события WaitForSingleObject (в данном случае ожидание дескриптора события) pthread_timed_wait
Синхронизация: мьютексы CloseHandle (в данном случае закрытие дескриптора мьютекса) pthread_mutex_destroy
Синхронизация: мьютексы CreateMutex pthread_mutex_init
Синхронизация: мьютексы ReleaseMutex pthread_mutex_unlock
Синхронизация: мьютексы WaitForSingleObject(в данном случае ожидание дескриптора мьютекса) pthread_mutex_lock
Синхронизация: семафоры CreateSemaphore semget
Синхронизация: семафоры - semctl Непосредственная поддержка всех опций в Windows отсутствует
Синхронизация: семафоры OpenSemaphore semget
Синхронизация: семафоры ReleaseSemaphore semop (+)
Синхронизация: семафорыWaitForSingleObject (в данном случае закрытие дескриптора семафора)semop (-)Windows может выполнять ожидание только одного счетчика
Глава 11: Взаимодействие между процессами
Область Windows UNIX Библиотека С Примечания
IPC CallNamedPipe - - CreateFile, WriteFile, ReadFile, CloseHandle
IPC CloseHandle (pipe handle) close, msgctl pclose
IPC ConnectNamedPipe - -
IPC CreateMailslot - -
IPC CreateNamedPipe mkfifo, msgget -
IPC CreatePipe pipe popen He является частью стандартной библиотеки С — см. [40]
IPC DuplicateHandle dup, dup2, or fcntl - Или используйте стандартные имена файлов CONIN$, CONOUT$
IPC GetNamedPipeHandleState stat, fstat, lstat64 -
IPC GetNamedPipeInfo stat, fstat, lstat -
IPC ImpersonateNamedPipeClient - -
IPC PeekNamedPipe - -
IPC ReadFile (в данном случае используется дескриптор именованного канала) read (fifo), msgsnd -
IPC RevertToSelf - -
IPC SetNamedPipeHandleState - -
IPC TransactNamedPipe - - WriteFile; ReadFile
IPC WriteFile (в данном случае используется дескриптор именованного канала) write (fifo), msgrcv -
Разное GetComputerName uname -
Разное SetComputerName - -
БезопасностьSetNamedPipeIdentityИспользуйте второй промежуточный бит каталога-
Глава 14: асинхронный ввод/вывод
Область Windows UNIX Библиотека С Примечания
Асинхронный ввод/вывод GetOverlappedResult - -
Асинхронный ввод/вывод ReadFileEx --Расширенный ввод/ вывод с процедурой завершения
Асинхронный ввод/вывод SleepEx - - Ожидание в дежурном режиме
Асинхронный ввод/вывод WaitForMultipleObjects (в данном случае ожидание дескрипторов файлов) poll, select -
Асинхронный ввод/вывод WaitForMultipleObjectsEx - - Ожидание в дежурном режиме
Асинхронный ввод/вывод WriteFileEx --Расширенный ввод/ вывод с процедурой завершения
Асинхронный ввод/выводWaitForSingleObjectExwaitpid-Ожидание в дежурном режиме
Глава 15: Безопасность объектов Windows
Область Windows UNIX Примечания
Безопасность AddAccessAllowedAce chmod, fchmod Средства защиты объектов библиотекой С не поддерживаются

Рекомендуем почитать
Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание

Сценарии командной оболочки помогают системным администраторам и программистам автоматизировать рутинные задачи с тех самых пор, как появились первые компьютеры. С момента выхода первого издания этой книги в 2004 году многое изменилось, однако командная оболочка bash только упрочила свои лидирующие позиции. Поэтому умение использовать все ее возможности становится насущной необходимостью для системных администраторов, инженеров и энтузиастов. В этой книге описываются типичные проблемы, с которыми можно столкнуться, например, при сборке программного обеспечения или координации действий других программ.


Безопасность информационных систем

В пособии излагаются основные тенденции развития организационного обеспечения безопасности информационных систем, а также подходы к анализу информационной инфраструктуры организационных систем и решению задач обеспечения безопасности компьютерных систем.Для студентов по направлению подготовки 230400 – Информационные системы и технологии (квалификация «бакалавр»).


UNIX — универсальная среда программирования

В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями shell.Для программистов-пользователей операционной системы UNIX.


QNX/UNIX: Анатомия параллелизма

Книга адресована программистам, работающим в самых разнообразных ОС UNIX. Авторы предлагают шире взглянуть на возможности параллельной организации вычислительного процесса в традиционном программировании. Особый акцент делается на потоках (threads), а именно на тех возможностях и сложностях, которые были привнесены в технику параллельных вычислений этой относительно новой парадигмой программирования. На примерах реальных кодов показываются приемы и преимущества параллельной организации вычислительного процесса.


Виртуальные  машины: несколько компьютеров в  одном

Применение виртуальных машин дает различным категориям пользователей — от начинающих до IT-специалистов — множество преимуществ. Это и повышенная безопасность работы, и простота развертывания новых платформ, и снижение стоимости владения. И потому не случайно сегодня виртуальные машины переживают второе рождение.В книге рассмотрены три наиболее популярных на сегодняшний день инструмента, предназначенных для создания виртуальных машин и управления ими: Virtual PC 2004 компании Microsoft, VMware Workstation от компании VMware и относительно «свежий» продукт — Parallels Workstation, созданный в компании Parallels.


Недокументированные и малоизвестные возможности Windows XP

Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows.