Программное обеспечение – это совокупность программ, предназначенная для решения задач на ПК, которое является неотъемлемой частью компьютерной системы. Оно является логическим продолжением технических средств. Сфера применения конкретного компьютера определяется созданным для него ПО. Программное обеспечение современных компьютеров включает миллионы программ — от игровых до научных. Все программное обеспечение, можно условно разделить на две категории: системное программное обеспечение и прикладное программное обеспечение.
В своем исследовании я рассматривала системное программное обеспечение, которое обеспечивает эффективное управление компонентами вычислительной системы и помогает управлять компьютерным оборудованием и компьютерной системой. Системное программное обеспечение является необходимым компонентом для любой вычислительной машины (компьютера).
Целью исследования было детальное изучение системного программного обеспечения и его составляющих: операционных систем, систем управления файлами, утилит и систем программирования.
Во время изучения темы «Системное программное обеспечение» использовались следующие источники:
- учебник Молчанова А. Ю. «Системное программное обеспечение»,
- учебник Бройдо В.Л. «Вычислительные системы, сети и телекоммуникации»,
- статьи из Википедии.
- Системное программное обеспечение, его состав.
Системное программное обеспечение — это комплекс программ, которые обеспечивают эффективное управление компонентами вычислительной системы, такими как процессор, оперативная память, каналы ввода-вывода, сетевое оборудование, выступая как «межслойный интерфейс» с одной стороны которого аппаратура, а с другой приложения пользователя. В отличие от прикладного программного обеспечения, системное не решает конкретные прикладные задачи, а лишь обеспечивает работу других программ, управляет аппаратными ресурсами вычислительной системы и т.д. Системное ПО управляет ресурсами компьютерной системы и позволяет пользователям программировать в более выразительных языках, чем машинных язык компьютера. Состав системного ПО мало зависит от характера решаемых задач пользователя.
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты данного класса носят общий характер применения, независимо от специфики предметной области. К системным программным продуктам предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
К системному программному обеспечению относятся:
- операционные системы;
- интерфейсные оболочки для взаимодействия пользователя с ОС;
- системы управления файлами;
- системы программирования;
- утилиты.
Системное программное обеспечение предназначено для:
- создания операционной среды функционирования других программ (другими словами, для организации выполнения программ);
- автоматизации разработки (создания) новых программ;
- обеспечения надежной и эффективной работы самого компьютера и вычислительной сети;
- проведения диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
- выполнения вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т.д.).
2.1. Операционные системы, их функции.
Операционная система – совокупность программных средств, обеспечивающая управление аппаратной частью компьютера и прикладными программами, а также их взаимодействием между собой и пользователем. В большинстве вычислительных систем операционные системы являются основной частью системного программного обеспечения.
Операционная система выполняет роль связующего звена между аппаратурой компьютера, с одной стороны, и выполняемыми программами, а также пользователем, с другой стороны. Операционная система обычно хранится во внешней памяти компьютера — на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ. Этот процесс называется загрузкой операционной системы.
Операционную систему можно назвать программным продолжением устройства управления компьютера. Она скрывает от пользователя сложные ненужные подробности взаимодействия с аппаратурой, образуя прослойку между ними. В результате этого люди освобождаются от очень трудоёмкой работы по организации взаимодействия с аппаратурой компьютера.
Операционная система, с одной стороны, выступает как интерфейс между аппаратурой компьютера и пользователем с его задачами, с другой стороны, предназначена для эффективного использования ресурсов вычислительной системы и организации надежных вычислений.
Основные функции операционных систем:
- Загрузка приложений в оперативную память и их выполнение.
- Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).
- Управление оперативной памятью (распределение между процессами, виртуальная память).
- Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, компакт-диск и т. д.), организованным в той или иной файловой системе.
- Пользовательский интерфейс.
- Сетевые операции, поддержка стека протоколов.
- Параллельное или псевдопараллельное выполнение задач (многозадачность).
- Взаимодействие между процессами: обмен данными, взаимная синхронизация.
- Защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.
- Разграничение прав доступа и многопользовательский режим работы (аутентификация, авторизация).
В различных моделях компьютеров используют операционные системы с разной архитектурой и возможностями. Для их работы требуются разные ресурсы. Они предоставляют разную степень сервиса для программирования и работы с готовыми программами. В зависимости от количества одновременно обрабатываемых задач и числа пользователей, которых могут обслуживать ОС, различают четыре основных класса операционных систем:
- однопользовательские однозадачные, которые поддерживают одну клавиатуру и могут работать только с одной (в данный момент) задачей;
- однопользовательские однозадачные с фоновой печатью, которые позволяют помимо основной задачи запускать одну дополнительную задачу, ориентированную, как правило, на вывод информации на печать. Это ускоряет работу при выдаче больших объёмов информации на печать;
- однопользовательские многозадачные, которые обеспечивают одному пользователю параллельную обработку нескольких задач. Например, к одному компьютеру можно подключить несколько принтеров, каждый из которых будет работать на “свою” задачу;
- многопользовательские многозадачные, позволяющие на одном компьютере запускать несколько задач нескольким пользователям. Эти операционные системы очень сложны и требуют значительных машинных ресурсов.
Наиболее распространенными операционными системами являются:
- Mac OS – операционная система корпорации Apple.
- OS/2 — операционная система фирмы IBM.
- Windows – операционная система корпорации Microsoft.
- Linux – общее название Unix-подобных операционных систем на основе одноимённого ядра и собранных для него библиотек и системных программ, разработанных в рамках проекта GNU.
2.2. Системы управления файлами.
Системы управления файлами предназначены для организации более удобного доступа к данным, организованным как файлы. Вместо низкоуровневого доступа к данным с указанием конкретных физических адресов система управления файлами позволяет использовать логический доступ с указанием имени файла.
Любая система управления файлами не существует сама по себе – она разработана для работы в конкретной операционной системе и с конкретной файловой системой.
Файловая система – это часть операционной системы, назначение которой состоит в том, чтобы обеспечить пользователю удобный интерфейс при работе с данными, хранящимися на диске, и обеспечить совместное использование файлов несколькими пользователями и процессами.
Основные файловые системы:
- FAT – наиболее простая из файловых систем. Диск, отформатированный в файловой системе FAT, делится на кластеры, размер которых зависит от размера тома. Основой системы FAT является таблица размещения файлов, которая помещена в самом начале тома.
- HPFS – в этой файловой системе поддерживается структура каталогов FAT и добавлена сортировка файлов по именам. Файл состоит из «данных» и специальных атрибутов, помимо их так же присутствуют сведения о создании и внесении изменений, а также дата и время доступа.
2.3. Утилиты, их функции и типы.
Важными классами системных программ являются также программы вспомогательного назначения — утилиты (лат. utilitas — польза). Утилиты – программы, служащие для выполнения вспомогательных операций обработки данных или обслуживания компьютеров и расширяющие стандартные возможности оборудования и операционных систем, выполняющие узкий круг специфических задач. Утилиты предоставляют доступ к возможностям (параметрам и установкам), недоступным без их применения, либо делают процесс изменения некоторых параметров проще, т. е. автоматизируют его. Утилиты используются для:
- мониторинга показателей датчиков и производительности оборудования — мониторинг температур процессора, видеоадаптера; чтение S.M.A.R.T. жёстких дисков;
- управления параметрами оборудования — ограничение максимальной скорости вращения CD-привода; изменение скорости вращения вентиляторов.
- контроля показателей — проверка ссылочной целостности; правильности записи данных.
- расширения возможностей — форматирование и/или переразметка диска с сохранением данных, удаление без возможности восстановления.
К утилитам относятся:
- программы контроля, тестирования и диагностики, которые используются для проверки правильности функционирования устройств компьютера и для обнаружения неисправностей в процессе эксплуатации; указывают причину и место неисправности;
- программы-драйверы, которые расширяют возможности операционной системы по управлению устройствами ввода-вывода, оперативной памятью и т.д.; с помощью драйверов возможно подключение к компьютеру новых устройств или нестандартное использование имеющихся;
- программы-упаковщики (архиваторы), которые позволяют записывать информацию на дисках более плотно, а также объединять копии нескольких файлов в один архивный файл;
- антивирусные программы, предназначенные для предотвращения заражения компьютерными вирусами и ликвидации последствий заражения вирусами;
- программы оптимизации и контроля качества дискового пространства ;
- программы восстановления информации, форматирования, защиты данных;
- коммуникационные программы, организующие обмен информацией между компьютерами;
- программы для управления памятью, обеспечивающие более гибкое использование оперативной памяти.
Необходимо отметить, что часть утилит входит в состав операционной системы, а другая часть функционирует автономно.
2.4. Системы программирования.
К системному программному обеспечению относятся и системы программирования. Это набор специализированных программных продуктов, которые являются инструментальны средствами разработчика. Программные продукты данного класса поддерживают все этапы процесса программирования, отладки и тестирования создаваемых программ.
Система программирования включает следующие программные компоненты:
- редактор текста;
- транслятор с соответствующего языка;
- компоновщик (редактор связей);
- отладчик;
- библиотеки подпрограмм.
Заметим, что любая система программирования может работать только в соответствующей ОС, под которую она и создана, однако при этом она может позволять разрабатывать программное обеспечение и под другие ОС.
Трансляторы предназначены для преобразования программ, написанных на языках программирования, в программы на машинном языке. Программа, подготовленная на каком-либо языке программирования, называется исходным модулем. В качестве входной информации трансляторы применяют исходные модули и формируют в результате своей работы объектные модули, являющиеся входной информацией для редактора связей. Объектный модуль содержит текст программы на машинном языке и дополнительную информацию, обеспечивающую настройку модуля по месту его загрузки и объединение этого модуля с другими независимо оттранслированными модулями в единую программу.
Трансляторы делятся на два класса: компиляторы и интерпретаторы. Компиляторы переводят весь исходный модуль на машинный язык. Интерпретатор последовательно переводит на машинный язык и выполнят операторы исходного модуля
Компоновщик, или редактор связей – системная обрабатывающая программа, редактирующая и объединяющая объектные (ранее оттраслированные) модули в единые загрузочные, готовые к выполнению программные модули. Загрузочный модуль может быть помещен ОС в основную память и выполнен.
Отладчик позволяет управлять процессом исполнения программы, является инструментом для поиска и исправления ошибок в программе.
Системами программирования, ориентированные на создание Windows-приложений, являются: Borland Delphi, Microsoft Visual Basic, Borland C++ .
2.5. Требования к системному программному обеспечению.
К системным программным продуктам предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Системные программы должны удовлетворять следующим требованиям:
- прозрачность работы;
- гарантированная надежность выполнения в соответствии со спецификациями;
Функциональные требования называются спецификациями
- максимальная скорость выполнения;
- минимальные затраты на хранение машинных кодов;
- поддержка стандартных средств связи с прикладными программами.
Эффективность системных программ зависит от времени их создания и надежности исполняемого кода.
Требование эффективности системных программ вызывает необходимость использования специальных языков машинно-ориентированных типа языка Assembler и высокого уровня типа C или C++.
- Заключение.
Большая часть общего (системного) ПО входит в состав ОС. Часть общего ПО входит в состав самого компьютера (часть программ ОС и контролирующих тестов записана в ПЗУ или ППЗУ, установленных на системной плате). Часть общего ПО относится к автономными программам и поставляется отдельно.
Таким образом, за время учебно-ознакомительной практики мне удалось подробно изучить функции, предназначение и состав системного программного обеспечения, которое выполняет важные функции при работе с вычислительными машинами.
Так же, я узнала много новой и полезной информации об операционных системах, системах управления файлами и утилитах. Уверенна, что полученные теоретические и практические знания будут полезны в будущем.