Системное и прикладное программное обеспечение
Системное программное обеспечение непосредственно связано с ЭВМ и является, в сущности, ее неотъемлемой частью. Системное ПО обеспечивает надежную и эффективную работу компьютера, проводит диагностику работоспособности его технических средств, поддерживает функционирование других программ, предоставляет пользователю набор всевозможных услуг и т.д. Благодаря системному ПО значительно расширяются функциональные возможности ЭВМ, улучшаются их эксплуатационные характеристики.
В составе системного ПО можно выделить следующие основные компоненты (рис. 4.4): операционную систему; операционные оболочки и среды; систему автоматизации программирования; систему технического обслуживания.
79
Рис. 4.4. Структура системного программного обеспечения
Дадим им краткую характеристику.
Операционная система (ОС) занимает центральное место в системном ПО и реализует следующие основные функции:
- - управление всеми программами и данными в ходе вычислительного процесса;
- - планирование и управление распределением вычислительных ресурсов ЭВМ;
- - увеличение пропускной способности ЭВМ. т.е. увеличение общего объема работ, выполняемых ЭВМ в единицу времени;
- - уменьшение времени реакции системы, т.е. сокращение интервала времени между моментами поступления заданий в ЭВМ и моментами получения результатов;
- - помощь пользователям при использовании ими технических и программных средств, облегчение их работы;
- - обеспечение адаптации ЭВМ, заключающейся в способности изменяться, пополняться новыми техническими и программными средствами.
Первая и наиболее простая операционная система ОС СР/М для персональных ЭВМ была разработана в 1974 г., которая фактически стала стандартом для 8 - разрядных микропроцессоров.
До недавнего времени на большинстве персональных компьютеров была установлена 16 - разрядная операционная система MS DOS, разработанная в 1981 г. фирмой Microsoft. Последняя версия 6.22 данной ОС, а также ее разновидности других фирм - разработчиков (DR DOS, PS DOS), несмотря на свою простоту и экономичность, к настоящему времени уже морально устарели, и на смену им пришли операционные системы нового поколения.
Главными отличительными особенностями современных ОС являются:
80
- - более полное использование всех возможностей, предоставляемых современными микропроцессорами, например, с точки зрения их разрядности (32 и более);
- - многозадачность, т.е. способность обеспечивать одновременное выполнение нескольких программ;
- - многопоточность, т.е. возможность разделения выполняемой программы на несколько не связанных друг с другом частей;
- - развитый графический пользовательский интерфейс;
- - полная независимость от аппаратуры (поддержка всех видов дисплеев и принтеров);
- - развитые средства защиты информации и разграничения доступа;
- - расширенные возможности сетевого использования ЭВМ;
- - совместимость со всеми видами приложений операционной системы MS DOS.
К числу таких ОС прежде всего относятся: Windows 95, 98, 2000, Windows NT, OS/2, Unix и некоторые другие. Каждая из перечисленных ОС наделена теми или иными сетевыми возможностями. Вместе с тем, существуют также сетевые операционные системы. Наиболее распространенная среди них ОС NetWare предоставляет пользователю широкие возможности для обработки, передачи и хранения данных в вычислительной сети.
Операционные оболочки и среды. Работа с операционной системой требует в общем случае знания большого количества управляющих команд, что создает для пользователя определенные трудности. Поэтому для облегчения диалога пользователя с персональным компьютером и создания удобств при работе с операционной системой были разработаны специальные программные средства, выполняющие роль промежуточного звена между пользователем и операционной системой, делающие пользовательский интерфейс более комфортным. Такие программные надстройки к операционной системе получили название операционных оболочек.
Весьма распространенной в настоящее время является программа - оболочка Norton Commander (NC). В нашей стране применяются, в основном, русифицированные версии 4.0 и 5.0. Оболочка Norton Commander совместно с операционной системой MS DOS позволяет получать в наглядном виде информацию о компьютере, оперативной памяти и ее загрузке, осуществлять поиск файлов и каталогов, редактировать текстовые файлы, работать с архивными файлами и т.д.
Следующим шагом на пути совершенствования диалога пользователя с персональным компьютером было создание операционной среды MS Windows, предоставляющей пользователю интуитивно понятный и универсальный графический интерфейс. Наиболее распространенной является ее версия Windows 3.1.
Различия между операционными оболочками и операционными средами достаточно условны. И те, и другие функционируют только совместно
81
с соответствующей операционной системой (в данном случае MS DOS). Операционную среду можно назвать полнофункциональной надстройкой над ОС, поскольку она, в отличие от оболочки, может самостоятельно формировать новую среду выполнения программ. Под управлением Windows работают как программные средства, созданные для среды MS DOS, так и специально разработанные прикладные программы (Windows - приложения).
Наряду с совершенствованием операционных систем постоянно совершенствуются программные оболочки и среды. Так, в настоящее время созданы и используются такие средства, как NC for Windows, Norton Navigator for Windows и др.
Системы автоматизации программирования (САП) предназначены для совершенствования процесса разработки и отладки программ, т.е. для повышения эффективности и производительности труда программистов. Системы программирования включают в свой состав языки программирования, трансляторы с этих языков, а также различные вспомогательные программы (редактор, библиотекарь, загрузчик и др.), используемые в процессе подготовки рабочих программ к выполнению.
Все языки программирования подразделяются на машинно - зависимые (низкого уровня) и машинно - независимые (высокого уровня) (рис. 4.5).
Рис. 4.5. Классификация языков программирования
Средства машинно - зависимых языков отражают (учитывают) специфику функционирования определенного класса ЭВМ. При программировании задач с помощью таких языков требуется знание не только сущности реализуемого алгоритма решения задачи, но и технических особенностей конкретной ЭВМ. В их составе выделяются машинные и машинно - ориентированные.
Машинный язык является внутренним языком ЭВМ и в настоящее время не используется для программирования даже программистами - профессионалами из - за чрезмерной трудоемкости и детализации процесса разработки программ.
82
К машинно - зависимым языкам программирования также относятся машинно - ориентированные языки (ассемблеры, автокоды и др.), которые, как и машинные языки, позволяют учитывать особенности архитектуры определенной ЭВМ, но вместе с тем, допускают использование выразительных средств, присущих языкам высокого уровня. Они требуют предварительной трансляции на машинный язык программ, составленных с их помощью. Использование языка ассемблера, как правило, ограничено областью системного программирования. Такими языками пользуются профессиональные системные программисты, особенно в тех случаях, когда разрабатываемые программы должны быть максимально компактными и быстродействующими.
К машинно - независимым языкам высокого уровня относятся процедурно - , проблемно - и объектно - ориентированные языки. Все они не требуют от программиста (пользователя) полного знания специфики ЭВМ, на которой реализуется программа решения задачи.
Процедурно - ориентированные являются наиболее универсальным классом языков программирования, используются для решения широкого класса задач, для которых имеется возможность описания программы как совокупности процедур. Из этого класса наиболее распространенными являются языки Бейсик, Фортран, Паскаль, Кобол, Пл/1 и др.
Обособленное, промежуточное положение между машинно - и процедурно - ориентированными языками занимает язык СИ, создание которого явилось результатом попытки объединения достоинств, присущих языкам обоих классов. Этот язык используется главным образом для создания системных и прикладных программных продуктов, в которых решающее значение отводится факторам быстродействия и минимизации объема памяти. Так, например, на языке СИ практически полностью разработана операционная система UNIX.
Проблемно - ориентированные языки предназначены для описания процессов обработки информации в более узкой, специфической области.
В этих языках имеется возможность описывать алгоритмы обработки информации более крупными конструкциями. Наиболее известными языками этой группы являются:
- РПГ - язык для создания и обработки файлов и формирования выходных документов;
- АПЛ - язык для решения задач, связанных со статистической обработкой больших информационных массивов;
- GPSS - язык, ориентированный на моделирование систем и некоторые другие возможности.
В последнее время отмечается интенсивное развитие объектно - ориентированных языков программирования (СИ++, Delphi, Visual Basic и др.). Эти языки основаны на выделении и описании классов объектов, имеющих общие характерные свойства и методы обработки.
83
Основное достоинство всех языков высокого уровня заключается в возможности описания программ решения задач в форме, максимально удобной для восприятия человеком. Но так как каждое семейство ЭВМ имеет свой собственный внутренний (машинный) язык и может выполнять лишь те команды, которые записаны на этом языке, то для перевода исходных программ на машинный язык используются специальные программы - трансляторы.
Различают трансляторы двух типов: интерпретаторы и компиляторы.
Трансляторы - интерпретаторы осуществляют последовательное пооператорное преобразование каждого предложения исходной программы в блок машинных команд с одновременным их выполнением. Машинная программа в полном объеме при этом не создается, решение задач пользователей происходит замедленными темпами. Этот вид транслятора рекомендуется использовать при отладке новых программных продуктов.
Трансляторы - компиляторы сначала полностью переводят исходную программу на машинный язык, после чего оттранслированная программа может неоднократно исполняться. Для одной и той же программы трансляция методом компиляции обеспечивает более высокую производительность вычислительной системы при сокращении требуемого объема оперативной памяти.
Программы, составленные на любом языке программирования (кроме машинного), перед своим выполнением проходят несколько стадий предварительной обработки.
Для этого используются различные обслуживающие программы, имеющиеся в составе САП (рис. 4.6).
84
Рис. 4.6. Стадии обработки программ перед их выполнением
После ввода программы в ЭВМ формируется исходный модуль, составленный на входном языке программирования. Этот модуль с помощью программы - транслятора преобразуется в так называемый объектный модуль, который представляется в виде набора программ, имеющих промежуточный формат, общий для всех трансляторов. Специфика исходных языков программирования при этом теряется; однако, это еще не рабочая машинная программа, а некоторый промежуточный вид ее записи. Фаза программы, или загрузочный модуль получается после этапа редактирования объектного модуля. Загрузочный модуль представляется на внутреннем машинном языке и содержит готовые к выполнению программы.
85
Все программы в зависимости от того, в какой стадии подготовки они находятся (исходный, объектный или загрузочный модуль), могут храниться в соответствующей системной библиотеке. В библиотеке загрузочных модулей в виде программных фаз содержатся компоненты операционной системы, а также готовые к выполнению рабочие программы пользователей. Наличие этой библиотеки является обязательным, так как только из нее поступают программы в оперативную память для последующего выполнения. Для обслуживания всех библиотек используются специальные сервисные программы - утилиты, которые создают и корректируют библиотеки, отображают их содержание или оглавление.
Системы технического обслуживания в составе ПО ЭВМ (рис. 4.4) содержат программы, предназначенные для контроля работоспособности и диагностики неисправностей технических средств ЭВМ на стадиях наладки, эксплуатации и профилактики. Они являются инструментом специалистов, занятых эксплуатацией и ремонтом технических средств ЭВМ.
Контрольно - наладочные программы используются для проверки правильности функционирования отдельных устройств и ЭВМ в целом в процессе наладки. Диагностические программы служат для контроля работы устройств ЭВМ в процессе эксплуатации, для обнаружения и локализации возможных неисправностей.
Часть этих программ работает независимо от операционной системы, а другая часть работает под ее управлением.
Системное программное обеспечение ЭВМ, состоящее из рассмотренных компонентов, является инструментарием разработки и базовой платформой для установки прикладного программного обеспечения.
Прикладное программное обеспечение состоит из прикладных программ пользователей и пакетов прикладных программ.
Прикладные программы, создаваемые пользователями, разрабатываются и отлаживаются с использованием средств автоматизации программирования, имеющихся в их распоряжении, а также с учетом особенностей других компонентов системного ПО, на базе которых эти программы будут применяться.
Пакеты прикладных программ (ППП) являются наиболее представительным классом средств программного обеспечения, значительно расширяющим сферу и возможности применения вычислительной техники. ППП делятся на пакеты общего назначения, методо - ориентированные, проблемно - ориентированные и интегрированные пакеты.
ППП общего назначения поддерживают преимущественно информационные технологии конечных пользователей, обеспечивая их необходимыми средствами для управления базами данных, обработки текстовой, графической, табличной и др. информации.
Проблемно - ориентированные ППП направлены на решение определенного круга задач в конкретных предметных областях деятельности. В их числе можно, например, отметить ППП автоматизированного бухгалтерского
86
учета, финансовой деятельности, управления персоналом, автоматизированного проектирования, управления материальными запасами и др.
Интегрированные ППП представляют собой набор нескольких программных продуктов, функционально дополняющих друг друга, поддерживающих единые информационные технологии, реализованные на общей вычислительной и операционной платформе. Достаточно широкое распространение получил в настоящее время ППП MS Office, обеспечивающий организационное управление деятельностью офиса и включающий в себя такие пакеты, как табличный процессор, текстовый редактор, систему управления базами данных (СУБД), графический редактор и др.
Программное обеспечение современных ЭВМ и вычислительных систем строится по модульному принципу, обеспечивающему возможность адаптации ЭВМ к конкретным условиям применения, способность систем к совершенствованию, наращиванию мощности и т.д. Модули ПО предоставляют для пользователя своеобразную иерархию программных компонентов, используемую им при решении своих задач (рис. 4.7).
Рис. 4. 7. Иерархия программных средств ЭВМ
Нижний уровень этой иерархии образуют программы операционной системы, которые играют роль посредника между техническими средствами ЭВМ и пользователем. Доступ пользователя к техническим средствам ЭВМ осуществляется с помощью команд операционной системы или с применением необходимых операционных оболочек и сред.
87
С помощью ОС или операционных сред пользователь может активизировать любую нужную ему программу. В настоящее время практически на любой вид деятельности существуют, разрабатываются и совершенствуются ППП, позволяющие пользователям, даже не имеющим специальной компьютерной подготовки, эффективно решать специфические задачи обработки информации.
Программисты и квалифицированные пользователи, разрабатывающие собственные программные продукты, используют компоненты системы автоматизации программирования (САП).
Программы системы технического обслуживания непосредственного участия в организации вычислительного процесса не принимают, они только обеспечивают его средствами контроля и диагностики.
88
79 :: 80 :: 81 :: 82 :: 83 :: 84 :: 85 :: 86 :: 87 :: 88 :: Содержание