Программное обеспечение состоит из. Что такое программное обеспечение компьютера? Основные принципы разработки современного программного обеспечения

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

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

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


Рис. 2.1.

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

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

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

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

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

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

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


Рис. 2.2.

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

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

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

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

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

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

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

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


Рис. 2.3.

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

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

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

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

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

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

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

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

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

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

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

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

База

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

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

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

Начнем разбор вопроса о том, что такое программное обеспечение, с его классификации.

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

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

В этом классе можно выделить два важных подраздела:

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

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

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

Для компьютера

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

В инструментальном ПО можно выделить три подгруппы:

  • языки и системы программирования;
  • интегрированные среды программирования;
  • программные комплексы.

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

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

Для пользователя

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

  • Процедурно-ориентированные языки программирования - это специализированное программное обеспечение. Примеры - Паскаль (Pascal), Бэйсик (Basic). Эти простейшие языки программирования служат для написания элементарных прикладных программ, функций и процедур. А также, для описания алгоритмов решения поставленных задач.
  • Проблемно-ориентированные языки - позволяют решать задачи в более узких конкретных областях программирования, их примерами можно назвать - Лисп, АПЛ.
  • Объектно-ориентированные языки - более современные и удобные средства для создания прикладных приложений и создающие различные виды программного обеспечения для конечного пользователя. Главной их особенностью является возможность делать готовые элементы приложения, такие как диалоговые окна, поля для заполнения, кнопки. Для иллюстрации можно назвать такие языки, как С++ и Visual Basic.

С чем мы работаем

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

  1. Пожалуй, самая распространённая категория приложений - это мультимедиа. Т. е. программы воспроизведения видео, аудио, игры. Всё то, что служит для развлечения конечного пользователя. Таким образом, одно из величайших изобретений человечества из рабочего научного инструмента превратилось в средство развлечения широкой публики.
  2. Информационно-поисковое ПО. Как понимаете, это различные браузеры и клиенты интернет-технологии, предназначенные для получения информации из мировой сети.
  3. Общего назначения. Это виды программного обеспечения, используемого в обычной жизни исключительно по необходимости. Это графические и текстовые редакторы, почтовые сервисы, базы данных.
  4. Проблемно-ориентированное. Например, экспертные системы или системы аудио- и видеоконференций.
  5. Программные среды профессионального уровня. Это бухгалтерские и педагогические системы, системы контроля управления доступа.

Наглядный пример

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

  • 1C Бухгалтерия. Яркий пример профессионального ПО, служащего для работы с бухгалтерией, правовой областью и ещё множеством поддерживаемых и смежных областей.
  • Microsof Office Word. Самый понятный и доступный пример ПО общего назначения. Практически каждый в своей жизни запускал этот пакет программ для составления резюме, реферата или отчета.
  • Microsof Office Access. Простейшая реализация базы данных, также являющееся ПО общего назначения.
  • О категории мультимедиа слышали все. Это всем известный Windows Media Player, способный проигрывать как аудио-, так и видеофайлы.
  • Photoshop - очередной пример ПО общего назначения. Являясь профессиональным графическим редактором, используемым во многих полиграфических фирмах, также относится к программной среде профессионального уровня.
  • Если говорить о ПО общего назначения, то с ним сталкивался каждый человек, хоть раз запускавший компьютер. Это всем известный Windows.

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

Инсталляция

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

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

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

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

Творение

Разработка программного обеспечения проходит в несколько этапов.

  • Начальная стадия - это этап появления и реализации идеи. Создание дизайна будущего приложения, а также его функционала.
  • Альфа-тестирование - процесс внутреннего тестирования. Его и добавление каких-либо функций проводят внутри ограниченного круга людей, обычно разработчиков или близких к ним людей.
  • Бета-тестирование проводят среди потребителей по решению производителя. Это процесс отладки программы.
  • Релиз-кандидат. Программа, прошедшая все стадии тестирования, с найденными и исправленными критическими ошибками. Практически готовое приложение к релизу.
  • И, наконец, релиз. Готовый к выпуску и тиражированию продукт.
  • Последний этап, который продолжает длиться после выпуска - программная поддержка и сопровождение приложения.

