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

Обновлено: 05.07.2024

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

некоторые версии UNIX

Реализация Windows NT на базе API OS/2

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

 Наследует адресное пространство родителя

 Имеет одну нить

 При завершении потомка нужно послать сигнал родителю

 Адресное пространство создается заново на основе файла prog.exe

 Имеет несколько нитей

 При завершении потомка созданного с опцией EXEC_SYNC идентификатор процесса нельзя повторно использовать

Реализация Windows NT на базе двух равноправных API

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

Обеспечение базовых функций для создания других операционных систем (например, UNIX)

Поддержка больших разряженных адресных пространств

Обеспечение прозрачного доступа к сетевым ресурсам

Поддержка параллелизма как в системе, так и в приложениях

Обеспечение переносимости Mach на различные типы компьютеров

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

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

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

Функционирование защищенных систем Windows NT

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

Модель API Windows NT

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

Два способа вызова системных функций

Обращение к системным сервисам в традиционных ОС

процессор переходит в режим ядра

выполняется требуемая системная функция

возврат процессора в пользовательский режим

выполнение нити с прерванного места

Вызов системной функции (API Win32) в Windows NT

NT-executive выполняет следующую последовательность действий:

сохраняет контекст клиентской нити

выбирает серверную нить для выполнения и загружает ее контекст

выполняет функцию API Win32, используя серверную нить

сохраняет контекст серверной нити

загружает контекст клиентской нити и обрабатывает результаты выполнения функции API

некоторые функции API реализованы внутри библиотеки заглушек

некоторые данные Win32 хранятся в адресном пространстве NT-executive

запросы приложений на выполнение функций API объединяются в пакеты

Типичные функции, которые подсистемы окружения должны выполнять по управлению "своими" процессами и нитями

Создание и завершение процессов и нитей

Чтение, запись и другие действия с адресными пространствами процессов - клиентов

Останов нити клиента, изменение пользовательского контекста нити, рестарт этой нити

Захват и обработка исключительных ситуаций (exeptions), генерируемых клиентскими процессами

Логический вход и подсистема безопасности

Инициализация пользовательской сессии

Отличия 32-битного API Win32 от 16-битного Windows API:

использование 32-битной плоской модели памяти

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

поддержка многонитевости, безопасности

улучшены функции по управлению графикой и окнами

Преемственность API Win32

управление окнами и пользовательским интерфейсом из Windows 3.0

пользовательский интерфейс Windows NT полностью совместим с пользовательским интерфейсом Windows 3.1

графическая часть подсистемы Win32 является полностью новой

новое свойство Win32 - безопасность

Подсистемы окружения MS-DOS и 16-битная Windows

Модель ввода данных для подсистемы окружения WOW

символьно-ориентированные приложения OS/2 1.х

компьютеры на базе процессоров х86

запуск из командной строки Windows NT, из Program Manager или косвенно из приложений OS/2 или Win32

распознаются по заголовку исполняемого файла

для загрузки приложения - вызов подсистемы OS/2

запускается процесс OS/2SRV подсистемы окружения OS/2

попытки выполнить сегменты ввода-вывода в кольце 2 завершаются кодом "Общий сбой по защите"

Объекты Windows NT встраиваются внутрь объектов OS/2

Нить получает приоритет и идентификатор, которые являются допустимыми в OS/2

Подсистема окружения OS/2 использует возможности большой памяти Windows NT

Подсистема Posix (Portable Operation System Interface based on UNIX)

запуск из консольного текстового окна Windows NT, с помощью File Manager, Program Manager и косвенно из другого приложения POSIX

на диске должен находится по крайней мере один раздел NTFS

Подсистема POSIX непосредственно не поддерживает печать

Командный процессор Windows NT поддерживает команды всех подсистем окружения

Механизм вызова локальных процедур (Local Procedure Call, LPC)

Назначение - прозрачный вызов процедур одного процесса из другого процесса внутри одной машины

LPC - локальный вариант RPC

Для прикладного программиста совершенно прозрачен

Системный программист оформляет библиотеку стабов LPC и библиотеку функций сервера LPC и регистрирует последнюю в ядре

Коммуникационные порты - очереди фиксированной длины в виртуальном адресном пространстве ядра.

Целью написания реферата является углубление знаний по конкретной проблеме, получение навыков работы с научной и научно-популярной литературой

Всем известно, что сердце Windows находится в системном реестре. Правильность реестра - залог долговечности операционной системы Windows.

В этой статье собраны основные команды прописываемые в командной строке Windows NT/2000/XP для выполнения определенной сетевой функции.

