Информатика. Классификация системного программного обеспечения. | |
Программные продукты можно классифицировать по различным признакам. Рассмотрим классификацию, в которой основополагающим признаком является сфера (область) использования программных продуктов:
аппаратная часть автономных компьютеров и сетей ЭВМ;
функциональные задачи различных предметных областей;
технология разработки программ.
Рисунок 1 - Классификация программного обеспечения
Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов, представленных на рис. 1:
Системное программное обеспечение (System Software) — совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ ;
Пакеты прикладных программ (application program package) — комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области ;
Инструментарий технологии программирования — совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов .
Системное программное обеспечение
Данное программное обеспечение направлено на:
создание операционной среды функционирования других программ;
обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т.д.).
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты в основном ориентированы на квалифицированных пользователей – профессионалов в компьютерной области: системного программиста, администратора сети, прикладного программиста, оператора. Однако знание базовой технологии работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютера, программ и данных.
Программные продукты данного класса носят общий характер применения, независимо от специфики предметной области. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Пакеты прикладных программ (ППП)
Служат программным инструментарием решения функциональных задач и являются самым многочисленным классом программных продуктов. В данный класс входят программные продукты, выполняющие обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи — потребители информации деятельность которых, во многих случаях, весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичным для отдельных предметных областей.
Инструментарий технологии программирования
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированные программные продукты, которые являются инструментальными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования (кодирования), отладки и тестирования создаваемых программ. Пользователями технологии программирования являются системные и прикладные программисты.
Системное программное обеспечение
Структура системного программного обеспечения
На рис. 2 представлена структура системного программного обеспечения — базового программного обеспечения, которое, как правило, поставляется вместе с компьютером, и сервисного программного обеспечения, которое может быть приобретено дополнительно.
Рисунок 2 - Классификация системного программного обеспечения
Базовое программное обеспечение (base software) — минимальный набор программных средств, обеспечивающих работу компьютера;
Сервисное программное обеспечение — программы и программные комплексы, которые расширяют возможности базового программного обеспечения и организуют более удобную среду работы пользователя.
Базовое программное обеспечение
В базовое программное обеспечение входят:
Операционные системы;
Операционные оболочки (текстовые и графические);
Сетевые операционная системаы
Драйверы.
Операционная система предназначена для управления выполнением пользовательских программ, планирования и управления вычислительными ресурсами ЭВМ.
В секторе программного обеспечения и операционных систем ведущее положение занимают фирмы IBM, Microsoft, UNISYS, Novell. Доход от продаж операционных систем в среднем превышает 20 млрд. дол. в год. Рассмотрим наиболее распространенные типы операционных систем.
Операционные системы для персональных компьютеров делятся на:
одно- и многозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);
одно- и многопользовательские (в зависимости от числа пользователей, одновременно работающих с операционной системой);
непереносимые и переносимые на другие типы компьютеров;
несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.
Наибольшее распространение сегодня имеют следующие операционные системы для персональных компьютеров: OS/2 во всех модификациях (IBM), MS DOS и Windows во всех модификациях (Microsoft), Unix во всех модификациях.
Операционная система 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), имеющая преимущества для серверов баз данных, поддержка мультипроцессорной обработки – до 16 процессоров типа INTEL и PowerPC. Версия OS/2 Warp работает с мультисредой и имеет встроенный доступ в сеть Internet, систему распознавания речи VoiceType, интегрированную версию Lotus Notes Mail для передачи через Internet почты. В OS/2 могут выполняться прикладные программы Windows 3.1 и Win32s, но не могут выполняться приложения, работающие в среде Windows 95/98 или Windows NT. Спецификация Open 32 позволяет поставщикам программного обеспечения переносить его на новую платформу.
Операционная система Unix является перспективной многопользовательской и многозадачной системой, созданной корпорацией Bell Laboratory. Данная операционная система реализует принцип открытых систем и широкие возможности по комплексированию в составе одной вычислительной системы разнородных технических и программных средств.
Unix обладает наиболее важными качествами, такими, как:
переносимость прикладных программ с одного компьютера на другой;
поддержка распределенной обработки данных в сети ЭВМ;
сочетаемость с процессорами RISC.
По этой причине Unix получила широкое распространение для суперкомпьютеров, рабочих станций и профессиональных персональных компьютеров и имеет большое количество версий, разработанных различными фирмами.
Наиболее традиционное сравнение ОС осуществляется по следующим характеристикам процесса обработки информации:
управление памятью (максимальный объем адресуемого пространства, типы памяти, технические показатели использования памяти);
функциональные возможности вспомогательных программ (утилит) в составе операционной системы;
наличие компрессии диска;
возможность архивирования файлов;
поддержка многозадачного режима работы;
поддержка сетевого программного обеспечения;
наличие качественной документации;
условия и сложность процесса инсталляции.
Сетевые операционные системы — комплекс программ, обеспечивающий обработку, передачу и хранение данных в сети. Сетевая ОС предоставляет пользователям различные виды сетевых служб (управление файлами, электронная почта, процессы управления сетью и др.), поддерживает работу в абонентских системах. Сетевые операционные системы используют архитектуру клиент-сервер или одноранговую архитектуру. Вначале сетевые операционные системы поддерживали лишь локальные вычислительные сети (ЛВС), сейчас эти операционные системы распространяются на ассоциации локальных сетей. Наибольшее распространение имеют LAN Server, NetWare, VINES, Windows NT, Windows 95. Они оцениваются по комплексу критериев: производительность, разнообразие возможностей связи пользователей, возможности администрирования.
Операционная система Windows NT является многозадачной, предназначенной для архитектуры клиент-сервер и использования различных протоколов транспортного уровня сетевой операционной системы, имеет 32-разрядную архитектуру и обеспечивает функции локальной сети:
возможность каждой абонентской системы в сети быть сервером или клиентом;
совместную работу группы пользователей;
адресацию оперативной и внешней памяти большого размера;
многозадачность и многопоточность обработки данных;
поддержку мультипроцессорной обработки и др.
В таблице приведены параметры некоторых популярных ОС
Операционная система |
Объем ОЗУ, Мбайт |
Память наМД, Мбайт |
Средства связи с Internet |
Сетевые средства связи |
Многопроцессорная обработка |
Средства взаимодействия прикладных программ |
MS Windows NT Workstation 4.0 |
12-16 |
90-120 |
Internet Explorer 3.0, Peer Web Services, Point to Point, FTP, telnet |
Banyan, Digital, IBM, Novell, Microsoft SNA, TCP/IP и др. |
Есть |
OLE, Open GL, Win32 |
MS Windows NT 3.51 |
12-16 |
75-95 |
Тоже |
Тоже |
Есть |
Тоже |
MS Windows 95 |
4-12 |
25-85 |
Тоже |
Тоже |
Нет |
OLE, Win 32 |
MS Windows 3.11 |
4-8 |
20-35 |
— |
— |
Нет |
OLE, Win 32s |
OS/2 Warp 4.0 |
8-12 (12-24) |
100-300 |
FTP, Gopher, Newsreader/2, telnet, Web Explorer |
Artisoft IBM, Novell, Microsoft, TCP/IP |
Нет |
Java, OpenDoc, OpenGL, PM API, Win32s |
OS/2 Warp Connect 3.0 |
8 |
80-120 |
Тоже |
Тоже |
Нет |
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 (фирма Symantec);
- XTree Gold 4.0;
- DOS Navigator и др.
Эти программы существенно упрощают задание управляющей информации для выполнения команд операционной системы, уменьшают напряженность и сложность работы конечного пользователя. Но платой за это являются повышенные требования к ресурсам.
В 90-х годах во всем мире имеют огромную популярность такие графические оболочки MS DOS, как Windows 3.1, Windows 3.11 for WorkGroup, которые позволяют изменить среду взаимодействия пользователя с компьютером, расширяют набор основных (диспетчер файлов, графический редактор, текстовый редактор, картотека и т.п.) и сервисных функций, обеспечивающих пользователю интегрированную информационную технологию вплоть до создания одноранговых локальных сетей.
Важным классом системных программ являются программы-драйверы. Они расширяют возможности операционной системы по управлению устройствами ввода-вывода компьютера (клавиатурой, жестким диском, мышью и т.д.), оперативной памятью и т.д. С помощью драйверов возможно подключение к компьютеру новых устройств или нестандартное использование имеющихся устройств.
Сервисное программное обеспечение
Расширением базового программного обеспечения компьютера является набор сервисных, дополнительно устанавливаемых программ, которые можно классифицировать по функциональному признаку следующим образом:
программы диагностики работоспособности компьютера;
антивирусные программы, обеспечивающие защиту компьютера, обнаружение и восстановление зараженных файлов;
программы обслуживания дисков, обеспечивающие проверку качества поверхности магнитного диска, контроль сохранности файловой системы на логическом и физическом уровнях, сжатие дисков, создание страховых копий дисков, резервирование данных на внешних носителях и др.;
программы архивирования данных, которые обеспечивают процесс сжатия информации в файлах с целью уменьшения объема памяти для ее хранения;
сжатие программы обслуживания сети.
Эти программы часто называются утилитами.
Утилиты — программы, служащие для выполнения вспомогательных операций обработки данных или обслуживания компьютеров (диагностики, тестирования аппаратных и программных средств, оптимизации использования дискового пространства, восстановления разрушенной на магнитном диске информации и т.п.). Часто утилиты объедияются в комплексы.
Кратко опишем разновидности этих программ
Программы-архиваторы (упаковщики) - программы, предназначенные для архивации, упаковки файлов путем сжатия хранимой в них информации.
Сжатие информации — это процесс преобразования информации, хранящейся в файле, к виду, при котором уменьшается избыточность в ее представлении и соответственно требуется меньший объем памяти для хранения. Сжатие информации в файлах производится за счет устранения избыточности различными способами, например за счет упрощения кодов, исключения из них постоянных битов.
Архивный файл — это специальным образом организованный файл, содержащий в себе один или несколько файлов в сжатом или несжатом виде и служебную информацию об именах файлов, дате и времени их создания или модификации, размерах и т.п. Целью упаковки файлов обычно являются обеспечение более компактного размещения информации на диске, сокращение времени и соответственно стоимости передачи информации по каналам связи в компьютерных сетях. Кроме того, упаковка в один архивный файл группы файлов существенно упрощает их перенос с одного компьютера на другой, сокращает время копирования файлов на диски, позволяет защитить информацию от несанкционированного доступа, способствует защите от заражения компьютерными вирусами.
Архивация (упаковка) — помещение (загрузка) исходных файлов в архивный файл в сжатом или несжатом виде.
Разархивация (распаковка) — процесс восстановления файлов из архива точно в таком виде, какой они имели до загрузки в архив. При распаковке файлы извлекаются из архива и помещаются на диск или в оперативную память.
Большие по объему архивные файлы могут быть размещены на нескольких дисках (томах). Такие архивы называются многотомными. Том — это составная часть многотомного архива.
Наиболее известные программы-упаковщики:
WinZip;
WinRar;
Arj;
ACE.
Антивирусные программы предназначены для предотвращения заражения компьютерным вирусом и ликвидации последствий заражения вирусом. Антивирусные продукты оцениваются по ряду критериев:
точность обнаружения (идентификации) вируса;
возможность защиты данных от инфицирования;
эффективное устранение обнаруженных вирусов (восстановление файлов);
простота использования;
стоимость;
способность работы в локальных сетях;
возможность обнаружения и устранения boot-вирусов дисков.
Наиболее известные антивирусные программы:
AVP - лаборатория К. Касперского;
DR.WEB - лаборатория И. Данилова;
Norton Antivirus;
Panda Antivirus;
Программы обслуживания магнитных дисков. Магнитные диски ПК в настоящее время являются основными носителями информации, предназначенными для длительного и надежного ее хранения. В процессе работы персонального компьютера непрерывно происходит обмен информацией между дисками и оперативной памятью, при этом наиболее интенсивно происходит обмен с жестким диском. Несмотря на высокое качество изготовления дисков и дисковых устройств, в практике регулярной работы на компьютере нередко возникают ситуации, когда не удается прочитать информацию с дисков, происходят нарушения в работе файловой системы, значительно сокращается свободное пространство на дисках или диски оказываются переполненными. Нередко ошибочно удаляются нужные файлы. Эти нарушения в работе дисков могут возникать по следующим причинам:
при физическом повреждении диска;
при загрязнении магнитной поверхности диска;
при аварийном отключении компьютера;
при несвоевременном извлечении дискет из дисководов;
при перезагрузке операционной системы после аварийного завершения задания;
при воздействии программных вирусов.
Кроме того, при интенсивной эксплуатации компьютера на дисках, главным образом на жестких, накапливаются такие изменения в расположении файлов, которые, если не принимать мер, могут привести к существенному замедлению обмена с ними информацией. Эти нарушения можно исправить с помощью программы обслуживания магнитных дисков (например, Norton Utilities).
Программы резерного копирования позволяют быстро скопировать информацию, находящуюся на жестком диске компьютера, на дискеты.
Коммуникационные программы предназначены для организации обмена информацией между компьютерами. Это программы позволяют удобно пересылать файлы с одного компьютера на другой при соединении кабелем их последовательных портов (некоторые программы - при соединении параллельных портов, что обеспечивает большую скорость). Другой вид таких программ обеспечивает возможность связи компьютеров по телефонной сети (при наличии модема). Они дают возможность посылать и принимать телефаксные сообщения.
Программы для диагностики компьютера позволяют проверить конфигурацию компьютера (количество памяти, ее использование, типы дисков и т.д.), а также проверить работоспособность устройств компьютера (прежде всего жестких дисков). Они позволяют выявить “намечающиеся” дефекты дисков (возникающие из-за износа магнитной поверхности диска) и предотвратить потерю данных, хранящихся на диске.
Программы-кэши для диска убыстряют доступ к информации на диске путем организации в оперативной памяти кэш-буфера, содержащего наиболее часто используемые части диска. Чаще всего для кэша используется дополнительная или расширенная память компьютера. Некоторые контроллеры дисков имеют в своем составе встроенный кэш-буфер, но обычно их производительность не намного выше, а стоимость значительно больше, чем у программы-кэша и соответствующего количества дополнительной памяти.
Программы для оптимизации дисков позволяют обеспечить более быстрый доступ к информации на диске за счет оптимизации размещения данных на диске. Эти программы перемещают все участки каждого файла друг к другу (устраняют фрагментацию), собирают все файлы в начале диска и т.д., за счет чего уменьшается число перемещений головок диска т.е. ускоряется доступ к данным) и снижается износ диска.
Программы динамического сжатия дисков позволяют увеличить количество информации, хранимой на дисках путем ее динамического сжатия. Эти программы сжимают информацию при записи на диск, а при чтении восстанавливают ее висходном виде. Таким образом, для пользователя эти программы незаметны, они проявляются только увеличением емкости дисков и изменением скорости доступа (кстати, скорость доступа при этом может не уменьшиться, а даже увеличиться). Если на диске хранятся программы, то увеличение емкости невелико - в 1,5 раза, но для баз данных оно может достигать 4-5 раз.
Программы для автономной печати (спулеры) позволяют распечатывать файлы на принтере параллельно с выполнением другой работы на компьютере. Некоторые из этих программ вдобавок обеспечивают и некоторое ускорение печати. Многие программы, например Microsoft Windows, Microsoft Word для DOS, имеют встроенные средства для поддержки автономной печати.
Программы для управления памятью обеспечивают более гибкое использование оперативной памяти компьютера. Некоторые из них дают возможность загрузить в память компьютера несколько программ и “переключаться” с одной на другую с помощью нескольких нажатий клавиш. Другие обеспечивают эффективное управление резидентными программами, в частности “выгрузку” их из памяти после того, как в них отпадает необходимость.
Программы для печати экрана бывают весьма полезны при использовании графических программ для вывода на печать содержимого экрана (отнюдь не всегда это можно сделать с помощью самой графической программы). Они работают со всеми наиболее распространенными экранами и принтерами, позволяют заменять цвета и использовать для передачи цвета на черно-белых принтерах различные штриховки, варьировать размер и расположение картинки на печатаемой странице.
Наибольшее распространение сегодня имеют комплекты утилит:
Norton Utilities — фирма Symantec;
Checkit PRO Deliuxe — фирма Touch Stone;
PC Tools for Windows;
программа резервного копирования HP Colorado Backup for Windows 95.