Лекция. InterProcess Communication, или IPC

InterProcess Communication, или IPC.

Межпроцессное взаимодействие

Довольно часто процессам необходимо взаимодействовать с другими процессами. Например, в канале оболочки выходные данные одного процесса могут передаваться другому процессу, и так далее вниз по цепочке. Поэтому возникает необходимость во взаимодействии процессов, и желательно, по хорошо продуманной структуре без использования прерываний.

Ситуации, когда два или более процессов обрабатывают разделяемые данные, и конечный результат зависит от соотношения скоростей процессов, называются гонками.

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

Другим способом взаимного исключения является использование блокирующих переменных. При этом каждому разделяемому ресурсу ставится в соответствие двоичная переменная, которая принимает, например, значение 0, если ресурс свободен (то есть ни один из процессов не находится в данный момент в критической секции, связанной с данным процессом), и значение 1, если ресурс занят.

Одним из наиболее простых, удобных и интуитивных интерфей­сов межпроцессного взаимодействия является буфер обмена. Буфер обмена может содержать в себе один информаци­онный объект – фрагмент текста, рисунок и т. д. С помощью сис­темного вызова процесс может получить копию информации, со­держащейся в буфере обмена, или сам поместить объект в буфер, при этом старое содержимое буфера теряется. Таким образом, про­граммы получают простой, но эффективный способ взаимного обмена инфор­мацией во время своей работы.

Операционная система MS-DOS (2 часа)

Цель: Повторить ранее пройденные команды MS-DOS. Рассмотреть необходимость использования системных программ и их использование. Дать понятие командных файлов. Четко определить начальную загрузку ОС. Обосновать специфику использования оперативной памяти, объяснить нехватку для запуска программ. Рассмотреть команды, использующиеся в командных файлах и файле config.sys. Определить необходимость использования системной дискеты и описать процесс её создания.

Краткий план:

1. Основных команд для работы с файлами и каталогами

2. Основные системные программы.

2.1. Инициализация (форматирование) дискет.

2.2. Задание метки на диске

2.3. Изменение состояния логических дисков.

3. Командные файлы

4. Начальная загрузка MS-DOS.

5. Использование оперативной памяти.

6. Основные команды, используемые в файлах autoexec.bat и config.sys.

7. Системная дискета.

Материал лекции:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: