Перейти к содержимому

Программное обеспечение которое поддерживает процесс программирования называется

  • автор:

Системное программное обеспечение

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

Системное программирование — создание системного программного обеспечения. Системное программное обеспечение направлено:

– на создание операционной среды функционирования других программ;

– на обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;

– на проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;

– на выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т.д.)

Системное программное обеспечение делится на :

– базовое программное обеспечение – как правило, поставляется вместе с компьютером;

– сервисное программное обеспечение – может быть приобретено дополнительно.

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

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

В базовое программное обеспечение входят:

– операционные оболочки (текстовые и графические);

– сетевая операционная система.

Операционная система предназначена для управления выполнением пользовательских программ, планирования и управления вычислительными ресурсами ЭВМ. Существуют следующие виды операционных систем: Windows 98, Windows XP Professional, Windows Home Edition, Linux, Unix и др.

Операционные системы для персональных компьютеров делятся на:

– одно- и многозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);

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

– непереносимые и переносимые на другие типы компьютеров;

– несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.

Сетевые операционные системы – это комплекс программ, обеспечивающий обработку, передачу и хранение данных в сети. Сетевая ОС предоставляет пользователям различные виды сетевых служб (управление файлами, электронная почта, процесс управления сетью и др.), поддерживает работу в абонентских системах. Наибольшее распространение имеют LAN Server, NetWare, VINES.Они оцениваются по комплексу критериев: производительность, разнообразие возможностей связи пользователей, возможности администрирования.

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

Во всем мире имеют огромную популярность такие графические оболочки MS DOS как Windows 3.1, Windows 3.11 for WorkGroup, которые позволяют изменить среду взаимодействия пользователя с компьютером, расширяют набор основных (диспетчер файлов, графический редактор, текстовый редактор, картотека и т.п.) и сервисных функций, обеспечивающих пользователю интегрированную информационную технологию.

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

– программы диагностики работоспособности компьютера;

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

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

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

– программы обслуживания сети.

Эти программы часто называются утилитами.

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

Наибольшее распространение имеют комплекты утилит: Norton Utilities, Checkit PRO Deliuxe 2.0.

Антивирусные продукты оцениваются по ряду критериев:

– точность обнаружения (идентификации) вируса;

– возможность защиты данных от инфицирования;

– эффективное устранение обнаруженных вирусов (восстановление файлов);

– способность работы в локальных сетях;

– возможность обнаружения и устранения boot-вирусов дисков.

Автор: УГД по Наурызбайскому району г.Алматы главный специалист ОИТ Каржаубаев Н.Т.

Energy
education

PC

Компьютер — устройство или система, способное выполнять заданную чётко определённую изменяемую последовательность операций. Это чаще всего операции численных расчётов и манипулирования данными, однако сюда относятся и операции ввода-вывода.

4. Системное программное обеспечение

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

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

Компоненты операционной системы:

  • Загрузчик;
  • Ядро;
  • Оболочка операционной системы или пользовательское окружение;
  • Драйверы устройств;

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

Загрузчик операционной системы:

  • обеспечивает необходимые средства для диалога с пользователем компьютера (например, загрузчик позволяет выбрать операционную систему для загрузки);
  • приводит аппаратуру компьютера в состояние, необходимое для старта ядра операционной системы;
  • загружает ядро операционной системы в ОЗУ. Загрузка ядра операционной системы не обязательно происходит с жесткого диска. Загрузчик может получать ядро по сети;
  • формирует параметры, передаваемые ядру операционной системы (например, ядру Linux передаются параметры, указывающие способ подключения корневой файловой системы);
  • передаёт управление ядру операционной системы.

На компьютерах архитектуры IBM PC запуск загрузчика осуществляется программным обеспечением BIOS, записанной в ПЗУ компьютера, после успешного окончания процедуры POST.

  • NTLDR – загрузчик ядра Windows NT
  • Windows Boot Manager (bootmgr.exe, winload.exe) – загрузчик ядра Windows Vista, Windows 7 и Windows 8
  • GRUB (Grand Unified Bootloader) – применяется для загрузки ядра Linux и Hurd (StartUp Manager)
  • BootX – загрузчик Mac OS X

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

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

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

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

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

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

Операционная система управляет некоторым «виртуальным устройством», которое понимает стандартный набор команд. Драйвер переводит эти команды в команды, которые понимает непосредственно устройство. Эта идеология называется «абстрагирование от аппаратного обеспечения».

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

  • Загрузка драйвера. Драйвер регистрируется в системе, производит первичную инициализацию и т.п.
  • Открытие драйвера. Начало основной работы.
  • Управление вводом-выводом (англ. IO Control, IOCTL). Зачастую драйвер поддерживает интерфейс ввода-вывода, специфичный для данного устройства. С помощью этого интерфейса программа может послать специальную команду, которую поддерживает данное устройство.
  • Чтение: программа читает данные из устройства, обслуживаемого драйвером.
  • Запись: программа записывает данные в устройство, обслуживаемое драйвером.
  • Закрытие: операция, обратная открытию, освобождает занятые при открытии ресурсы.
  • Выгрузка. Драйвер освобождает захваченные ресурсы – память, файлы, устройства и т. п.

Операционная система.

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

На данный момент существует довольно много разновидностей операционных систем, как платных, так и бесплатных, например Linux, Unix, Mac OS X и прочие. Однако самой распространенной и популярной из них можно с уверенностью назвать Microsoft Windows (Майкрософт Виндоус).

Примечательно, что в январе 2009 по данным StatCounter рыночная доля Mac OS X составляла 3,68%, а Linux – 0,64%. Таким образом, альтернативы Windows за последние годы более-менее ощутимо укрепили свои позиции.

С целью привлечь максимальное количество пользователей Microsoft объявила о предоставлении бесплатной возможности перехода на новую операционную систему Windows 10 владельцам ПК c версиями Windows 7 и 8.1, включая тех, кто использует пиратские версии. Новая операционная система Microsoft Windows 10 будет работать не только на ПК, планшетах, смартфонах и игровых консолях Xbox, но на различных устройствах, включая носимую электронику и гибридные компьютеры. Бесплатное распространение Windows 10 среди новых и текущих пользователей даст возможность Microsoft создать экосистему, чтобы составить конкуренцию существующим семействам устройств на базе платформ, разрабатываемых Apple и Google.

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

На серверах безоговорочно правит Linux.

Серверные операционные системы.

Теперь поговорим о самих операционных системах. Первой распространённой операционной системой считается UNIX, которая зародилась к концу 1960-х годов. В то время отраслью и научно-образовательным сообществом был создан целый ряд операционных систем. К ним относятся Atlas (Манчестерский университет), CTTS и ITSS (Массачусетский технологический институт, MIT), THE (Эйндховенский технологический университет), RS4000 (Университет Орхуса) и др. (всего эксплуатировалось более сотни различных ОС). Наиболее развитые операционные системы, такие как OS/360 (IBM), SCOPE (CDC) и завершённый уже в 1970-х годах Multics (MIT и Bell Labs), предусматривали возможность исполнения на многопроцессорных компьютерах.

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

Задуманная и реализованная в 1969 году Кеном Томпсоном при участии нескольких коллег (включая Денниса Ритчи и Брайана Кернигана), операционная система UNIX вобрала в себя многие черты более ранних систем, но обладала целым рядом свойств, отличающих её от большинства предшественниц:

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

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

В конце 1970-х годов сотрудники Калифорнийского университета в Беркли внесли ряд усовершенствований в исходные коды UNIX, включая работу с протоколами TCP/IP. Их разработка стала известна под именем BSD (Berkeley Software Distribution).

Задачу разработать независимую (от авторских прав Bell Labs) реализацию той же архитектуры поставил и Ричард Столлман, основатель проекта GNU.

Благодаря конкурентности реализаций архитектура UNIX стала вначале фактическим отраслевым стандартом, а затем обрела статус и стандарта юридического – ISO/IEC 9945 (POSIX). Только системы, отвечающие спецификации Single UNIX Specification, имеют право носить имя UNIX. К таким системам относятся AIX, HP-UX, IRIX, Mac OS X, SCO OpenServer, Solaris, Tru64 и z/OS.

Операционные системы, следующие стандарту POSIX или опирающиеся на него, называют «POSIX-совместимыми» (чаще встречается словоупотребление «UNIX-подобные» или «семейство UNIX», но оно противоречит статусу торгового знака «UNIX», принадлежащего консорциуму The Open Group и зарезервированному для обозначения только операционных систем, строго следующих стандарту). Сертификация на совместимость со стандартом платная, из-за чего некоторые системы не проходили этот процесс, однако считаются POSIX-совместимыми по существу.

К UNIX-подобным относятся операционные системы, основанные на последней версии UNIX, выпущенной Bell Labs (System V), на разработках университета Беркли (FreeBSD, OpenBSD, NetBSD), на основе Solaris (OpenSolaris, BeleniX, Nexenta), а также Linux, разработанная в части утилит и библиотек проектом GNU и в части ядра – сообществом, возглавляемым Линусом Торвальдсом.

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

Самым заметным эффектом существования этого стандарта стало эффективное разворачивание Интернета в 1990-х годах.

История развития UNIX-подобных систем.

Unix первоначально была написана целиком на ассемблере, что было обычной практикой того времени. Позже, в 1973-75 годах, она была переписана на языке программирования Си. То, что операционная система была написана на языке высокого уровня, позволило упростить её портирование на различные компьютерные платформы. Из-за особенностей лицензии AT&T была вынуждена открывать исходный код операционной системы всем обратившимся, что позволило Unix быстро развиться и стать популярной во многих научных учреждениях и предприятиях.

В 1984 году Bell Labs отделилась от AT&T. Избавившись от необходимости бесплатного лицензирования системы, Bell Labs начала продажи Unix как проприетарного продукта.

Проект GNU был начат в 1983 году Ричардом Столлманом с целью создания «целостной Unix-совместимой программной системы», полностью состоящей из свободного программного обеспечения. Позднее в 1985 Столлман основал Free Software Foundation, а в 1989 году составил GNU General Public License (GNU GPL).

В начале 1990-х многие из программ, необходимых в операционной системе (такие, как библиотеки, компиляторы, текстовые редакторы, командная оболочка UNIX, и оконная система), были завершены, в то время как разработка низкоуровневых элементов, таких как драйверы, демоны и ядра, была приостановлена, и они оставались незавершёнными. В 1991 году Линус Торвальдс решился написать своё собственное ядро, что послужило началом операционной системы Linux.

Linux – общее название Unix-подобных операционных систем, основанных на одноимённом ядре. Ядро Linux создаётся и распространяется в соответствии с моделью разработки свободного и открытого программного обеспечения. Поэтому общее название не подразумевает какой-либо единой «официальной» комплектации Linux; они распространяются в основном бесплатно в виде различных готовых дистрибутивов, имеющих свой набор прикладных программ и уже настроенных под конкретные нужды пользователя.

Официальным логотипом и талисманом Linux является пингвин Tux.

Tux.

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

С тех пор, как ядро Linux было создано для x86-ПК, оно было портировано на множество платформ, включая x86-64, PowerPC и ARM. Linux работает в роутерах, банкоматы, терминалы оплаты, телевизорах, автомобилях, игровых приставках и т.д.

Linux является ключевым компонентом комплекса серверного программного обеспечения LAMP (Linux, Apache, MariaDB/MySQL, Perl/PHP/Python), который приобрёл популярность среди разработчиков и стал одной из наиболее распространённых платформ для хостинга веб-сайтов.

В отличие от коммерческих систем, таких как Windows или Mac OS X, Linux не имеет географического центра разработки. Нет и организации, которая владела бы этой системой; нет даже единого координационного центра. Программы для Linux – результат работы тысяч проектов. Некоторые из этих проектов централизованы, некоторые сосредоточены в фирмах. Многие проекты объединяют хакеров со всего света, которые знакомы только по переписке. Создать свой проект или присоединиться к уже существующему может любой и, в случае успеха, результаты работы станут известны миллионам пользователей. Пользователи принимают участие в тестировании свободных программ, общаются с разработчиками напрямую, что позволяет быстро находить и исправлять ошибки и реализовывать новые возможности.

Именно такая гибкая и динамичная система разработки, невозможная для проектов с закрытым кодом, определяет исключительную экономическую эффективность Linux. Низкая стоимость свободных разработок, отлаженные механизмы тестирования и распространения, привлечение людей из разных стран, обладающих разным видением проблем, защита кода лицензией GNU GPL – всё это стало причиной успеха свободных программ.

Логотип GNU GPL.

GNU General Public License (переводят как Универсальная общественная лицензия GNU, Универсальная общедоступная лицензия GNU или Открытое лицензионное соглашение GNU) – лицензия на свободное программное обеспечение, созданная в рамках проекта GNU в 1988 г., по которой автор передаёт программное обеспечение в общественную собственность.

Цель GNU GPL – предоставить пользователю права копировать, модифицировать и распространять (в том числе на коммерческой основе) программы, а также гарантировать, что и пользователи всех производных программ получат вышеперечисленные права. Принцип «наследования» прав называется «копилефт» (транслитерация c англ. copyleft) и был придуман Ричардом Столлманом. По контрасту с GPL, лицензии проприетарного ПО «очень редко дают пользователю такие права и обычно, наоборот, стремятся их ограничить, например, запрещая восстановление исходного кода». Лицензируя работу на условиях GNU GPL, автор сохраняет за собой авторство.

Как уже говорилось ранее Linux создаётся и распространяется в соответствии с моделями разработки свободного и открытого программного обеспечения, однако важно различать два этих понятия.

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

Термин open source (англ. программное обеспечение с открытыми исходными кодами) был использован в качестве определения в 1998 году Эриком Реймондом и Брюсом Перенсом, которые утверждали, что термин free software (свободное программное обеспечение) в английском языке неоднозначен и смущает многих коммерческих предпринимателей.

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

Отличие между движениями открытого ПО и свободного ПО заключается в основном в приоритетах. Сторонники термина «open source» делают упор на эффективность открытых исходников как метода разработки, модернизации и сопровождения программ. Сторонники термина «free software» считают, что именно права человека на свободное распространение, модификацию и изучение используемых им программ являются главным достоинством свободного открытого ПО.

По мнению Ричарда Столлмана, разрекламированность «Open Source» несколько вредит свободному ПО, так как некоторые разработчики и пользователи ПО «с открытыми исходниками» совсем не против собственнического ПО, и люди останавливаются на Open Source, не доходя до понятий о свободе.

Существуют программы, имеющие открытый исходный код, но не являющиеся свободными, например, UnRAR, распаковщик RAR-архивов. Его исходный код находится в открытом доступе, но лицензия запрещает использовать его для создания RAR-совместимых архиваторов. Другим популярным примером может быть программа шифрования TrueCrypt: её лицензия отнюдь не свободная, но исходный код при этом открыт, хотя менять его нельзя, можно лишь проверять работоспособность и «честность».

