Реферат: Программное обеспечение


Реферат по теме:

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


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

К программномуобеспечению относится также вся область деятельности по проектированию иразработке ПО.

-         Технологияпроектирования программ;

-         Методытестирования программ;

-         Методыдоказательства правильности программ;

-         Анализ качестваработы программ;

-         Документированиепрограмм;

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

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

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

Программное обеспечениесовременных компьютеров включает миллионы программ – от игровых до научных.

Классификация ПО

Программы, работающие накомпьютере, можно разделить на три категории:

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

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

-          ВспомогательноеПО (инструментальные системы и утилиты)

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

Прикладное ПО. Для IBM PC разработаны и используются сотни тысяч различных прикладныхпрограмм для различных применений. Наиболее широко применяются программы:

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

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

q  обработки табличных данных –табличные процессоры;

q  обработки массивов информации –системы управления базами данных.

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

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

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

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

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

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

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

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

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

Системыавтоматизированного проектирования (САПР) позволяют осуществлять черчение иконструирование различных механизмов с помощью компьютера.

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

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

Программы-оболочки.Весьма популярный класс системных программ составляютпрограммы-оболочки. Они обеспечивают более удобный и наглядный способ общения скомпьютером, чем с помощью командной строки DOS.Многие пользователи настолько привыкли к удобствам,предоставляемым своей любимой программой-оболочкой, что чувствуют себя без нее«не в своей тарелке». Наиболее популярными программами-оболочками являются Norton Commander, Xtree Pro Gold, PC Shell из комплекта PC Tools. В состав операционной системы MS DOS, начиная с версии 4.0, также входит собственнаяпрограмма-оболочка Shell (впрочем, неочень популярная).

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

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

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

·         расширенныесредства для обмена информацией между программами.

Операционные оболочкиупрощают создание графических программ, предоставляя для этого большоеколичество удобных средств, и расширяют возможности компьютера. Но платой заэто являются повышенные требования к ресурсам. Так, для эффективной работы c Microsoft Windows необходим компьютер АТ/386, имеющий 4 Мбайтаоперативной памяти. Наиболее популярной программой-надстройкой является Microsoft Windows, иногда используется Desq View и значительно реже – другие оболочки (GEM, Geo Works и др.).

Вспомогательныепрограммы (утилиты)

К системным программамможно также отнести большое количество так называемых утилит, т.е. программвспомогательного назначения. Ниже мы кратко опишем некоторые разновидности этихпрограмм. Часто утилиты объединяются в комплексы, наиболее популярны комплексы Norton Utilities, PC Tools Deluxe и Mace Utilities.

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

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

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

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

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

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

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

Даже при наличии десятковтысяч программ для IBM PC пользователям может потребоватьсячто-то такое, чего не делают (или делают, но не так) имеющиеся программы. Вэтих случаях следует использовать системы программирования, т.е. системы дляразработки новых программ.

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

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

q  библиотекипрограмм, содержащие заранее подготовленные программы, которыми могутпользоваться программисты;

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

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

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

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

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

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

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

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

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

Базовый уровень

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

Системный уровень

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

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

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

Служебный уровень

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

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

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

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

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

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

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

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

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

Прикладной уровень

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

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

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

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

3. Графические редакторы.Широкий класс программ, предназначенных для создания и обработки графическихизображений. Различают три категории:

·          растровыередакторы;

·          векторныередакторы;

·          3-D редакторы(трехмерная графика).

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

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

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

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

·          создание пустойструктуры базы данных;

·          наличие средствее заполнения или импорта данных из таблиц другой базы;

·          возможностьдоступа к данных, наличие средств поиска и фильтраци.

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

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

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

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

Особенность CAD-системсостоит в автоматическом обеспечении на всех этапах проектирования техническихусловий, норм и правил. САПР являются необходимым компонентом для гибкихпроизводственных систем (ГВС) и автоматизированных систем управлениятехнологическими процессами (АСУ ТП).

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

8. Редакторы HTML(Web-редакторы). Особый класс редакторов, объединяющих в себе возможноститекстовых и графических редакторов. Предназначены для создания и редактированияWeb-страниц Интернета. Программы этого класса можно использовать при подготовкеэлектронных документов и мультимедийных изданий.

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

10. Системыавтоматизированного перевода. Различают электронные словари и программыперевода языка.

Электронные словари — этосредства для перевода отдельных слов в документе. Используютсяпрофессиональными переводчиками, которые самостоятельно переводят текст.

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

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

·          при абсолютномнезнании иностранного языка;

·          при необходимостибыстрого ознакомления с документом;

·          для перевода наиностранный язык;

·          для созданиячерновика, который потом будет подправлен полноценным переводом.

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

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

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

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

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

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

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

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

Трансляторы бываютдвух типов:

·          интерпретаторы,

·          компиляторы.

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

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

Инструментальные языкиделятся на языки низкого уровня (близкие к машинному языку) и языки высокогоуровня (близкие к человеческим языкам). К языкам низкого уровня принадлежатассемблеры, а высокого — Pascal, Basic, C/C++, языки баз данных и т.д. Всистему программирования, кроме транслятора, входит текстовый редактор,компоновщик, библиотека стандартных программ, отладчик, визуальные средстваавтоматизации программирования. Примерами таких систем являются Delphi, VisualBasic, Visual C++, Visual FoxPro и др.

еще рефераты
Еще работы по информатике, программированию