Выводы

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

Программное обеспечение компьютера

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

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

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

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

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

Типы программного обеспечения

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

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

    - системное ПО;
    - прикладное ПО;
    - системы программирования.

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

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

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

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

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

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

    Табличные процессоры, позволяющие организовывать очень распространенные на практике табличные расчеты;

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

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

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

Вопросы и задания

    1. Что такое программное обеспечение ЭВМ?
    2. Какие задачи выполняет прикладное программное обеспечение?
    3. Назовите основные виды прикладных программ общего назначения.
    4. Что такое прикладные программы специального назначения?

О системном ПО и системах программирования

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

Для чего нужны прикладные программы, понять несложно. А что же такое системное программное обеспечение?

Главной частью системного программного обеспечения является операционная система (ОС).

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

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

Вот названия некоторых распространенных ОС для персональных компьютеров: MS-DOS, Windows, Linux.

Интерактивный режим

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

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

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

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

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

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

Кроме системного и прикладного ПО существует еще третий вид программного обеспечения. Он называется системами программирования (СП).

Система программирования - инструмент для работы программиста.

С системами программирования работают программисты. Всякая СП ориентирована на определенный язык программирования. Существует много разных языков, например Паскаль, Бейсик, ФОРТРАН, С ("Си"), Ассемблер, ЛИСП и др. На этих языках программист пишет программы, а с помощью систем программирования заносит их в компьютер, отлаживает, тестирует, исполняет.

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

Вопросы и задания

    1. Какие разновидности программного обеспечения имеются на современных компьютерах?
    2. Что такое операционная система (ОС)? Какие основные функции она выполняет?
    3. Что такое диалоговый режим общения между ОС и пользователем?
    4. Для чего предназначены системы программирования? Кто с ними работает?

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

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

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

Типы программ