Назначение и структура DOS. Програмное обеспечение вычислительных машин. Командный процессор DOS. Назначение Windows и характеристики Windows.

Text Text Text Text Graphics Система Windows XP Professional ориентирована на корпоративных пользователей, на работу в средних и больших сетях. Этой системой могут заинтересоваться и домашние пользователи, которых не устраивают некоторые ограничения Windows XP Home Edition . Windows XP Professional является прямой наследницей систем Windows 2000, основные улучшения которых шли в следующих направлениях: Система Windows XP Professional ориентирована на корпоративных пользователей, на работу в средних и больших сетях.

Text Graphics Объектами называют сущности, имеющие различные свойства. Объектами называют сущности, имеющие различные свойства. Graphics

В этой статье собраны основные команды прописываемые в командной строке Windows NT/2000/XP для выполнения определенной сетевой функции. Пример вида ,практически пишется как имя. Чтобы запустить командную строку необходимо нажать Пуск - Выполнить ввести "cmd" Enter или OK.

Text Text Graphics Операционные системы среды и оболочки Выполнила Гурьева Ольга группа ИС 73-1 Graphics

Madame Bovary: Windows Essay, Research Paper Windows frequently appear in the novel Madame Bovary. Emma is constantly peering out of windows. Windows are a symbol of hope and dreams, and also escape.

Linux Essay, Research Paper Introduction ? TOPIC: Can Linux succeed in a Windows world? Linux is a Unix-language-based computer platform and is described as being slimmer, faster, more reliable

From Windows 98 For Its Office Pcs? Essay, Research Paper Should this business update to Windows 2000 from Windows 98 for its office PCs? In the business world today, computers and the software applications that run on them basically control an well-organized business. Every major company is equipped with a computer, or network that connects through different branches throughout the firm.

Paper Represented primarily through cathedrals, Romanesque and Gothic styles of architecture were some of the few symbols of civilization in the poverty stricken and often depressing Middle Ages. These cathedrals

Essay, Research Paper German settlers came to North America in the late 17th century, they settled mainly in Pennsylvania. Germans built large, lasting houses of wood and quarry stone.

The World Essay, Research Paper If your computer starts up in the 24 bit version of the game with fuzzy looking graphics, try re-selecting the screen mode from the F11 menu. This

Windows 95 Essay, Research Paper Windows 95 may very well be the most talked about software release in history. With more people than ever using personal computers, and given Microsoft’s dominance in this still growing market, Mr. Gates’ newest offering has caused quite a stir. As with any new product in this ultra-competitive industry, Windows 95 has come under intense scrutiny.

Comparing Operating Systems Essay, Research Paper Comparing Microsoft Operating Systems : 95/98/NT This report is centered on the similarities and differences of the three major operating systems provided by Microsoft during the previous decade. There were and will always be changes and upgrades some of the information may not be current, as these systems have had certain upgrade modules that may not covered.

& Windows 95 Essay, Research Paper Cognitive Artifacts & Windows 95 The article on Cognitive Artifacts by David A. Norman deals with the theories and principles of artifacts as they relate to the user during execution

Aol V. Msn Essay, Research Paper NOTE: You will be prompted to reboot the computer after uninstalling the AOL Adapter. After the initial reboot, when AOL is launched, you will be prompted to reboot again. On some systems this may happen several times.

Windows 3.0 Essay, Research Paper Windows 3.0 With window’s 3.0, you can unleash the power of your 286 or 386 computer’s protected mode. Unlike earlier releases that made you purchase separate versions

[don't load] snd.cpl=no joystick.cpl=no midimap.drv=no [MMCPL] SYMLIVE=C:Program FilesSymantecLiveUpdateS32LUCP1.CPL WildTangent=C:WINDOWSwtwtshared.dll

? Essay, Research Paper Religion Puritanism 16th and 17th centuries ? dispute over terms of the Settlement which banned artificial worship but did not specify decoration such as church windows and crosses in

Paper First Impressions May Be Deceiving Michael Jordan For many years now, people have been fool by appearances. Someone may look at the exterior of an object and expect one thing when actually the exact

Computer Fundamentals Essay, Research Paper The very first operating system used on the earliest IBM PCs was called simply the Disk Operating System, abbreviated DOS. There are few PC users who have not heard of DOS; at one time it was used on pretty much every PC, and it is still around today in many different forms.

Microsoft Monopoly Essay, Research Paper By now everyone is familiar with the case U.S. vs. Microsoft. What is all this about? According to my two articles, Microsoft, the world’s leading software company, is being sued by the Justice Department joined by 19 states.

Windows 95 or NT When one asks himself or another, Which Operating system will better fill my needs as an operating system Windows 95 or Windows NT version 3.51. I will

, Research Paper REVIEW OF OPERATING SYSTEMS, DOS AND WINDOWS 95 1) It is necessary to install an operating system on every microcomputer because you need user interface.

