Реальная машина

Точно следовать этому правилу удается не всегда. Если программная машина используется только для одного процесса, представление состояния этого процесса может быть объединено с самой программной машиной. При программировании на Фортране общепринято включать СОММОЫ-блок с описаниями, представляющими состояние процесса, во все подпрограммы и функции, составляющие машину. Этот метод обеспечивает эффективную защиту состояния процесса от изменения другими процессами при условии, что другие программы не используют для СОММСЖ-блока то же имя. Сейфер и другие намного более эффективные средства защиты обеспечиваются с помощью концепции пакета в языке программирования Ада. Однако если программная машина должна управлять рядом независимых процессов, то она должна располагать средствами обслуживания таблицы представлений состояний переменного числа процессов. На этом рисунке два процесса Р1 и Р2 используют одну и ту же программную машину БМ. Процессом Р1 создаются процессы РЗ и Р4, а процессом Р2 — процесс Р5. Программная машина (по правилу (1*2)) при идентификации процессов действует согласованно с вызывающими процессами. Данные, идентифицирующие подпроцессы, хранятся вместе с данными представления состояния процессов более высокого уровня (например, 1РЗ для процесса РЗ). К данным, представляющим состояния процессов РЗ, Р4, Р5, имеет доступ только программная машина БМ, что обеспечивает надежную защиту данных. Когда вызывающий процесс обращается к программной машине, он передает ей данные, идентифицирующие процесс, который должен быть продолжен. Затем соответствующее представление состояния процесса связывается с программной машиной (его имя заменяется тем, что оно обозначает), и процесс продолжается.

Releated Post

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.