В Linux пользователи работают через интерфейс командной строки (CLI), графический интерфейс пользователя (GUI), или, в случае встраиваемых систем, через элементы управления соответствующих аппаратных средств. Дистрибутивы, специально разработанные для серверов, могут использовать командную строку в качестве единственного интерфейса. На настольных системах наибольшей популярностью пользуются пользовательские интерфейсы, представляющие собой окружение рабочего стола в виде оконного менеджера на подобие Mac OS X или Windows. Интерфейс Linux не имеет жесткой привязки к операционной системе. Его легко можно заменить одной из имеющихся бесплатных альтернатив: Unity, KDE, Xfce, LXDE, GNOME 3 Shell, Cinnamon или MATE.

Пример GUI Ubuntu Linux.

Наиболее популярными дистрибутивами Linux являются: deb-based (Debian, Mint, Ubuntu), pacman-based (Arch Linux, Chakra, Manjaro), RPM-based (RedHat, Fedora, Mageia, OpenSUSE), source-based (Slackware, Gentoo).

Семейство операционных систем Linux.

В настоящее время операционная система Linux также лидирует на рынке смартфонов в виде операционной системы Android.

Операционная система Android.

Android – операционная система для смартфонов, планшетных компьютеров, электронных книг, цифровых проигрывателей, наручных часов, игровых приставок, нетбуков, смартбуков, очков Google и других устройств. Основана на ядре Linux и собственной реализации виртуальной машины Java от Google. Изначально разрабатывалась компанией Android Inc., которую затем купила Google. Впоследствии Google инициировала создание альянса Open Handset Alliance (OHA), который сейчас занимается поддержкой и дальнейшим развитием платформы. 21 октября 2008 года альянс OHA опубликовал исходный код платформы Android. Общий объём исходного кода Android составил 2,1 ГБ. «Предпочтительной лицензией» на исходный код Android является лицензия Apache 2.0.

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

Apple Inc. – американская корпорация, производитель персональных и планшетных компьютеров, аудиоплееров, телефонов, программного обеспечения. Один из пионеров в области персональных компьютеров и современных многозадачных операционных систем с графическим интерфейсом. Штаб-квартира расположена в Купертино, штат Калифорния. Благодаря инновационным технологиям и эстетичному дизайну, корпорация Apple создала уникальную репутацию, сравнимую с культом, в индустрии потребительской электроники.

Логотип Apple.

OS X – проприетарная операционная система производства Apple. OS X значительно отличается от предыдущих, «классических» версий Mac OS. Основа системы – POSIX-совместимая операционная система Darwin, являющаяся свободным программным обеспечением. Её ядром является XNU, в котором используется микроядро Mach и стандартные сервисы BSD. Все возможности Unix в OS X доступны через консоль. В OS X (как и в любой UNIX-системе) используется вытесняющая многозадачность и защита памяти, позволяющие запускать несколько изолированных друг от друга процессов, каждый из которых не может прервать или модифицировать все остальные.

16 октября 2014 года вышла новая операционная система для Mac OS X Yosemite. С выходом OS X 10.10 Yosemite у операционной системы поменялся не только интерфейс, но и основательно изменилась функциональность. Эта операционная система является первой версией OS X, которая получила очень тесную интеграцию с iOS устройствами за рамками iCloud.

В OS X 10.10 Yosemite Apple предприняла некоторые шаги для того, чтобы максимально упростить внешний вид своей операционной системы. Сделано это было для того, чтобы пользователь смог сосредоточиться на самом важном – на контенте. Эта мысль является ключевой в концепции дизайна, которую Apple пропагандирует вот уже более тринадцати лет.

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

Пример GUI OS X 10.10 Yosemite.

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

В таком подходе лично есть как плюсы так и минусы. Отлично то, что для людей, которые пользуются исключительно продуктами Apple теперь все устройства связаны при помощи iCloud и введя логин и пароль от Apple ID можно добиться слаженной работы и не заметности в циркуляции пользовательских данных между устройствами в разных задачах: начиная от обработки фотографий и заканчивая написанием текстовых документов и электронных писем. Плохо то, что в такую систему нельзя интегрировать сторонние устройства. Заставить «дружить» отдельные программы одновременно с Android, iOS, Windows Phone или OS X можно только если разработчик предусмотрел такую возможность через другие облачные хранилища информации.

Бесспорно, это самое масштабное обновление OS X за последние семь лет. Apple проделала огромную работу, результатом которой стала новая версия операционной системы с, не побоюсь этого слова, революционной функциональностью, благодаря которой OS X 10.10 Yosemite вышла на новый уровень удобства использования и эргономики.

Последней из рассматриваемых систем выступает операционная система Windows разрабатываемая компанией Microsoft.

Microsoft Corporation – одна из крупнейших транснациональных компаний по производству проприетарного программного обеспечения для различного рода вычислительной техники – персональных компьютеров, игровых приставок, КПК, мобильных телефонов и прочего, разработчик наиболее широко распространённой на данный момент в мире программной платформы – семейства операционных систем Windows. Подразделения компании также производят семейство игровых консолей Xbox, а также аксессуары для персональных компьютеров. Штаб-квартира компании находится в городе Редмонд, штат Вашингтон, США.

Компания начинает свою историю с 1975 года, когда друзья-студенты Гарвард Билл Гейтс и Пол Аллен, прочитав опубликованную 1 января 1975 года в журнале «Popular Electronics (англ.)» статью о новом персональном компьютере Altair 8800, разработали для него интерпретатор языка Basic. Через месяц, 1 февраля, было подписано лицензионное соглашение с компанией Micro Instrumentation and Telemetry Systems (MITS), производителем этого ПК, об использовании Basic в составе ПО для Altair.

Логотип Microsoft Corporation.

В начале сентября 2013 года Microsoft объявила о покупке у финской Nokia её подразделения по производству и обслуживанию мобильных телефонов Devices & Services за 5,44 млрд евро. По словам аналитиков, подобным образом Microsoft, соединив разработку мобильных устройств и программной начинки для них, попытается сразиться с Apple.

Microsoft Windows – семейство проприетарных операционных систем корпорации Microsoft, ориентированных на применение графического интерфейса при управлении.

Первые версии Windows не были полноценными операционными системами, а являлись надстройками к операционной системе MS-DOS и были по сути многофункциональным расширением, добавляя поддержку новых режимов работы процессора, поддержку многозадачности, обеспечивая стандартизацию интерфейсов аппаратного обеспечения и единообразие для пользовательских интерфейсов программ. Предоставляли встроенные средства GDI и USER для создания графического интерфейса. Первые версии Windows вообще состояли из трех модулей – KERNEL, GDI и USER. Первый из них предоставлял вызовы управления памятью, запуском .EXE-файлов и загрузкой .DLL-файлов, второй – графику, третий – окна.

Последней версией операционной системы Microsoft Windows является Windows 10. Windows 10 – операционная система семейства Windows NT, следующая за Windows 8.1. После Windows 8 система получила номер 10, минуя 9. Среди наиболее важных изменений значится возвращение привычного меню «Пуск», функция виртуальных рабочих столов и работа приложений Windows 8 в оконном режиме.

Пример GUI Microsoft Windows 10.

Windows 10 – единая ОС для всевозможных устройств: компьютеров, планшетов, смартфонов, Xbox One и других. Будут доступны единая платформа разработки и единый магазин универсальных приложений, совместимых со всеми поддерживаемыми устройствами. В Windows 10 также появится голосовой помощник Cortana.

Устройства под управлением Windows 10.

