ФУНКЦИИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Лекционное занятие

Функции программного обеспечения

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

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

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

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

Рис. 1. Автоматизация подготовки и решения задач в ЭВМ

 

 формулировка проблемы и математическая постановка задачи;

 выбор метода и разработка алгоритма решения;

 программирование (запись алгоритма) с использованием некоторого алгоритмического языка;

 планирование и организация вычислительного процесса - порядка и последовательности использования ресурсов ЭВМ и ВС;

 формирование “машинной программы”, т.е. программы, которую непосредственно будет выполнять ЭВМ;

 собственно решение задачи - выполнение вычислений по готовой программе.

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

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

ЭВМ 3-го поколения характеризуются расцветом операционных систем (ОС), отвечающих за организацию и управление вычислительным процессом. Именно здесь слово “ЭВМ” все чаще стало заменяться понятием “вычислительная система”, что в большей степени отражало усложнение как аппаратурной, так и программной частей ЭВМ. Стоимость программного обеспечения стала расти и в настоящее время намного опережает стоимость аппаратурных средств (рис 2).

Рис. 2. Динамика изменения стоимости аппаратурных и программных средств

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

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

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

Персональные ЭВМ

В настоящее время ПЭВМ являются самым массовым типом. Именно им отводится решающая роль при переходе общества к информатизации - наиболее полному использованию информационных технологий.

Интересны причины появления и развития этого класса ЭВМ. Структура и динамика развития мирового парка ЭВМ показаны на рис 3

 

Рис. 3. Структура и динамика развития мирового парка ЭВМ. Классы машин: 1 - большие ЭВМ; 2 - мини-ЭВМ; 3 - персональные ЭВМ; 4 - суммарный парк

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

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

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

 

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

 

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

 

При широком применении ПЭВМ в различных сферах деятельности человека выдвигаются требования к их надлежащему программному обеспечению. В настоящее время число профессиональных программистов в индустриально развитых странах составляет не более 0,5% населения. Фирмы - разработчики программного обеспечения не могут обеспечить каждого пользователя ПЭВМ требуемым набором программ. Их усилия сосредоточены на производстве пакетов прикладных программ и систем программирования, рассчитанных на массового пользователя. Именно поэтому такой взрывной характер имеют спрос, производство и распространение подобных пакетов. Они составляют фундамент для последующей разработки собственных программ пользователя, учитывающих всю специфику требуемых вычислений, т.е., как и во всех науках, специализация является надстройкой унификации. Это позволяет пользователям - специалистам с невысокой математической, вычислительной и программистской подготовкой необязательно самыми эффективными средствами и способами ставить и решать задачи специальной обработки данных.

 

“МикроЭВМ, ориентированная на разработку и использование прикладных программ “непрограммирующим профессионалом”, получила название персонального компьютера, а соответствующий режим использования вычислительной техники - режим персональных вычислений”[7].

 

 

Основная цель использования ПЭВМ - формализация профессиональных знаний. Здесь, в первую очередь, автоматизируется рутинная часть работ специалистов, которая занимает более 75% их рабочего времени. Применение ПЭВМ позволяет сделать труд специалистов более творческим, интересным, эффективным. Персональные ЭВМ используются повсеместно, во всех сферах деятельности людей. Новые сферы применения изменили и характер вычислительных работ. Так, инженерно-технические расчеты составляют не более 9%, автоматизация управления сбытом, закупками, управление запасом - 16%, финансово-экономические расчеты -15%, делопроизводство - более 10%, игровые задачи - 8% и т.д.

 

Причинами стремительного роста индустрии персональных ЭВМ следует считать [41].

 

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

· возможность индивидуального взаимодействия с ПК без каких-либо посредников и ограничений;

· большие возможности по обработке информации (быстродействие - сотни миллионов операций в секунду, емкость памяти: оперативной - единицы и десятки Мбайтов, внешней - сотни Кбайтов, единицы Гбайтов);

· высокую надежность и простоту в эксплуатации;

· возможность расширения и адаптации к особенностям применения;

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

· простоту использования, основанную на “дружественном” взаимодействии с ПК, с помощью пакетов прикладных программ.

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

ПЭВМ, как и другие типы машин, выпускаются целыми семействами, что позволяет перекрыть достаточно широкий диапазон производительности, обеспечить преемственность в разработках и возможность совершенствования систем обработки данных, построенных на их основе. Современные ПЭВМ строятся на сверхбольших интегральных схемах. Машины типа IBM PC, составляющие почти 80% парка ПЭВМ, комплектуются микропроцессорами Pentium различных модификаций.

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

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

Одной из основных характеристик ПК является тип используемого в нем микропроцессора. Рынок микропроцессоров очень динамичен. Каждые год-два происходит обновление их основных типов. Так, фирма Intel полностью перешла на выпуск процессоров Pentium MMX, имеющих расширенный состав команд для обработки графической, аудио-, видео- и мультимедийной информации. Микропроцессором начального уровня теперь является Pentium 166 MMX, намечается переход на частоты 233 МГц и выше. Конкурирующие фирмы AMD, Cyrix, Motorola, Hewlett Packard и др. также совершенствуют свои изделия.

Компьютеры оснащаются оперативной памятью 16-32 Мбайта с возможностью расширения до 128 (160) Мбайт, кэш-памятью второго уровня емкостью 256-512 Кбайт, жесткими дисками - до 2 Гбайт и более.

Компьютеры могут иметь высокоскоростные диски CD ROM, сетевые адаптеры, графические адаптеры и другие устройства.

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

Прообразом СК можно считать простейшие “немые” терминалы, подключаемые к ЭВМ 2-го и 3-го поколений. Они имели достаточно простую конструкцию (дисплей, клавиатуру, небольшую буферную память и встроенный блок управления). Целью их создания и применения было обеспечение коллективного и удаленного доступа пользователей к вычислительным ресурсам достаточно мощной ЭВМ. Управление ими осуществляла ОС ЭВМ.

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

Собственные средства обработки в СК представлены достаточно слабо или вообще отсутствуют. Основу СК составляет весьма скромный по своим возможностям встроенный микропроцессор или блок управления. Очень многие фирмы (Oracle, Sun, Philips, даже IBМ и др.) проявляют интерес к этому новому классу компьютеров и связывают с ним большие надежды. Уже появились первые разработки подобных устройств, но пока еще не выявлены единые принципы их структурного и функционального построения.

В литературе отсутствует и единое их наименование: “тощие” ПК, Inemet - приборы, броузеры. WebPC, Java-терминал, NetComputerи др.

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

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

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

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

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

Для формирования и развития индустрии СК необходимо решить следующие проблемы:

 создать языки программирования, не зависимые от особенностей построения СК;

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

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

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

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

Сетевые компьютеры, являясь продолжением аппаратуры сети, не требуют оснащения дорогими и сложными микропроцессорами. Для обеспечения их функций можно использовать более простые схемы, типа “Internet on a сhiр” (“Интернет на чипе”). Подобная продукция может быть представлена десятками фирм.

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