Индустрия программирования


Множественные прикладные среды Windows NT


Виктор Олифер,









Защищенные подсистемы взаимодействуют путем передачи
сообщений, используя механизм LPC

LPC - Local Procedure Call - вызов локальных процедур

Цели подсистем окружения:

  • Обеспечить несколько программных интерфейсов
  • Экранировать базовую ОС от изменений API
  • Объединить общие для всех API глобальные данные, уменьшая
    избыточность
  • Обеспечить возможность включения новых API
  • Защита окружений от приложений




Множественные прикладные среды обеспечивают совместимость на ДВОИЧНОМ уровне

Цели:

  • возможность выполнять программы, написанные для
    других ОС и процессоров
  • встроенность средств обеспечения совместимости
    в ОС
  • приемлемая скорость выполнения приложений


Примеры ОС, содержащих встроенные средства
обеспечения множественных прикладных сред:


  • OS/2 2.x
  • Workplace OS
  • Windows NT
  • PowerOpen
  • некоторые версии UNIX





Пример различия в системных вызовах:



fork()
  • Наследует адресное пространство родителя
  • Имеет одну нить
  • При завершении потомка нужно послать сигнал родителю

  • DosExecPgm()
  • Адресное пространство создается заново на основе файла prog.exe
  • Имеет несколько нитей
  • При завершении потомка созданного с опцией EXEC_SYNC идентификатор процесса нельзя повторно использовать



  • Цели разработки микроядра Mach

    1. Обеспечение базовых функций для создания других
      операционных систем (например, UNIX)
    2. Поддержка больших разряженных адресных пространств
    3. Обеспечение прозрачного доступа к сетевым ресурсам
    4. Поддержка параллелизма как в системе, так и в
      приложениях
    5. Обеспечение переносимости Mach на различные типы
      компьютеров

    Абстрактная модель эмуляции UNIX на основе
    Mach




    Функции микроядра Mach:

    • управление процессами,
    • управление памятью,
    • коммуникации
    • функции ввода-вывода


    Функции управления файлами, каталогами и другие традиционные
    для операционных систем функции выполняются в пользовательском
    пространстве эмуляторами различных ОС


    Модель API на основе DLL





    Системные сервисы

    Менеджер объектовМонитор ссылокбезопасности
    Менеджер процессовСредство вызова локальных процедур
    Менеджер виртуальной памяти
    Менеджер ввода-вывода
    Ядро

    <


    Начало  Назад  Вперед



    Книжный магазин