Интересно, что пользователи Windows 7, Windows 8.1 и Windows Phone 8.1 получат возможность бесплатного апгрейда до Windows 10 в первый год ее продаж. А по словам вице-президента Microsoft Терри Мейерсона, понятие «версия Windows» вообще утратит смысл: компания начнет распространять новую операционную систему как сервис.

Microsoft также продолжит взимать плату за лицензии на Windows 10 с производителей устройств – следовательно, для покупателей новых Windows-устройств стоимость платформы будет входить в стоимость покупки.

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

По той же причине хочется отметить одну особенность операционной системы Windows. При установке операционной системы, по умолчанию ставится целый пакет стандартных программ Windows, о которых простому пользователю просто ничего не известно. Их можно запустить с помощью команды «Выполнить» (по умолчанию сочетание клавиш windows + r) введя имя программы. Самой распространенной программой такого рода является regedit, простого способа запуска данной программы через меню Windows не существует, это связано с тем, что работа с редактором реестра сопряжена с некоторым риском и поэтому он скрыт от глаз простого пользователя.

Администратор сайта: Колосов Михаил
email:
Copyright © 2011-2024. All rights reserved.

Классификация программного обеспечения

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

2.1. Классы программного обеспечения

Под программным обеспечением понимается совокупность программ, выполняемых вычислительной системой [3, 4, 12]. К программному обеспечению относится также вся область деятельности по проектированию и разработке ПО : технология проектирования программ; методы тестирования программ; методы доказательства правильности программ; анализ качества работы программ; документирование программ ; разработка и использование программных средств, облегчающих процесс проектирования программного обеспечения, и многое другое.

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

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

Оба типа программного обеспечения взаимосвязаны и могут быть представлены в виде диаграммы, изображенной на рис.2.1. Как видно, каждая область тесно взаимодействует с другой. Системное программное обеспечение обеспечивает и контролирует доступ к аппаратному обеспечению компьютера. Прикладное программное обеспечение взаимодействует с аппаратными компонентами через системное. Конечные пользователи в основном работают с прикладным программным обеспечением. Чтобы обеспечить аппаратную совместимость, каждый тип программного обеспечения разрабатывается для конкретной аппаратной платформы.

Структура и назначение программного обеспечения

Рис. 2.1. Структура и назначение программного обеспечения

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

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

  • аппаратная часть автономных компьютеров и сетей ЭВМ;
  • функциональные задачи различных предметных областей;
  • технология разработки программ.

Для поддержки информационной технологии в этих областях выделяют соответственно три класса программных продуктов, представленных на рис.2.2:

  • системное программное обеспечение;
  • прикладное программное обеспечение;
  • инструментальное программное обеспечение.

Системное программное обеспечение ( System Software ) – совокупность программ и программных комплексов, предназначенная для обеспечения работы компьютера и сетей ЭВМ. Системное программное обеспечение выполняет следующие задачи:

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

Классы программных продуктов

Рис. 2.2. Классы программных продуктов

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

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

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

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

Инструментарий технологии программирования представляет собой совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов [12].

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

2.2. Структура системного программного обеспечения

Системное программное обеспечение (рис.2.3) можно разделить на базовое программное обеспечение , которое, как правило, поставляется вместе с компьютером, и сервисное программное обеспечение , которое может быть приобретено дополнительно.

Базовое программное обеспечение ( base software ) – минимальный набор программных средств, обеспечивающих работу компьютера. Сервисное программное обеспечение включает программы и программные комплексы, которые расширяют возможности базового программного обеспечения и организуют более удобную среду работы пользователя.

Структура системного программного обеспечения

Рис. 2.3. Структура системного программного обеспечения

В базовое программное обеспечение входят:

  • операционная система;
  • операционные оболочки (обычно текстовые и графические);
  • сетевая операционная система.

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

Наиболее традиционное сравнение ОС осуществляется по следующим характеристикам процесса обработки информации:

  • управление памятью (максимальный объем адресуемого пространства, типы памяти, технические показатели использования памяти);
  • функциональные возможности вспомогательных программ (утилит) в составе операционной системы;
  • наличие компрессии диска;
  • возможность архивирования файлов;
  • поддержка многозадачного режима работы;
  • поддержка сетевого программного обеспечения;
  • наличие качественной документации;
  • условия и сложность процесса инсталляции;
  • мобильность (переносимость), безопасность, надежность и др.

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

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

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

Расширением базового программного обеспечения компьютера является набор сервисных, дополнительно устанавливаемых программ (или программ, поставляемых непосредственно с операционными системами), которые можно классифицировать по функциональному признаку следующим образом:

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

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

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

Программное обеспечение которое поддерживает процесс программирования называется

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

— аппаратная часть автономных компьютеров и сетей ЭВМ;

— функциональные задачи различных предметных областей;

— технология разработки программ.

Рис. 8.9. Классы программных продуктов.

Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов, представленных на рис. 8.9:

— системное программное обеспечение;

— пакеты прикладных программ;

— инструментарий технологии программирования.

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

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

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

Системное программное обеспечение (System Software) — совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ.

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

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

Пакет прикладных программ (application program package) — комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области.

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

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

СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ.

Структура системного программного обеспечения.

На рис. 8.10 представлена структура системного программного обеспечения — базового программного обеспечения, которое, как правило, поставляется вместе с компьютером, и сервисного программного обеспечения, которое может быть приобретено дополнительно.

Базовое программное обеспечение (base software) — минимальный набор программных средств, обеспечивающих работу компьютера.

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

Рис. 8.10. Классификация системного программного обеспечения компьютера.

В базовое программное обеспечение входят:

— операционные оболочки (текстовые и графические);

— сетевая операционная система.

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

В секторе программного обеспечения и операционных систем ведущее положение занимают фирмы IBM, Microsoft, UNISYS, Novell. Доход от продаж операционных систем в среднем превышает 20 млрд. дол. в год. Рассмотрим наиболее распространенные типы операционных систем.

Операционные системы для персональных компьютеров делятся на:

— одно- и многозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);

— одно- и многопользовательские (в зависимости от числа пользователей, одновременно работающих с операционной системой);

— непереносимые и переносимые на другие типы компьютеров;

— несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.

Большое значение сегодня имеет применение 32-разрядных операционных систем для персональных компьютеров:

— OS/2 во всех модификациях (IBM);

— Windows NT во всех модификациях (Microsoft);

— Unix во всех модификациях;- Next Step 3.2 (Next);

— SCO Open Desktop 3.0 (Santa Cruz Operation);

— Solaris 2.1 (SunSoft) — x86;

— UnixWare Personal Edition 1.0 (Novell).

По данным опроса пользователей программных продуктов, проведенного в 1996 г., мнение респондентов относительно операционных систем распределилось так, как указано в табл. 8.1.

Таблица 8.1. Рейтинг операционных систем.

Считают лучшей

MS DOS

Операционная система MS DOS (фирма Microsoft) появилась в 1981 г. В настоящее время существуют версии 6.22 и 7.0 (в составе Windows 95), а также ее разновидности других фирм-разработчиков (DR DOS, PC DOS). Сегодня эта операционная система установлена на подавляющем большинстве персональных компьютеров. Начиная с 1996 г. MS DOS распространяется в виде Windows 95 — 32-разрядной многозадачной и многопоточной операционной системы с графическим интерфейсом и расширенными сетевыми возможностями.

Операционная система OS/2 разработана фирмой IBM для персональных компьютеров на основе системной прикладной архитектуры, ранее используемой для больших ЭВМ. Это многозадачная, однопользовательская, высоконадежная операционная система, обеспечивающая как текстовый, так и графический интерфейс пользователя. OS/2 обеспечивает:

