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


История развития операционных систем

 

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

1-й этап (50-е гг. XX е.)

К концу 50-х гг. ведущие фирмы-изготовители компьютеров поставляли операционные системы со следующими характеристиками:

– пакетная обработка одного потока задач;

– наличие стандартных подпрограмм ввода-вывода, позволяющих пользователю не касаться деталей программирования процессов ввода и вывода на машинном языке;

– возможность автоматического перехода от программы к программе, позволяющая сократить накладные расходы на запуск новой задачи в решение;

– наличие средств восстановления после ошибок, обеспечивающих автоматическое восстановление машины в случае аварийного завершения очередной задачи и позволяющих запускать следующую задачу при минимальном вмешательстве оператора ЭВМ;

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

2-й этап (60-е гг. XX в.)

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

– мультипрограммирование;

– поддержка многотерминального многопользовательского режима;

– виртуальная память;

– файловые системы,

– разграничение доступа;

– работа в сети.

 

 

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

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

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

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

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

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

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

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

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

Существуют комплексные прикладные системы масштаба корпораций, которые являются основой для надежного ведения крупного бизнеса, так называемые ERP-системы (Enterprise Resource Planning Systems). Эти системы также являются прикладной платформой, гибко настраиваемой в своей предметной области.