Операционные системы. Кручинин А.Ю. - 42 стр.

UptoLike

Составители: 

42
не определенное.
lpKernelTime указатель на структуру FILETIME, которая принимает величину
времени, в течение которого процесс выполнялся в привилегированном режиме
(режиме ядра). Чтобы получить это значение, определяется время, в ходе которого
каждый из потоков процесса выполнялся в режиме ядра, а затем все эти периоды
суммируются вместе.
lpUserTime указатель на структуру FILETIME, которая принимает величину
времени, в течение которого процесс выполнялся в непривилегированном
(пользовательском) режиме. Чтобы получить это значение, определяется время, в
ходе которого каждый из потоков процесса выполнялся в режиме ядра, а затем все
эти периоды суммируются вместе.
Возвращаемые значения
Если функция завершается успешно, величина возвращаемого значения не
ноль. Если функция завершается с ошибкой, величина возвращаемого значения
ноль. Чтобы получать расширенные данные об ошибках, вызовите GetLastError.
Задание:
1. Модифицировать программу:
запустить процесс калькулятора из приложения;
запустить из приложения процесс команды ping с параметрами
запрашиваемого IP-адреса соседнего компьютера;
получить информацию о времени выполнения дочерних процессах
калькулятора и ping;
удалить оба дочерних процесса;
запустив через меню «Пуск» программы калькулятора и графического
редактора Paint, найти и удалить их с помощью вашего приложения.
Контрольные вопросы:
1. Из чего состоят процесс и поток в среде Windows?
2. Создание и завершение процесса.
3. Каковы параметры функции CreateProcess?
4. Назначение и состав структуры PROCESS_INFORMATION.
5. Назначение и состав структуры STARTUP_INFO.
6. Назначение и состав структуры LPSECURITY_ATTRIBUTES.
Для самостоятельного изучения:
1. Функции ExitProcess, GetCurrentProcess, GetPriorityClass, GetProcessVersion,
GetProcessWorkingSetSize, SetPriorityClass, SetProcessWorkingSetSize.
4.6 Обмен информацией между процессами
Параллельно работающие процессы часто должны обмениваться данными. На
данном этапе необходимо осуществить взаимодействие между двумя процессами
через файл и путѐм использования API сообщения WM_COPYDATA.
Для того, чтобы два приложения обменивались данными через файл
не определенное.
lpKernelTime – указатель на структуру FILETIME, которая принимает величину
времени, в течение которого процесс выполнялся в привилегированном режиме
(режиме ядра). Чтобы получить это значение, определяется время, в ходе которого
каждый из потоков процесса выполнялся в режиме ядра, а затем все эти периоды
суммируются вместе.
lpUserTime – указатель на структуру FILETIME, которая принимает величину
времени, в течение которого процесс выполнялся в непривилегированном
(пользовательском) режиме. Чтобы получить это значение, определяется время, в
ходе которого каждый из потоков процесса выполнялся в режиме ядра, а затем все
эти периоды суммируются вместе.
      Возвращаемые значения
      Если функция завершается успешно, величина возвращаемого значения – не
ноль. Если функция завершается с ошибкой, величина возвращаемого значения –
ноль. Чтобы получать расширенные данные об ошибках, вызовите GetLastError.

Задание:
1. Модифицировать программу:
     – запустить процесс калькулятора из приложения;
     – запустить из приложения процесс команды ping с параметрами
     запрашиваемого IP-адреса соседнего компьютера;
     – получить информацию о времени выполнения дочерних процессах
     калькулятора и ping;
     – удалить оба дочерних процесса;
     – запустив через меню «Пуск» программы калькулятора и графического
     редактора Paint, найти и удалить их с помощью вашего приложения.

Контрольные вопросы:
1. Из чего состоят процесс и поток в среде Windows?
2. Создание и завершение процесса.
3. Каковы параметры функции CreateProcess?
4. Назначение и состав структуры PROCESS_INFORMATION.
5. Назначение и состав структуры STARTUP_INFO.
6. Назначение и состав структуры LPSECURITY_ATTRIBUTES.

Для самостоятельного изучения:
1. Функции ExitProcess, GetCurrentProcess, GetPriorityClass, GetProcessVersion,
GetProcessWorkingSetSize, SetPriorityClass, SetProcessWorkingSetSize.

     4.6 Обмен информацией между процессами

      Параллельно работающие процессы часто должны обмениваться данными. На
данном этапе необходимо осуществить взаимодействие между двумя процессами
через файл и путѐм использования API сообщения WM_COPYDATA.
      Для того, чтобы два приложения обменивались данными через файл
                                                                            42