— поддержку графического интерфейса пользователя;

— одновременную обработку нескольких приложений;

— многопоточную обработку нескольких задач одного приложения;

— 32-разрядную обработку данных;

— сжатие данных при записи на магнитные диски;

Важной особенностью операционной системы OS/2 является высокопроизводительная файловая система HPFS (High Perfomance File System), имеющая преимущества для серверов баз данных (в отличие от MS DOS поддерживаются длинные имена файлов), поддержка мультипроцессорной обработки — до 16 процессоров типа INTEL и PowerPC. Версия OS/2 Warp работает с мультисредой и имеет встроенный доступ в сеть Internet, систему распознавания речи VoiceType, интегрированную версию Lotus Notes Mail для передачи через Internet почты. В OS/2 могут выполняться прикладные программы Windows 3.1 и Win32s, но| не могут выполняться приложения, работающие в среде Windows 95 или Windows NT. Спецификация Open 32 позволяет поставщикам программного обеспечения переносить его на новую платформу.

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

Unix обладает наиболее важными качествами, такими, как:

— переносимость прикладных программ с одного компьютера на другой;

— поддержка распределенной обработки данных в сети ЭВМ;

— сочетаемость с процессорами RISC.

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

Наиболее традиционное сравнение ОС осуществляется по следующим характеристикам процесса обработки информации:

— управление памятью (максимальный объем адресуемого пространства, типы памяти, технические показатели использования памяти);

— функциональные возможности вспомогательных программ (утилит) в составе операционной системы;- наличие компрессии диска;

— возможность архивирования файлов;- поддержка многозадачного режима работы;

— поддержка сетевого программного обеспечения;

— наличие качественной документации;

— условия и сложность процесса инсталляции.

Сетевые операционные системы — комплекс программ, обеспечивающий обработку, передачу и хранение данных в сети. Сетевая ОС предоставляет пользователям различные виды сетевых служб (управление файлами, электронная почта, процессы управления сетью и др.), поддерживает работу в абонентских системах. Сетевые операционные системы используют архитектуру клиент-сервер или одноранговую архитектуру. Вначале сетевые операционные системы поддерживали лишь локальные вычислительные сети (ЛВС), сейчас эти операционные системы распространяются на ассоциации локальных сетей. Наибольшее распространение имеют LAN Server, NetWare, VINES. Windows NT, Windows 95.

Они оцениваются по комплексу критериев: производительность, разнообразие возможностей связи пользователей, возможности администрирования.

Основные характеристики широко распространенной сетевой операционной системы Novell NetWare рассмотрены в гл. 7. Операционная система Windows NT является многозадачной, предназначенной для архитектуры клиент-сервер и использования различных протоколов транспортного уровня сетевой операционной системы, имеет 32-разрядную архитектуру и обеспечивает функции локальной сети:

— возможность каждой абонентской системы в сети быть сервером или клиентом;

— совместную работу группы пользователей;- адресацию оперативной и внешней памяти большого размера;

— многозадачность и многопоточность обработки данных;

— поддержку мультипроцессорной обработки и др..

В табл. 8.2 приведены характеристики некоторых популярных ОС.

Таблица 8.2. Характеристики операционных систем.

Операционная система

Объем ОЗУ, Мбайт

Память на МД, Мбайт

Средства связи с Internet

Сетевые средства связи

Многопро-цессорная обработка

Средства взаимодействия прикладных программ

MS Windows NT, Workstation 4.0

Explorer 2.0, Peer Web Services, Point to Point, FTP, telnet

Banyan, Digital, IBM, Novell, Microsoft SNA, TCP/IP и др.

MS Windows NT 3.51

FTP, Gopher, Newsreader/2,

Telnet, Web Explorer

ArtiSoft IBM, Novell, Microsoft, TCP/IP

Java, OpenDoc, OpenGL, PM API, Win32s

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

— IBM Adstar Distributed Storage Manager 1.0 — средство резервного копирования в масштабах предприятия, которое позволяет обслуживать ЭВМ различных классов (мэйнфреймы, мини-ЭВМ, настольные системы), используя при этом один общий интерфейс);

— Symantec Norton Administrator for Networks 2.0 — обеспечивает администрирование локальной вычислительной сети и управление приложениями для корпоративных сетей (масштаба предприятия);

— Microsoft NT File and Print Service for NetWare — устраняет барьеры между NetWare и Windows NT, обеспечивает полную эмуляцию для NT возможностей среды NetWare;

— Armon OnSite Manager — сегментирование сетей, фильтрация и поиск неисправностей в сетях масштаба предприятия и др.

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

Наиболее популярны следующие виды текстовых оболочек операционной системы MS DOS:

— Norton Commander 5.0 — фирма Symantec (см. гл. 10);

— Norton Navigator и др.

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

Во всем мире имеют огромную популярность такие графические оболочки MS DOS, как Windows 3.1 (см. гл. 12), Windows 3.11 for WorkGroup, которые позволяют изменить среду взаимодействия пользователя с компьютером, расширяют набор основных (диспетчер файлов, графический редактор, текстовый редактор, картотека и т.п.) и сервисных функций, обеспечивающих пользователю интегрированную информационную технологию вплоть до создания одноранговых локальных сетей.

Расширением базового программного обеспечения компьютера является набор сервисных, дополнительно устанавливаемых программ, которые можно классифицировать по функциональному признаку следующим образом (см. рис. 8,10):

— программы диагностики работоспособности компьютера;

— антивирусные программы, обеспечивающие защиту компьютера, обнаружение и восстановление зараженных файлов;

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

— программы архивирования данных, которые обеспечивают процесс сжатия информации в файлах с целью уменьшения объема памяти для ее хранения;- программы обслуживания сети.

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

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

Наибольшее распространение сегодня имеют комплекты утилит:

— Norton Utilities — фирма Symantec;

— Checkit PRO Deliuxe 2.0 — фирма Touch Sione;

— PC Tools for Windows 2.0;

— программа резервного копирования HP Colorado Backup for Windows 95.

Антивирусные продукты оцениваются по ряду критериев:

— точность обнаружения (идентификации) вируса;

— возможность защиты данных от инфицирования;

— эффективное устранение обнаруженных вирусов (восстановление файлов);

— простота использования;- стоимость;

— способность работы в локальных сетях;

— возможность обнаружения и устранения boot-вирусов дисков.

Наиболее известные антивирусные программы:

— Virex (Microcom Inc,) — резидентный, сканирует известные вирусные модификации, использует метод контрольных сумм для слежения и контроля состояния файлов и каталогов, ограниченно используется в сетях;

— Anti-Virus (Central Point Software Inc.) — обнаружение завирусованных файлов без исправления, используется как в среде DOS, так и Windows;

— антивирусный комплект N2 «Диалог-Наука»;- AVP Toolkit У. Касперского;

— Norton Antivirus for Win95 -автоматическое создание резервных копий данных boot-секторов и критических файлов.

Минимальный состав системного программного обеспечения современных персональных компьютеров.

В поставку персонального компьютера для обеспечения его нормального функционирования обычно входят:

— операционная система MS DOS 6-22;

— текстовая оболочка операционной системы Norton Commander 4.0/5.0;

— графическая оболочка операционной системы Windows 3.1/3.11;

— утилиты для обслуживания файлов, обеспечения надежной работы ЭВМ — Norton Utilities 7.0/8.0;

— программы диагностики и тесты ЭВМ.

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