Essay, Research Paper Windows 95 the O/S of the Future The way of the computing world is changing at a neck breaking pace. People are looking for computers to be easy to use, and to make life easier for them. The

Paper Microsoft has remained at the top of the personal computer industry. It is the bar that other companies in their field must measure up to. The strong hold Microsoft has established is due in great part to the strength and popularity of their operating systems. Over the past year Microsoft has released Windows 2000, a network based OS to replace older Windows NT systems.

Computer Operating System Essay, Research Paper An operating system is a program that acts an intermediary between a user of a computer and the computer hardware. The purpose of an

Windows 95 Beats Mac Over the years, there has been much argument over which computer platform to buy. The two contenders in theis competions have been the PC , with its Windows

Disaster Recovery Essay, Research Paper Windows on Management – Disaster Recovery in the New Information Age This window talks about some of the benefits of a recovery system for businesses with round the clock electronic commerce. If a disaster happens and these companies don’t have a recovery system, it can cause massive delays and that can lead to loss of business and profits.

Paper Lock Outs in SQL Server If you lock yourself out of SQL Server without being able to log on with a sysadmin login, you don’t have to reinstall SQL Server. To access SQL Server, you need to use the registry key for SQL Server 2000 and SQL Server 7.0 that determines the authentication mode of SQL Server.

12., призначення, приклади. Драйвер – це програма, яка відповідає за роботу даного пристрою, містить набір команд, для даного пристрою і забезпечує зв'язок між комп’ютером і пристроєм.

В то время как многие архитектурные особенности ОС непосредственно касаются только системных программистов, концепция множественных прикладных (операционных) средств непосредственно связана с нуждами конечных пользователей – возможностью операционной системы выполнять приложения, написанные для других операционных систем. Такое свойство операционной системы называется совместимостью.

Совместимость приложений может быть на двоичном уровне и на уровне исходных текстов [13]. Приложения обычно хранятся в ОС в виде исполняемых файлов, содержащих двоичные образы кодов и данных. Двоичная совместимость достигается в том случае, если можно взять исполняемую программу и запустить ее на выполнение в среде другой ОС.

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

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

Вид возможной совместимости зависит от многих факторов. Самый главный из них – архитектура процессора. Если процессор применяет тот же набор команд (возможно, с добавлениями, как в случае IBM PC: стандартный набор + мультимедиа + графика + потоковые) и тот же диапазон адресов, то двоичная совместимость может быть достигнута достаточно просто. Для этого необходимо соблюдение следующих условий:

  • API, который использует приложение, должен поддерживаться данной ОС;
  • внутренняя структура исполняемого файла приложения должна соответствовать структуре исполняемых файлов данной ОС.

Если процессоры имеют разную архитектуру, то, кроме перечисленных условий, необходимо организовать эмуляцию двоичного кода. Например, широко используется эмуляция команд процессора Intel на процессоре Motorola 680x0 компьютера Macintosh. Программный эмулятор в этом случае последовательно выбирает двоичную инструкцию процессора Intel и выполняет эквивалентную подпрограмму, написанную в инструкциях процессора Motorola. Так как у процессора Motorola нет в точности таких же регистров, флагов, внутреннего АЛУ и др., как в процессорах Intel, он должен также имитировать (эмулировать) все эти элементы с использованием своих регистров или памяти.

Это простая, но очень медленная работа, поскольку одна команда Intel выполняется значительно быстрее, чем эмулирующая ее последовательность команд процессора Motorola. Выходом в таких случаях является применение так называемых прикладных программных сред или операционных сред. Одной из составляющих такой среды является набор функций интерфейса прикладного программирования API, который ОС предоставляет своим приложениям. Для сокращения времени на выполнение чужих программ прикладные среды имитируют обращение к библиотечным функциям.

Эффективность этого подхода связана с тем, что большинство сегодняшних программ работает под управлением GUI (графических интерфейсов пользователя) типа Windows, MAC или UNIX Motif, при этом приложения тратят 60-80% времени на выполнение функций GUI и других библиотечных вызовов ОС. Именно это свойство приложений позволяет прикладным средам компенсировать большие затраты времени, потраченные на покомандное эмулирование программ. Тщательно спроектированная программная прикладная среда имеет в своем составе библиотеки, имитирующие библиотеки GUI, но написанные на "родном" коде. Таким образом, достигается существенное ускорение выполнения программ с API другой операционной системы. Иначе такой подход называют трансляцией – для того, чтобы отличить его от более медленного процесса эмулирования по одной команде за раз.