Есть два основных типа программного обеспечения: системные программы и приложения. Первый тип используется для управления аппаратными средствами, в то время как второй тип используется для всех остальных задач. К системному программному обеспечению относятся операционные системы, такие как Windows или Linux (популярные дистрибутивы Linux можно найти здесь https://softprime.net/), драйвера, которые позволяют компьютеру взаимодействовать с другими устройствами, как принтеры или управлять внутренними аппаратными средствами. Есть множество различных видов приложений, такие как игры, медиаплееры, текстовые редакторы, антивирусные программы и приложения для создания новых программ.

Как это работает?

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

Программы с открытым исходным кодом и программы, защищенные авторским правом

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

по информатике

« Программное обеспечение компьютера»


Введение

2.1 ПО с открытым кодом (Open source)

3. ОС Microsoft Windows

4. ОС GNU/Linux

5. Файловая система

6. Драйверы

7. Вредоносные программы и антивирусные средства

7.1 Вирусы

7.2 Сетевые черви

7.3 Троянские программы

7.4 Административные меры борьбы с вирусами

7.5 Признаки появления вирусов

7.6 Краткий обзор антивирусных пакетов

8. Архиваторы

9. Программы обслуживания жестких дисков

Список использованной литературы

Введение

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

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

В компьютерном жаргоне часто используется слово «софт» от английского software.

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

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

Инструментальное ПО предназначено для использования в ходе проектирования, разработки и сопровождения программ. Это: интегрированные среды разработки, SDK, компиляторы, интерпретаторы, линковщики, ассемблеры, отладчики и т.п.

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

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

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

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

С 1990-х наиболее распространёнными операционными системами являются ОС семейства Microsoft Windows и системы класса UNIX (особенно Linux).

Основные функции ОС:

Стандартизованный доступ к периферийным устройствам (устройствам ввода-вывода);

Управление оперативной памятью;

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

Пользовательский интерфейс.

Дополнительные функции ОС:

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

Взаимодействие между процессами;

Межмашинное взаимодействие (компьютерная сеть);

Защита самой системы, а также пользовательских данных и программ от вредоносных действий пользователей или приложений;

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

1. Семейства и хронология операционных систем

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

В 1981 г. фирма IBM выпустила персональный компьютер (IBM PC), архитектура которого стала стандартом в мире. Все персональные компьютеры принято разделять на IBM-совместимые (абсолютное большинство) и IBM-несовместимые, например компьютер Macintosh, производимый фирмой Apple. Компьютеры Macintosh работают под управлением операционной системы MacOS.

В 1982 г. – фирма Microsoft выпустила ставшую на долгие годы самой популярной для IBM-совместимых ПК операционную систему MS-DOS (Disc Operating System).

В 1985 г.– все та же Microsoft выпустила первую версию Windows, которая развилась и на сегодня является самой распространенной операционной системой с самыми популярными прикладными программами.

1991 г. – год рождения операционной системы Linux – основного конкурента Windows, получающего все более широкое распространение.

Кроме того, можно перечислить много названий операционных систем различных производителей, например: Netware (Novell), OS/2 (IBM), SunOS (Sun Microsystems), Java Desktop System (Sun Microsystems), FreeBSD (одно из open source ответвлений UNIX) и т.п.

2. Правовая охрана программ и GNU GPL

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

Собственническое или проприета́рное программное обеспечение (proprietary software) - это программное обеспечение, которое имеет ограничения на его использование и копирование, обычно требуемые собственником. Предотвращение использования, копирования или модификации могут быть достигнуты правовыми или техническими средствами. Технические средства включают в себя выпуск только машинно-читаемых двоичных файлов, и сокрытия читаемого человеком исходного кода. Правовые средства могут включать в себя лицензирование ПО, копирайт (copyright, ©) и патенты.

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

В семидесятых годах 20 века программное обеспечение зачастую разрабатывалось свободными объединениями программистов и бесплатно передавалось другим нуждающимся в нем пользователям. Нередко этим занимались даже крупные фирмы. К 1983 году положение изменилось - наступила эра персональных компьютеров, коммерческие программы и операционные системы (в частности, DOS от Microsoft) начали свое победное шествие по миру. Чуть позже идея коммерциализации проникла и в мир «больших» машин и «серьезного» программирования.

Ричард Столлмен, один из основателей ОС Unix в1983 году, основал проект GNU, целью которого было вернуть прежние взаимоотношения производителей и потребителей программного обеспечения. GNU (рекурсивный акроним от англ. GNU is Not Unix - «GNU - это не Unix») - проект по созданию свободной UNIX-подобной операционной системы.

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

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

Сколько угодно копировать, как угодно широко ее распространять;

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

И, наконец, свободно распоряжаться измененной версией - хоть раздавать ее даром, хоть запрашивать за нее миллиард.

Только на одну вещь пользователь такого программного обеспечения не имеет права ни в коем случае. Он не может при дальнейшем распространении скрыть исходный код программы, объявив себя его владельцем, и остановить, таким образом, ее, программы, свободное совершенствование и развитие. Специально для таких программ проект GNU ввел в обиход понятие copyleft (в отличие от copyright), когда создатель продукта сохраняет на него практически все авторские и имущественные права при любых обстоятельствах - даже если и распространяет его совершенно бесплатно.

Итак, свобода программного обеспечения состоит из:

Свободы писать (модифицировать) код;

Свободы распространять (публиковать, тиражировать) код.

2.1. ПО с открытым кодом (Open source)

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

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

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

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

3. ОС Microsoft Windows

MS Windows (произносится Ви́ндоуз) - семейство операционных систем компании Microsoft (Майкрософт). Глава корпорации Microsoft – Билл Гейтс.