ИНСТРУМЕНТАРИЙ ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ.

Состав и назначение инструментария технологии программирования.

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

В рамках этих направлений сформировались следующие группы программных продуктов (рис.8.1.):

— средства для создания приложений, включающие:

  • локальные средства, обеспечивающие выполнение отдельных работ по созданию программ;
  • интегрированные среды разработчиков программ, обеспечивающие выполнение комплекса взаимосвязанных работ по созданию программ;

— СASE-технология (Computer-Aided System Engineering), представляющая методы анализа, проектирования и создания программных систем и предназначенная дли автоматизации процессов разработки и реализации информационных систем.

Рис. 8.11. Классификация инструментария технологии программирования.

Средства для создания приложений.

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

Язык программирования — формализованный язык для описания алгоритма решения задачи на компьютере.

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

Языки программирования, если в качестве признака классификации взять синтаксис образования его конструкций, можно условно разделить на классы:

— машинные языки (computer language) — языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);

— машинно-ориентированные языки (computer-oriented language) — языки программирования, которые отражают структуру конкретного типа компьютера (ассемблеры);

— алгоритмические языки ( algorithmic language) — не зависящие от архитектуры компьютера языки программирования для отражения структуры алгоритма (Паскаль, j Фортран, Бейсик и др.);

— процедурно-ориентированные языки (procedure-oriented language) — языки программирования, где имеется возможность описания программы как совокупности процедур (подпрограмм);

— проблемно-ориентированные языки (universal programming language) — языки программирования, предназначенные для решения задач определенного класса (Лисп, РПГ, Симула и др.);

— интегрированные системы программирования.

Другой классификацией языков программирования является их деление на языки, ориентированные на реализацию основ структурного программирования, и объектно-ориентированные языки, поддерживающие понятие объектов и их свойств и методов обработки. Более подробно об этом делении см. гл. 18 и 19.

Программа, подготовленная на языке программирования, проходит этап трансляции, тогда происходит преобразование исходного кода программы (source code) в объектный код (object code), который далее пригоден к обработке редактором связей. Редактор связей — специальная программа, обеспечивающая построение загрузочного модуля (load module), пригодного к выполнению (рис, 8.12.).

Рис. 8.12. Схема процесса создания загрузочного модуля программы.

Трансляция может выполняться с использованием средств компиляторов (compiler) или интерпретаторов (interpreter). Компиляторы транслируют всю программу, но без ее выполнения. Интерпретаторы, в отличие от компиляторов, выполняют пооператорную обработку и выполнение программы.

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

Системы программирования (programming system) включают:

— интегрированную среду разработчика программ;

— средства оптимизации кода программ;

— набор библиотек (возможно с исходными текстами программ);

— сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;

— документатор исходного кода программы;

— систему поддержки и управления проектом программного комплекса.

Средства поддержки проектов — новый класс программного обеспечения, предназначен для:

— отслеживания изменений, выполненных разработчиками программ;

— поддержки версий программы с автоматической разноской изменений;

— получения статистики о ходе работ проекта.

Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, такими, как:

— библиотека функций, процедур, объектов и методов обработки;

— конструкторы экранных форм и отчетов;

— языки запросов высокого уровня;

— языки манипулирования данными;

— конструкторы меню и многое другое.

Более подробно эти средства рассмотрены в гл. 19.

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

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

Средства CASE-технологии — относительно новое, сформировавшееся на рубеже 80-х г направление. Массовое применение затруднено крайне высокой стоимостью и предъявляемыми требованиями к оборудованию рабочего места разработчика.

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

Средства CASE-технологий делятся на две группы:

— встроенные в систему реализации — все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);

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

Основное достоинство CASE-технологии — поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспорта/импорта любых фрагментов проекта, организационного управления проектом.

Некоторые CASE-технологии ориентированы только на системных проектировщиков и предоставляют специальные графические средства для изображения различного вида моделей:

— диаграмму потоков данных (DFD — data flow diagrams) совместно со словарями данных и спецификациями процессов;

— диаграмму «сущность-связь» (ERD — entity relationship diagrams), являющуюся инфологической моделью предметной области (см. гл. 15);

— диаграмму переходов состояний (STD — state transition diagrams), учитывающую события и реакцию на них системы обработки данных.

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

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

Выполняются автоматизированное проектирование спецификаций программ (задание основных характеристик для разработки программ) и ведение словаря данных.

Другой класс CASE-технологий поддерживает только разработку программ, включая:

— автоматическую генерацию кодов программ на основании их спецификаций;

— проверку корректности описания моделей данных и схем потоков данных;

— документирование программ согласно принятым стандартам и актуальному состоянию проекта;

— тестирование и отладку программ.

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

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

Большинство CASE-технологий использует также метод «прототипов» для быстрого создания программ на ранних этапах разработки. Кодогенерация программ осуществляется автоматически — до 85 — 90% объектных кодов и текстов на языках высокого уровня, а в качестве языков наиболее часто используются Ада, Си, Кобол.

Данный класс программных средств, как уже отмечалось выше, весьма представителен. Приведем характеристику некоторых продуктов, которые предлагает фирма Microsoft.

Макроассемблер MASM, обеспечивающий создание программ, быстро манипулирующих с данными большой размерности, поддерживающих различные форматы объектных файлов. Кроме того, можно создавать динамические библиотеки (DLL, VBX) для Microsoft Visual Basic, генерировать DOS-, Windows-приложения. Средства данного языка наиболее часто используются для разработки драйверов — специальных программ для эмуляции нестандартных устройств, подключаемых к компьютеру, различных преобразований форматов данных, поддержания интерфейсов доступа к данным в разнородных программных системах.

Компилятор Visual C++ for Windows Professional Edition 1.5 является системой программирования объектно-ориентированного типа, обеспечивающей просмотр иерархии классов объектов приложения (Source Browser), работу отладчика (Debugger), компилятора и др. В состав пакета входит библиотека классов MFC (Microsoft Foundation Classes Library), содержащая классы для реализации сложного пользовательского интерфейса, средства изготовления структуры пользовательского интерфейса (AppWizard), создания диалогов, меню, икон, растров, курсоров (Арр Studio), свойств новых интерфейсных классов, наследующих свойства классов MFC (Class Wizard). Компилятор полностью поддерживает стандарт OLE 2.0 системы Windows (см. ниже), ODBC (Open DataBase Connectivity) — для обеспечения доступа к данным в различных форматах, хранимых как в локальной базе данных, так и на сервере баз данных.

Visual Basic for Windows 4.0 -система программирования объектно-ориентированного типа, транслирующая команды по мере их ввода, позволяющая создавать и управлять множеством объектов (кнопками, флажками, комбинированными списками, окнами ввода, переключателями, линейками и т.п.), поддержку объектов OLE 2.0. Данный язык является языковой платформой приложений Microsoft Office (см. гл. 18) и имеет диалект Microsoft Basic for Application.

Microsoft IMSL Mathematical and Statistical Library -математическая и статистическая библиотеки набора функций и примеров их использования (более 1000), которые можно вызвать из программ, написанных на языке C++.

Средства поддержки проектов Microsoft Delta for Windows, используемые для независимой от всего проекта новой версии программного модуля, отслеживания новых версий, автоматической разноски изменений по копиям проекта программной системы.

Технологические стандарты Microsoft, которые могут быть использованы разработчиками прикладных программ.

OLE (Object Linking and Embedding) 2-0 — позволяющий создавать приложения, включающие в свой состав объекты, полученные из других приложений.

Объект имеет две составляющие:

— внешнее представление объекта (presentation data);

— способ редактирования объекта (native data).

Любой объект может либо внедряться (embedding), либо связываться (linking) с приложением.

Технология OLE 2.0 обеспечивает:

— редактирование «чужого» объекта внутри приложения;

— экономию трудовых затрат на разработку программ за счет ссылок на существующие внешние объекты;

— информационную интеграцию приложений.

ODBC (Open DataBase Connectivity) — создание единого интерфейса доступа к различным базам данных на различных платформах.

Программа выступает в качестве клиента, а база данных — в качестве сервера, доступ реализуется с помощью драйвера. Разработчики новых СУБД обеспечивают создание соответствующих их форматам драйверов. Для создания прикладных программ, использующих стандарт ODBC, используется инструментарий ODBC Sowtware Development Kit (SDK).

MAPI (Messaging Application Program Interface) — обеспечение независимости приложений от систем связи в режиме телекоммуникаций, который также работает по принципу драйвера.

MAPI поддерживает стандарт Х.400 Association’s Common Messaging Calls (CMC), a также ряд других интерфейсов (API, SDK, DDK).

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

— Clarion for Windows 1.5 и др.

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

Рассмотрим систему Delphi 2.0, позволяющую создавать приложения типа клиент-сервер. Разработчику программ с использованием Delphi 2.0 предоставлены:

— объектно-ориентированный язык программирования;

— высокопроизводительный компилятор — скорость компилирования 120000 строк в минуту, это в настоящее время мировой рекорд скорости компиляции;

— объектно-ориентированная модель многократно используемых компонентов;

— средства наглядного (визуального) создания программ — набор визуальных средств для создания системы меню, экранных форм, отчетных форм и т.п., использование библиотеки визуальных компонентов и визуальных объектов.

— масштабируемая технология работы с базами данных — использование реляционно полного языка SQL, встроенная поддержка баз данных под управлением СУБД Oracle, Informix, Sybase, Interbase; применение локального сервера Interbase для отладки приложений;

— принцип «открытой системы», возможность добавления новых средств и перенос на другие платформы. Так, первоначально предполагается использовать среду Windows 3.1., затем — Windows 95 и Windows NT.

— нажатие левой кнопкой мыши один раз;

— двукратное нажатие левой кнопкой мыши;

— перемещение мыши (уход от объекта, фокусировка объекта и т.п.).

Свойства объектов можно заранее фиксировать либо изменять программным способом во время работы программы. Для каждого события создается программный код.

В состав системы входит менеджер проектов, который предназначен для управления проектами в среде Delphi, позволяя объединять ряд форм в единое приложение, добавлять и удалять файлы, перемещаться по файлам проекта, просматривая исходные тексты программ обработки событий и т.п. Для удобства редактирования объектов используется так называемый браузер объектов (Browser). Интегрированный отладчик позволяет выполнять пошаговую трассировку кода, задавать точки останова (Break points). Для создания пользовательских меню приложений служит редактор меню, позволяющий использовать готовые либо создавать новые шаблоны меню. Графический редактор дает возможность разработчику приложения создавать графические изображения, кнопки, иконки, использовать масштабирование и вставку внешних графических изображений.

Локальная версия среды разработки — Delphi Desktop Edition, предназначена для создания приложений, работающих с локальными базами данных (dBASE, Paradox). Разработчики могут создавать динамические библиотеки, которые будут доступны из программ, написанных на языках C++, Borland Pascal, Paradox for Windows, dBASE for Windows.

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

ПАКЕТЫ ПРИКЛАДНЫХ ПРОГРАММ.

Характеристика пакетов прикладных программ.

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

Примерная классификация и типовые представители прикладного программного обеспечения представлены в табл. 8.3 и на рис.8.13.

Рис. 8.13. Классификация пакетов прикладных программ.

Проблемно-ориентированные ППП.

Это самый представительный класс программных продуктов, внутри которого проводите классификация по разным признакам:

— типам предметных областей;

— функциям и комплексам задач, реализуемых программным способом, и др.

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

— ППП автоматизированного бухгалтерского учета;

— ППП финансовой деятельности;

— ППП управления персоналом (кадровый учет);

— ППП управления материальными запасами;

— ППП управления производством;

— банковские информационные системы и т.п.

Основные тенденции в области развития проблемно-ориентированных программных средств:

— создание программных комплексов в виде автоматизированных рабочих мест (АРМ) управленческого персонала;

— создание интегрированных систем управления предметной областью на базе вычислительных сетей, объединяющих АРМы в единый программный комплекс с архитектурой клиент-сервер;

— организация данных больших информационных систем в виде распределенной базы данных на сети ЭВМ;

— наличие простых языковых средств конечного пользователя для запросов к базе данных;

— настройка функций обработки силами конечных пользователей (без участия программистов);

— защита программ и данных от несанкционированного доступа (парольная защита на уровне функций, режимов работы, данных).

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

Наиболее важно для данного класса программных продуктов создание дружественного интерфейса для конечных пользователей.

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

ППП автоматизированного проектирования.

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

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

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

Представители данного класса программных продуктов:

1.Настольные системы управления базами данных (СУБД), обеспечивающие организацию и хранение локальных баз данных на автономно работающих компьютерах либо централизованное хранение баз данных на файл-сервере и сетевой доступ к ним.

В настоящее время наиболее широко представлены реляционные СУБД для персональных компьютеров, осуществляющие:

— работу с базой данных через экранные формы;

— организацию запросов на поиск данных с помощью специальных языков запросов высокого уровня;

— генерацию отчетов различной структуры данных с подведением промежуточных и окончательных итогов;

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

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

В современных СУБД (например, в СУБД Access 2.0) содержатся элементы CASE-технологии процесса проектирования, в частности:

— визуализирована схема баз данных;

— осуществлена автоматическая поддержка целостности баз данных при различных видах обработки (включение, удаление или модификация данных баз данных);

— предоставляются так называемые мастера, обеспечивающие поддержку процесса проектирования (режим «конструктор») — мастер таблиц, мастер форм, мастер отчетов, построитель меню и т.п.;

— созданы для широкого использования прототипы (шаблоны) структур баз данных, форм, отчетов и т.д.

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

Более подробно о СУБД см. гл. 15.

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

Многопользовательские СУБД (типа Paradox, Access, FoxPro и др.) в сетевом варианте обработки данных хранят информацию на файл-сервере — специально выделенном компьютере в централизованном виде, но сама обработка данных ведется на рабочих станциях. Серверы баз данных, напротив, всю обработку (хранение, поиск, извлечение и передачу данных клиенту) данных выполняют самостоятельно, одновременно обеспечивая данными большое число пользователей сети.

Общим для различных видов серверов баз данных является использование реляционного языка SQL (Structured Query Language) для реализации запросов к данным.

Большинство серверов баз данных может использовать одновременно несколько платформ (Windows NT, Unix, OS/2 и др.), поддерживает широкий спектр протоколов передачи данных (IPX, TCP/IP, X.25 и др.).

Некоторые серверы реализуют распределенное хранение информации в сети, поддерживают интерфейсы на уровне вызова типа:

— ODBC — Open DataBase Connectivity для доступа к разнородным базам данных;

— DAL — Data Access Language для создания запроса на выборку данных, распределенных в сети;

— SAG/CLI — SQL Access Group/ Call Level Interface для распределенных запросов и др.

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

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

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

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

— программы управления очередью запросов на формирование отчетов;

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

— программы ведения архива отчетов и др.

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