Чтобы программа, написанная для одной ОС, могла быть выполнена в рамках другой ОС, недостаточно лишь обеспечивать совместимость API. Концепции, положенные в основу разных ОС, могут входить в противоречия друг с другом. Например, в одной ОС приложению может быть разрешено управлять устройствами ввода-вывода, в другой – эти действия являются прерогативой ОС.

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

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

На рис. 1.9 ОС OS1 поддерживает кроме своих "родных" приложений приложения операционных систем OS2 и OS3. Для этого в её составе имеются специальные приложения, прикладные программные среды, которые транслируют интерфейсы "чужих" операционных систем API OS2 и API OS3 в интерфейс своей "родной" ОС – API OS1. Так, например, в случае если бы в качестве OS2 выступала ОС UNIX, а в качестве OS1 – OS/2, для выполнения системного вызова создания процесса fork () в UNIX-приложении программная среда должна обращаться к ядру операционной системы OS/2 с системным вызовом DOS ExecPgm ().



Рис. 1.9. Организация множественных прикладных сред

К сожалению, поведение почти всех функций, составляющих API одной ОС, как правило, существенно отличается от поведения соответствующих функций другой ОС. Например, чтобы функция создания процесса в OS/2 Dos ExecPgm () полностью соответствовала функции создания процесса fork () в UNIX-подобных системах, её нужно было бы изменить и прописать новую функциональность: поддержку возможности копирования адресного пространства родительского процесса в пространство процесса-потомка [17].

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

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

Такому подходу к конструированию множественных прикладных сред присущи все достоинства и недостатки микро ядерной архитектуры, в частности:

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

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

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

некоторые версии UNIX

Реализация Windows NT на базе API OS/2

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

 Наследует адресное пространство родителя

 Имеет одну нить

 При завершении потомка нужно послать сигнал родителю

 Адресное пространство создается заново на основе файла prog.exe

 Имеет несколько нитей

 При завершении потомка созданного с опцией EXEC_SYNC идентификатор процесса нельзя повторно использовать

Реализация Windows NT на базе двух равноправных API

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

Обеспечение базовых функций для создания других операционных систем (например, UNIX)

Поддержка больших разряженных адресных пространств

Обеспечение прозрачного доступа к сетевым ресурсам

Поддержка параллелизма как в системе, так и в приложениях

Обеспечение переносимости Mach на различные типы компьютеров

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

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

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

Функционирование защищенных систем Windows NT

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

Модель API Windows NT

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

Два способа вызова системных функций

Обращение к системным сервисам в традиционных ОС

процессор переходит в режим ядра

выполняется требуемая системная функция

возврат процессора в пользовательский режим

выполнение нити с прерванного места

Вызов системной функции (API Win32) в Windows NT

NT-executive выполняет следующую последовательность действий:

сохраняет контекст клиентской нити

выбирает серверную нить для выполнения и загружает ее контекст

выполняет функцию API Win32, используя серверную нить

сохраняет контекст серверной нити

загружает контекст клиентской нити и обрабатывает результаты выполнения функции API

некоторые функции API реализованы внутри библиотеки заглушек

некоторые данные Win32 хранятся в адресном пространстве NT-executive

запросы приложений на выполнение функций API объединяются в пакеты

Создание и завершение процессов и нитей

Чтение, запись и другие действия с адресными пространствами процессов — клиентов

Останов нити клиента, изменение пользовательского контекста нити, рестарт этой нити

Захват и обработка исключительных ситуаций (exeptions), генерируемых клиентскими процессами

Логический вход и подсистема безопасности

Инициализация пользовательской сессии

Отличия 32-битного API Win32 от 16-битного Windows API:

использование 32-битной плоской модели памяти

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

поддержка многонитевости, безопасности

улучшены функции по управлению графикой и окнами

Преемственность API Win32

управление окнами и пользовательским интерфейсом из Windows 3.0

пользовательский интерфейс Windows NT полностью совместим с пользовательским интерфейсом Windows 3.1

графическая часть подсистемы Win32 является полностью новой

новое свойство Win32 — безопасность

Подсистемы окружения MS-DOS и 16-битная Windows

Модель ввода данных для подсистемы окружения WOW

символьно-ориентированные приложения OS/2 1.х

компьютеры на базе процессоров х86

запуск из командной строки Windows NT, из Program Manager или косвенно из приложений OS/2 или Win32

распознаются по заголовку исполняемого файла

