Системное программное обеспечение
Из Википедии, бесплатной энциклопедии
Достоверность этой статьи поставлена под сомнение. |
Систе́мное программное обеспечение — программы, решающие задачи общевычислительного характера — выделения и разделения ресурсов, доступа к устройствам, обеспечивающие среды для разработки, запуска и выполнения других программ; системное программирование — деятельность по созданию системного программного обеспечения.
В отличие от прикладного программного обеспечения, системное не решает конкретные практические задачи, а лишь обеспечивает работу других программ, предоставляя им сервисные функции, абстрагирующие детали аппаратной и микропрограммной реализации вычислительной системы, управляет аппаратными ресурсами вычислительной системы.
Отнесение того или иного программного обеспечения к системному условно и зависит от соглашений, используемых в конкретном контексте. Как правило, к системному программному обеспечению относятся операционные системысвязующего программного обеспечения.
, утилиты , системы программирования , системы управления базами данных , широкий класс
Операционные системы
[править | править код]Операционная система — комплекс системных программ, расширяющий возможности вычислительной системы, а также обеспечивающий управление её ресурсами, загрузку и выполнение прикладных программ, взаимодействие с пользователями. В большинстве вычислительных систем операционные системы являются основной, наиболее важной (а иногда единственной) частью системного программного обеспечения.
Основные функции (простейшие операционные системы):
- загрузка программ в оперативную память и их выполнение;
- стандартизованный доступ к периферийным устройствам (устройства ввода-вывода);
- управление оперативной памятью (распределение между процессами, виртуальная память);
- управление доступом к данным на энергонезависимых носителях, организованным в той или иной файловой системе;
- пользовательский интерфейс;
- сетевые операции, поддержка стека протоколов.
Существуют две группы определений операционных систем: «совокупность программ, управляющих оборудованием» и «совокупность программ, управляющих другими программами». Обе они имеют свой точный технический смысл, который, однако, становится ясен только при более детальном рассмотрении вопроса о том, зачем вообще нужны операционные системы.
Есть приложения вычислительной техники, для которых операционные системы излишни. Например, встроенные микрокомпьютеры содержатся сегодня во многих бытовых приборах, автомобилях (иногда по десятку в каждом), мобильных телефонах, носимых электронных устройствах. Зачастую такой компьютер постоянно исполняет лишь одну программу, запускающуюся по включении. И простые игровые приставки — также представляющие собой специализированные микрокомпьютеры — могут обходиться без операционной системы, запуская при включении программу, записанную на вставленном в устройство «картридже» или компакт-диске. Тем не менее некоторые микрокомпьютеры и игровые приставки всё же работают под управлением особых собственных операционных систем. В большинстве случаев это unix-подобные системы (последнее особенно верно в отношении программируемого коммутационного оборудования: файрволов, маршрутизаторов).
Предшественником операционных систем следует считать служебные программы (загрузчики и мониторы), а также библиотеки часто используемых подпрограмм, начавшие разрабатываться с появлением универсальных компьютеров 1-го поколения (конец 1940-х годов). Служебные программы минимизировали физические манипуляции оператора с оборудованием, а библиотеки позволяли избежать многократного программирования одних и тех же действий (осуществления операций ввода-вывода, вычисления математических функций).
В 1950—1960-е годы сформировались и были реализованы основные идеи, определяющие функциональные возможности операционных систем: пакетный режим, разделение времени и многозадачность, разделение полномочий, реальный масштаб времени, файловые структуры файловые системы.
Встроенные программы
[править | править код]Встроенные программы или firmware — это программы, «зашитые» в цифровые электронные устройства. В ряде случаев (например, BIOS IBM-PC совместимых компьютеров) являются по сути частью операционной системы, хранящейся в постоянной памяти. В достаточно простых устройствах вся операционная система может быть встроенной. Многие устройства современных компьютеров имеют собственные «прошивки», осуществляющие управление этими устройствами и упрощающие взаимодействие с ними.
Утилиты
[править | править код]Утилиты (англ. utility или tool) — программы, предназначенные для решения узкого круга вспомогательных задач. Иногда утилиты относят к классу сервисного программного обеспечения.
Утилиты используются для мониторинга показателей датчиков и производительности оборудования (например, мониторинга температур процессора или видеоадаптера), управления параметрами оборудования (ограничение максимальной скорости вращения CD-привода; изменение скорости вращения вентиляторов), контроля показателей (проверка ссылочной целостности; правильности записи данных), расширения возможностей (форматирование или переразметка диска с сохранением данных, удаление без возможности восстановления).
Системы программирования
[править | править код]К категории инструментального программного обеспечения относятся системные программы, предназначенные для разработки программного обеспечения:
- ассемблеры — компьютерные программы, осуществляющие преобразование программы в форме исходного текста на языке ассемблера в машинные команды в виде объектного кода;
- трансляторы — программы или технические средства, выполняющее трансляцию программы;
- компиляторы — Программы, переводящие текст программы на языке высокого уровня, в эквивалентную программу на машинном языке.
- интерпретаторы — Программы (иногда аппаратные средства), анализирующие команды или операторы программы и тут же выполняющие их;
- компоновщики (редакторы связей) — программы, которые производят компоновку — принимают на вход один или несколько объектных модулей и собирают по ним исполнимый модуль;
- препроцессоры исходных текстов — это компьютерные программы, принимающие данные на входе, и выдающие данные, предназначенные для входа другой программы, например, такой, как компилятор;
- отла́дчики (англ. debugger) — модули среды разработки или отдельные программы, предназначенные для поиска ошибок в программах;
- текстовые редакторы — компьютерные программы, предназначенные для создания и изменения текстовых файлов, а также их просмотра на экране, вывода на печать, поиска фрагментов текста и других функций интерактивной текстовой обработки;
- специализированные редакторы исходных текстов — текстовые редакторы для создания и редактирования исходного кода программ. Специализированный редактор исходных текстов может быть отдельным приложением, или быть встроен в интегрированную среду разработки;
- библиотеки подпрограмм — сборники подпрограмм или объектов, используемых для разработки программного обеспечения;
- редакторы графического интерфейса.
Системы управления базами данных
[править | править код]Система управления базами данных (СУБД) — специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных.
Так как системы управления базами данных не являются обязательным компонентом вычислительной системы, в ряде классификаций их не относят к системному программному обеспечению; иногда относятся в подкласс связующего программного обеспечения, но чаще всего — как самостоятельный подкласс системного программного обеспечения.
Основные функции СУБД:
- управление данными во внешней памяти;
- управление данными в оперативной памяти с использованием кэширования;
- журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
- поддержка языков баз данных (языка определения данных, языка манипулирования данными).
См. также
[править | править код]Литература
[править | править код]- Васильев В. Г. Системное программное обеспечение
- Системное программное обеспечение — статья из Большой российской энциклопедии
Для улучшения этой статьи желательно:
|