4. Текстовые процессоры — автоматическое форматирование документов, вставка рисованных объектов и графики, составление оглавлений и указателей, проверка орфографии, шрифтовое оформление, подготовка шаблонов документов.

Более подробно о текстовых редакторах см. гл. 13. Развитием данного направления программных продуктов являются издательские системы.

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

Более подробно о табличных процессорах см. гл. 14.

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

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

Для работы этих программ необходимы также наличие специализированного оборудования — LCD (Liquid Crystal Desktop) — жидкокристаллической проекционной панели, которая просвечивается проектором для вывода изображения на экран, видеотехника.

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

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

Наиболее распространены интегрированные пакеты, компонентами которых являются:

— средства поддержки электронной почты;

— программы создания презентаций;

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

Отличительными особенностями данного класса программных средств являются:

— полнота информационных технологий для конечных пользователей;

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

— общий сервис для программ интегрированного пакета (например, словарь и средства орфографии для проверки правописания, построитель диаграмм, конвертер данных и др.);

— легкость обмена и ссылок на объекты, созданные программами интегрированного пакета (применяется два метода: DDE — динамический обмен данными и OLE — динамическая компоновка объектами), единообразный перенос объектов (метод drag-and-drop);

— наличие единой языковой платформы для разработки макрокоманд, пользовательских программ;

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

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

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

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

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

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

Офисные ППП.

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

1. Органайзеры (планировщики) — программное обеспечение для планирования рабочего времени, составления протоколов встреч, расписаний, ведения записной и телефонной книжки.

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

2. Программы — переводчики, средства проверки орфографии и распознавания текста включают:

— программы-переводчики, предназначенные для создания подстрочника исходного текста на указанном языке;

— словари орфографии, используемые при проверке текстов;

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

— программы для распознавания считанной сканерами информации и преобразования в текстовое представление.

К ним относятся:

— ППП OCR CuneiForm 2.0 — обеспечивает распознавание смешанных русско-английских текстов, в формате RTF сохраняется как текст, так и иллюстрации;

— ППП OCR Tiger — шрифтовая обучаемая система распознавания русского языка с возможностью автоматического выбора шрифта из библиотеки, обеспечивает многостраничный ввод текстов;

— ППП Stylus Lingvo Office реализует весь цикл «от листа до листа» — с помощью сканера осуществляется считывание текстового изображения, находящегося на печатном листе; Fine Reader осуществляет распознавание оптических образов и запись считанной информации в текстовом виде; Stylus for Windows выполняет перевод на указанный язык; корректор орфографии Lingvo Corrector и резидентный словарь Lingvo осуществляют проверку и правку. Результат перевода представляется в формате текстового редактора Word for Windows и др.

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

В условиях развития глобальной информационной сети Internet появился новый класс программного обеспечения — браузеры, средства создания WWW-страниц. Они различаются возможностями поддержки языка HTML, использованием цвета при оформлении фона, текста, форматированием текста, использованием графических форматов изображений, таблиц, фонового звука, мультипликации и т.п. Большинство браузеров использует язык Java.

Электронная почта также становится обязательным компонентом офисных ППП. Наиболее широко распространенные ППП электронной почты:

— Pegasys Mail 2-4 (David Haris);

Они различаются платформами, на которых работают (DOS, Windows З.х, Windows 95, Windows NT, Macintosh), ценой и условиями распространения, поддерживаемыми транспортными протоколами, интерфейсом с сетями. Электронная почта должна обеспечивать шифрование передаваемой информации, факсимиле подписи, проверку орфографии на любом из языков, управление сообщениями по электронной почте (оповещение о новой почте, организация почтовых ящиков, поиск, цитирование корреспонденции и т.д.).

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

— форматирование и редактирование текстов;

— автоматическую разбивку текста на страницы;

— компьютерную верстку печатной страницы;

— подготовку иллюстраций и т.п.

ППП Adobe Page Maker 6.0 обеспечивает подготовку многостраничных цветных публикаций, гибкий дизайн страниц, высококачественную печать. Формат печатной страницы — А2, допустим максимальный размер публикации более1060 мм.

Расширены возможности по верстке: неограниченное число страниц-шаблонов, которые могут использоваться в одной публикации; применение различных эффектов к цветным изображениям; настройка резкости и регулировка цветов в импортированных файлах; возможно закрепление расположения объектов на странице, автоматическое выравнивание объектов.

Разработаны и включены новые цветовые библиотеки, используются новые технологии HiFi Color и PANTONE Hexachrome, которые расширяют цветовую гамму традиционной офисной печати.

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

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

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

— программы-оболочки для создания экспертных систем путем наполнения баз знаний и правил логического вывода;

— готовые экспертные системы для принятия решений в рамках определенных предметных областей;

— системы управления базами знаний для поддержания семантических моделей (процедуральной, семантической сети, фреймовой, продукционной и др.);

— системы анализа и распознавания речи и др.

Как правило, интеллектуальный интерфейс включает:

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

— планировщик, преобразующий описание задачи в программу решения на основе информации базы знаний;

— монитор, осуществляющий управление компонентами интерфейса.

Класс прикладных программ

Подкласс прикладных программ

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

RS-Bank 4.0 — банковская система.

RS- Balance — сетевой программный комплекс

ППП автоматизированного проектирования

ППП общего назначения

СУБД — система управления базой данных

Сервер баз данных

Средства презентационной графики

Интегрированные пакеты (среды)

Visual FoxPro Standart 3.0.

Access 2.0 for Windows.

SQL Server for Windows NT 6.00.

dBASE for Windows 5.0.

Paradox for Windows 7.0.

Microsoft SQL Server 6.0.

InterBase 4.0 NetWare.

SQL Server 6.0 for Windows.

Watcom SQL Network Server.

Intersolv Q+E for Windows.

Profit for Windows 1.0.

Report Smith 2.0 for PC Database.

Report Smith 2.0 for SQL DB Servers.

Cristal Info 4.5.

Word for Windows 6.0/7.0.

AmiPro 3.0 for Windows.

WordPerfect for Windows 6.0

Лексикон 2.0 for Windows

Excel for Windows 5.0/7.0.

Quattro Pro 6.0 for Windows.

Lotus 1-2-3 5.0 for Windows.

PowerPoint for Windows 95.

Screen Cam 1.1 for Windows.

Freelance Graphics 2.1 for Windows.

Autodesk Animator Pro 1.3.

Autodesk 3D Studio R4

Microsoft Office Standart for Windows▓95.

Works for DOS 2.0.

Works for Windows 3.0.

Lotus Notes ViP 1.0.

Тройка плюс for Windows

Статистическая обработка данных

Сетевые (графические) методы и модели для решения управленческих задач

Time Line 6.0 for Windows.

MS Project for Windows.

Переводчики, средства проверки орфографии и распознавания текста

NetScape Collabra Share 2.0.

Novel GroupWise 4.1.

Project for Windows▓95.

Money for Windows 3.0.

MS Shedule for Windows 95.

Lotus Organizer 2.1.

TimeLine for Windows 6.0.

Stylus General for Windows (Eng-Rus-Eng).

OCR Tiger for DOS.

OCR Tiger Professional v.2.

OCR CuneiForm PRO v. 2.0 for Windows.

Fine Reader 2.0 Standard.

Программные средства мультимедиа

Sierra Club Collection.

Outer Space Collection.

Bethoven 9 th Symphony.

Настольные издательские системы

PageMaker 6.0 for Windows.

Corel Ventura 5.0.

Publisher for Windows 95.

Illustrator 4.0 for Windows.

Photoshop 3.0 for Windows.

Системы искусственного интеллекта

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

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