для загрузки приложения — вызов подсистемы OS/2

запускается процесс OS/2SRV подсистемы окружения OS/2

Объекты Windows NT встраиваются внутрь объектов OS/2

Нить получает приоритет и идентификатор, которые являются допустимыми в OS/2

Подсистема окружения OS/2 использует возможности большой памяти Windows NT

Подсистема Posix (Portable Operation System Interface based on UNIX)

запуск из консольного текстового окна Windows NT, с помощью File Manager, Program Manager и косвенно из другого приложения POSIX

на диске должен находится по крайней мере один раздел NTFS

Подсистема POSIX непосредственно не поддерживает печать

Командный процессор Windows NT поддерживает команды всех подсистем окружения

Механизм вызова локальных процедур (Local Procedure Call, LPC)

Назначение — прозрачный вызов процедур одного процесса из другого процесса внутри одной машины

LPC — локальный вариант RPC

Для прикладного программиста совершенно прозрачен

Системный программист оформляет библиотеку стабов LPC и библиотеку функций сервера LPC и регистрирует последнюю в ядре

Коммуникационные порты — очереди фиксированной длины в виртуальном адресном пространстве ядра.

Требования функциональной полноты.Главное требование - выполнение основных функций эффективного управления ресурсами и обеспечение удобного интерфейса для пользователей и прикладных программ.

Современная ОС должна поддерживать:

· многооконный интерфейс пользователя;

· другие необходимые функции и услуги.

Важные эксплуатационные требования.

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

· Переносимость. Многоплатформенность – возможность переноса ОС с процессора одного типа на другой или с аппаратной платформы одного типа на другую (платформы различаются не только типом процессора, но и способом организации всей аппаратуры компьютера). Переносимые (многоплатформенные ) ОС имеют несколько вариантов реализации для разных платформ.

· Совместимость. Если ОС имеет средства для выполнения прикладных программ, написанных для других ОС, то говорят, что она обладает совместимостью с этими ОС. Различают совместимость на уровне двоичных кодов и совместимость на уровне исходных текстов. Понятие совместимости включает также поддержку пользовательских интерфейсов других ОС.

· Надежность и отказоустойчивость. ОС должна быть защищена как от внутренних, так и внешних ошибок, сбоев и отказов. Ее действия должны быть всегда предсказуемыми, а приложения не должны иметь возможности нанести вред ОС. Это достигается за счет архитектурных решений и качества реализации (отлаженности кода), а также поддержки аппаратных средств обеспечения отказоустойчивости, таких, как дисковые массивы или источники бесперебойного питания.

· Производительность. ОС должна обладать настолько хорошим быстродействием и временем реакции, насколько это позволяет аппаратная платформа.

СОВМЕСТИМОСТЬ И МНОЖЕСТВЕННЫЕ ПРИКЛАДНЫЕ СРЕДЫ.

Концепция множественных прикладных сред непосредственно связана с возможностью ОС выполнять приложения, написанные для других ОС, т.е. с совместимостью.

Двоичная совместимость и совместимость исходных текстов. Необходимо различать совместимость на двоичном уровне и совместимость на уровне исходных текстов. Приложения обычно хранятся в ОС в виде исполняемых файлов, содержащих двоичные образы кодов и данных.

Двоичная совместимость достигается в том случае, когда можно взять исполняемую программу и запустить ее на исполнение в среде другой ОС.

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

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

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

Двоичная совместимость достигается просто, если процессор, на котором работает новая ОС, использует тот же набор команд и тот же диапазон адресов. Для этого достаточно соблюдения следующих условий:

· вызовы функций API, которые содержит приложение, должны поддерживаться данной ОС;

· внутренняя структура исполняемого файла приложения должна соответствовать структуре исполняемых файлов ОС.

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

Трансляция библиотек.

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

Для сокращения времени на выполнение чужих программ прикладные среды имитируют обращения к библиотечным функциям. Эффективность этого подхода связана с тем, что большинство современных программ работают под управлением GUI (графических интерфейсов пользователя), типовые функции которого известны. Тщательно спроектированные программные прикладные среды имеют в своем составе библиотеки, имитирующие внутренние библиотеки GUI, но написанные на “родном” коде ОС, что позволяет вместо эмуляции кода использовать вызовы соответствующих библиотек. Иногда такой подход называют трансляцией, чтобы отличать его от более медленного эмулирования кода по одной команде за раз.

Роль языка в формировании личности: Это происходит потому, что любой современный язык – это сложное .

Как оформить тьютора для ребенка законодательно: Условием успешного процесса адаптации ребенка может стать.

Читайте также: