Что такое программное обеспечение компьютера
Программное обеспечение (ПО, software) представляет собой набор специальных программ, позволяющих организовать обработку информации с использованием ПК.
Поскольку без ПО функционирование ПК невозможно в принципе, оно является неотъемлемой составной частью любого ПК и поставляется вместе с его аппаратной частью (hardware).
Программа – полное и точное описание последовательности действий (инструкций) компьютера по обработке информации, написанное на языке, понятном компьютеру.
Скачать Лекцию по теме «Классификация программного обеспечения»
Программное обеспечение (ПО) – совокупность специальных программ, облегчающих процесс подготовки задач к выполнению на ЭВМ и организующих прохождение их через машину, а также процедур, описаний, инструкций и правил вместе со всей связанной с этими компонентами документацией, используемых при эксплуатации вычислительной системы.
Обрабатывают информацию, управляют работой компьютера программы, а не устройства.
Новинки программного обеспечения уже давно доминируют над новыми аппаратными разработками. Комплект ПО по стоимости превосходит (иногда в несколько раз) стоимость компьютера адекватного класса.
Для эффективного использования компьютера должно соблюдаться соответствие между уровнем развития вычислительной техники и программного обеспечения. С одной стороны, ПО определяет функциональные возможности компьютера. С другой, установка конкретного ПО может быть ограничена конструктивными особенностями компьютера.
Назначение ПО:
- обеспечение работоспособности компьютера;
- облегчение взаимодействия пользователя с компьютером;
- сокращение цикла от постановки задачи до получения результата;
- повышение эффективности использования ресурсов компьютера.
Программное обеспечение позволяет:
- усовершенствовать организацию работы вычислительной системы с целью максимального использования ее возможностей;
- повысить производительность и качество труда пользователя;
- адаптировать программы пользователя к ресурсам конкретной вычислительной системы;
- расширить ПО вычислительной системы.
Максимальное использование возможностей вычислительной системы достигается, во-первых, за счет выделения каждому пользователю или задаче минимально необходимых ресурсов для своевременного и качественного решения его задач, во-вторых, за счет подключения к ресурсам вычислительной системы большого числа пользователей (в том числе и удаленных), в-третьих, путем перераспределения ресурсов между различными пользователями и задачами в зависимости от состояния системы и запросов на обработку.
Повышение производительности и качества труда пользователей происходит за счет автоматизации процедур расчетного и оформительского характера, реализуемых с помощью разнообразных средств программирования (алгоритмических языком, пакетов прикладных программ) и удобных устройств ввода-вывода информации.
Адаптируемость программ пользователя к ресурсам конкретной вычислительной системы обеспечивается тем, что операционная система содержит средство обслуживания большого диапазона машинных конфигураций. Кроме того, операционная система позволяет создавать и легко настраивать существующие программы на различные устройства ввода-вывода.
Расширение существующего ПО предполагает наличие следующих возможностей:
- создание пользователем собственных программ и пакетов, реализующих как конкретные расчетные задачи, так и процессы управления отдельными устройствами и всей вычислительной системой в целом;
- дополнение существующего ПО программами, позволяющими расширять возможности операционной системы, работать с новыми типами внешних устройств, новыми вычислительными системами (компьютерами), в новых областях применения.
ПО ориентировано на использование вычислительных систем в различных сферах деятельности и должно обеспечивать своевременное и адекватное поставленным задачам решение. Это вызывает необходимость соблюдения ряда требований при разработке компонентов ПО, основными из которых являются:
- модульность;
- наращиваемость и развитие;
- надежность;
- предсказуемость;
- удобство и эргономичность;
- гибкость;
- эффективность;
- совместимость.
Основные принципы разработки современного программного обеспечения:
- параметрическая универсальность;
- функциональная избыточность;
- функциональная избирательность.
Программы на компьютер можно установить двумя способами:
- Инсталляцией с дистрибутива
- Простым копированием
Первый (низший) уровень иерархии занимает внутреннее программное обеспечение ПЭВМ, сохраняемое в ее постоянной памяти. С его помощью ПЭВМ выполняет основные функции, определяемые аппаратной структурой. Программы внутреннего ПО работают непосредственно с аппаратными модулями компьютера. Вследствие этого они функционально связаны с ними и при замене определенного аппаратного модуля требуется заменить и программу внутреннего ПО, предназначенную для работы с ним.
Программы, обслуживающие аппаратные модули, называются драйверными программами или драйверами. Они позволяют при замене или подключении нового аппаратного модуля не производить изменений в других программах ПЭВМ, а только сменить драйвер соответствующего аппаратного модуля.
Внутреннее ПО представляет собой программный интерфейс, обеспечивающий взаимосвязь работы компьютера со всеми остальными программами. Доступ к программам внутреннего ПО производится только через систему программных прерываний.
Внутреннее ПО выполняет следующие основные функции:
- управляет широким набором периферийных устройств;
- осуществляет быструю проверку работоспособности ПЭВМ при ее включении;
- устанавливает отдельные аппаратные модули в исходное состояние;
- загружает программы ОС.
Основными элементами внутреннего ПО служат драйверы ввода-вывода, программа самопроверки и программа первоначальной загрузки. Внутреннее ПО взаимодействует, с одной стороны, с функциональными модулями ПЭВМ, а с другой стороны, реализует программный интерфейс операционной системы.
Программа самопроверки предназначена для проверки функциональных модулей ПЭВМ, т.е. установки схем компьютера в начальное состояние путем загрузки программных регистров необходимой информацией. При проверке отдельных функциональных модулей ПЭВМ в них могут быть обнаружены неисправности. Программа самопроверки сообщает пользователю об обнаруженных неисправностях с помощью сообщений на экране и (или) звукового сигнала.
При обнаружении ошибки проверку компьютера можно продолжить с помощью диагностических программ, загружаемых с дискеты. Если ошибка не нарушает работоспособности ПЭВМ, то по желанию пользователя ею можно пренебречь. Если в состав ПЭВМ включается новый функциональный модуль, то к общей программе самопроверки добавляется программа самопроверки данного модуля.
При успешном завершении самопроверки ПЭВМ готова к работе. Управление через программное прерывание передается программе начальной загрузки. Эта программа предназначена для считывания в оперативную память остальных компонентов операционной системы. При успешном выполнении этой операции управление передается только что считанной программе.
Драйверы ввода-вывода используются для обслуживания периферийных устройств ПЭВМ. Эти программы работают непосредственно с соответствующими контроллерами, что позволяет пользователю не знать физической организации конкретного устройства и работать только с командами драйвера, реализующими его обслуживание.
Драйверы имеют следующие особенности:
- открытую структуру, что позволяет добавлять в систему новые драйверы;
- гибкость организации доступа к драйверам через программные прерывания, что позволяет не фиксировать их в строго определенных областях памяти, быстро и легко их заменять;
- настраиваемую структуру, ориентирующую драйверные программы на определенный класс периферийных устройств, параметры которых размещены в специальных таблицах. Драйверы настраиваются на конкретные периферийные устройства при помощи изменений значений в этих таблицах;
- резидентное размещение в оперативной памяти, позволяющее использовать драйвер в любой момент времени из любой программы.
К основным драйверным программам относятся: драйвер жесткого диска, драйвер видеоадаптера, драйвер клавиатуры, драйвер печатающего устройства, системные драйверы (установка таймера, проверка конфигурации компьютера, определение емкости ОЗУ), дополнительные драйверы (драйвер связи и др.).
Операционная система занимает второй (средний) уровень иерархии ПО. Она управляет ресурсами компьютерной системы, к которым относятся оперативная и внешняя память, устройства ввода-вывода и программы пользователя. ОС взаимодействует с компьютером через интерфейс внутреннего ПО. Это дает возможность ПЭВМ, имеющим аппаратные различия, работать с одной и той же операционной системой.
ОС представляет собой набор программ управления ПЭВМ.
Состав ПО определяется кругом задач, которые пользователь предполагает решать с помощью компьютера.
По назначению, т.е. в зависимости от класса решаемых задач, ПО обычно разделяют на две основные группы: Общее (базовое) и прикладное.
Классификация программного обеспечения по функциональному назначению
Схема общей классификации ПО
Системное ПО – совокупность программ, обеспечивающих работоспособность компьютера; комплекс программ, которые осуществляют организацию вычислительного процесса и управление ресурсами компьютера.
Системы программирования (Инструментальное ПО) – совокупность программных средств, позволяющих разрабатывать программы.
Прикладное ПО – совокупность программ, предназначенных для решения задач из различных сфер человеческой деятельности.
Что такое программа и чем отличается от программного обеспечения
Программа – это одно приложение, с которым работает пользователь. Программное обеспечение – это комплекс одиночных утилит, которые соединены одной группой для того, чтобы пользователь мог работать с ними для получения глобального результата.
В пример можно привести «CCleaner». С помощью этой программы пользователь может почистить компьютер от мусора. А вот операционная система Windows (любая версия) является уже ПО.
Стоит отметить, что хоть фактически различие существует, на практике эти понятия обычно считают синонимами.
Системное программное обеспечение компьютера
Системное программное обеспечение включает в себя операционную систему и сервисные программы.
Операционная система (ОС) — главная часть программного обеспечения, без которой компьютер работать не может.
Операционная система — это комплекс программ, обеспечивающих совместное функционирование всех устройств компьютера и предоставляющих пользователю доступ к ресурсам компьютера.
Компьютер — сложная система, состоящая из множества аппаратных (физических) и программных (информационных) объектов. К физическим объектам относятся устройства памяти, монитор, клавиатура, принтеры и др.; к информационным объектам относятся всевозможные программы и данные.
Прикладное ПО: антивирусы, утилиты
Распространенные виды прикладного программного обеспечения — это антивирусы и утилиты. Первые предназначены защищать ПК от вредоносных программ, которые способны вывести из строя другое ПО или даже аппаратные компоненты компьютера. Одни из самых популярных в России антивирусов — NOD32, DrWeb, Kaspersky. Утилиты призваны обеспечивать стабильную работу ПК, следить за тем, насколько корректно работают процессор, диски, память и другие аппаратные компоненты компьютера.
Какие из конкретных образцов прикладного ПО находят наибольшую востребованность сегодня? Прежде всего, это касается программ для обработки текстов. Такого рода операции на компьютере — исторически самые первые. Одна из наиболее популярных в мире программ для обработки текстов и выполнения сопутствующих операций (рисование таблиц, графиков и т. д.) — Word. Разработала ее одна из крупнейших в мире корпораций — американская Microsoft. Допустима ее русская транскрипция, которая звучит как «программа Ворд».
К настоящему моменту выпущено несколько версий данного ПО. Функции в каждом из них отличаются, но базовая (и самая востребованная на практике) задача, выполняемая MS Word в той или иной модификации, — форматирование текста, сохранение его в файл и обеспечение (при необходимости) его корректного вывода на принтер.
Системное программное обеспечение (ПО): что это
Системное программное обеспечение – это сложный комплекс, обеспечивающий взаимодействие между компонентами вычислительной машины, управление ими. Выполняет роль интерфейса между пользователем и аппаратурой. Нужно для организации функционирования компьютера, взаимодействия человека с ним, распределения и управления аппаратным ресурсами.
Разрабатывается, как правило, для ряда однотипных или аналогичных вычислительных систем. Это позволяет реализовать типовые функции, применяемые во многих случаях: работа с файловой системой, управление приложениями, взаимодействие с периферийными устройствами.
Состав
- Операционные системы (ОС) – сложный программный комплекс для организации доступа пользователя к аппаратуре, управления железом. Выступает посредником между устройствами, микроархитектурой ПК и прикладным ПО.
- Драйверы оборудования – библиотеки, организовывающие доступ к устройствам, управление ими, взаимодействие оборудования с приложениями и операционной системой.
- Загрузчики – микропрограмма, загружающая исполняемый код в оперативную память.
- Трансляторы – превращают исходный код в исполняемый. Иногда относятся к инструментальному ПО.
- Сервисные утилиты, командные оболочки – служебное ПО, рассчитанное на обслуживание компьютера, оптимизацию, повышение безопасности и надёжности его работы.
- Системные службы (сервисы) – автоматически выполняемые ОС приложения со специализированными функциями.
- Операционные оболочки (shell) – среда для взаимодействия пользователя с ОС, упрощения отправки ей управляющих команд посредством командной строки (CLI) либо графического интернета (GUI).
Иногда к системному ПО причисляют промежуточное – обычно обеспечивает единый программный интерфейс.
Вы знаете, что такое софт в компьютере – это программная оболочка, совокупность всех приложений, нужных для работы вычислительной машины: операционная система, драйверы, прикладное, системное, базовое ПО.
Функции СПО
- Управление аппаратурой на всех этапах работы компьютера.
- Предоставление доступа пользовательским приложениям к аппаратным ресурсам.
- Гарантия защиты, конфиденциальности и надёжности хранения информации.
- Организация доступа ко внешним ресурсам – локальным и глобальным сетям, периферийным устройствам.
- Предоставление платформы для разработки ПО.
- Проведение диагностики и тестирования комплектующих.
- Распределение доступа к памяти и процессорному времени.
Каждую функцию можно разделить на множество мелких.
Виды программного обеспечения
Сегодня существует огромное количество самых разных программ, предназначенных для выполнения совершенно разных функций: арифметических или инженерных расчётов, рисования, программирования, проигрывания музыки или фильмов и т. п. Но в то же время, каждая из них не выполняется сама по себе на персональном компьютере, она запускается, как это принято говорить, под управлением той или иной операционной системы.
Возникает резонный вопрос: «Почему же нельзя запустить каждую из программ самостоятельно минуя эту самую операционную систему, если программа – это набор кодов, при помощи которых можно управлять компьютером?»
На самом деле — конечно можно, и такое тоже практикуется, например, в станках с ЧПУ (числовым программным управлением), в автоматах на производстве и т. п., но есть несколько моментов, из-за которых и были разработаны эти самые операционные системы для персональных компьютеров и даже больших ЭВМ.
Дело в том, что когда речь идёт о стандартном автомате – он выполняет набор простых последовательных операций, например, выдвинуть манипулятор, взять заготовку, повернуться, положить заготовку на нужное место. Далее операция повторяется. Все время автомат выполняет одни и те же действия по одной и той же, одной программе.
В случае же с ПК пользователь хочет не только, например, рисовать в загруженной программе, он хочет одновременно с этим слушать музыку, быть, как это принято сегодня говорить, «на связи» с близкими и друзьями, т. е. в один и тот же момент времени работать не с одной, а с несколькими программами одновременно.
Кроме этого, есть ещё один чисто практический момент. Разрабатывая программу для ПК, которая могла бы работать самостоятельно без операционной системы, пришлось бы все функции работы с оборудованием компьютера описывать в одной программе: чтение и запись на диск, ввод-вывод с клавиатуры, работу с монитором и т. д. В результате – огромные временные затраты, большой размер ПО, зависимость от аппаратной платформы, наличие большого количества ошибок и ещё целый ряд отрицательных моментов.
Операционная система берёт на себя большинство подобных «рутинных» операций, обеспечивая при этом «многозадачность». То есть пользователь может запустить и выполнять на своём персональном компьютере не одну, а сразу несколько программ одновременно.
Таким образом, все программное обеспечение можно условно разделить на три вида:
- Системное ПО;
- Прикладное ПО;
- Инструментальное ПО.
Системное программное обеспечение
Это совокупность программ, которые обеспечивает управление аппаратной частью ПК: процессором, оперативной памятью, устройствами ввода-вывода, графическими системами, сетевыми устройствами и т. д. В частности, к такому ПО относятся:
- Операционные системы;
- Драйверы — небольшие по размеру программы, обеспечивающие корректную работу с той или иной частью оборудования (графическими, сетевыми, звуковыми платами, контроллерами и т. п.);
- Дополнительные программы, расширяющие возможности операционной системы.
Основным отличием системного программного обеспечения от других его видов является то, что оно не нацелено на выполнение каких-либо практических или специфических задач. Оно лишь обеспечивает правильную работу других программ, являюсь своеобразной «прослойкой» между оборудованием компьютера с одной стороны и программным кодом пользователя с другой, обеспечивая их корректное взаимодействие.
Прикладное программное обеспечение
Этот класс ПО самый обширный. Именно к нему и относится большинство программ, которые мы используем в своей повседневной жизни. Браузеры, проигрыватели аудио и видеофайлов, графические и текстовые редакторы, антивирусные пакеты, бухгалтерские и другие программы, выполняющие различные расчёты и вычисления – все это, как и многие программы, разработанные для выполнения конкретных действий, функций и пользовательских задач носит название прикладного программного обеспечения.
Инструментальное ПО
Этот вид программного обеспечения является весьма специфическим ПО. С одной стороны, его также можно было бы отнести и к прикладному виду, но с другой стороны, в силу специфики своего применения и использования, оно выделено в отдельный вид (хотя точнее было бы назвать его подвидом прикладного).
Основной функцией для программ инструментального ПО является предоставление возможности по проектированию, созданию, отладке и сопровождению программного кода, т. е. по сути дела – это различные среды программирования: компиляторы с языков высокого уровня, отладчики, редакторы и пр.
Дело в том, что любой компьютер, любое вычислительное, цифровое устройство наших с вами слов «не понимает». Такие устройства работают со своим «машинным языком» — двоичным кодом. Но программирование напрямую в «машинный код» представляет собой определённые трудности для написания программ. Поэтому и было разработано специализированное программное обеспечение, которое переводит более простые для понимания слова программных «языков высокого уровня» в «машинный код». Такие программы получили название компиляторы и интерпретаторы.
Разница состоит в том, что компилятор позволяет получить готовый к выполнению файл, а интерпретатор, файл, который можно запустить на компьютере, только при помощи его самого. Кстати, написанный текст программы, содержащий команды на языке высокого уровня, получил название «исходный код» (на компьютерном сленге – «исходник»).
Справедливости ради необходимо заметить, что файлы программ содержат машинный код не в «двоичной», а как правило, в «шестнадцатеричной» системе исчисления. А специальная системная программа, встроенная в операционную систему – «командный процессор», «переведёт» «шестнадцатеричный» код в «двоичный». Сделано это для того, чтобы сократить размер программных файлов, так как «шестнадцатеричная» форма записи намного компактнее.