Под операционной системой обычно понимают комплекс управляющих и обрабатывающих программ, который, с одной стороны, выступает как интерфейс между аппаратурой компьютера и пользователем, а другое предназначение для более эффективного пользования ресурсов вычислительной системы и организации надёжных вычислений.
Любой из компонентов прикладного программного обеспечения обязательно работает под управлением операционных систем. На схеме отображена обобщённая процедура программного обеспечения.
Прикладные
Программы
Утилиты
Операционная
система
Аппаратное обеспечение
компьютера
Видно, что не один из компонентов программного обеспечения, за исключением самой операционной системы, не имеет непосредственного доступа к аппаратуре компьютера. Даже пользователь взаимодействует со своими программами через интерфейс. Любые их команды, прежде чем попасть в прикладные программы, проходят через операционные системы, основными функциями, которые выполняются операционной системой, являются:
1) приём от пользователя заданий или команд, формулированных на соответствующем языке и их обработка;
2) приём и исполнение программы запроса на запуск/приостановку других программ;
3) загрузка в оперативную память, подлежащие исполнению, программы;
4) инициализация программ (передача ей управления), в результате чего процессор использует программу;
5) идентификация программ;
6) обеспечение работы системы управления файлами базы данных, что позволяет резко увеличить эффективность программного обеспечения;
7) обеспечение режима мультипрограммирования, т.е. выполнение двух или более программ на одном процессоре, создающая видимость их одновременного исполнения;
8) обеспечение функции по организации и управления всеми операциями ввода и вывода;
9) удовлетворение жёстким ограничениям на время в режиме реального времени;
10) распределение памяти:
а) организация виртуальной памяти;
б) в большинстве современных систем.
11) планирование и диспетчеризация в соответствии с заданием;
12) организация м-ма обмена сообщениями и данными между выполняющимися программами;
13) защита одной программы от влияния других программ, обеспечение сохранение данных;
14) предоставление услуг на случай частичного сбоя системы;
15) обеспечение работы системы программ, с помощью которых пользователи готовят свои программы.
Как правило, все современные операционные системы имеют систему управления памятью. Назначающаяся СУП-организация более удобного доступа к данным организациям как файл. Ряд операционных систем позволяют работать с несколькими файловыми системами одновременно. В этом случае говорят о вмонтированной файловой системе, т.е. дополнительную память можно установить.
Есть простейшие операционные системы, которые могут работать и без файловых систем или только с одной стороны из файловых систем. Любая система управления файлами разработана для работы конкретной операционной системы и конкретной файловой системы.
Например, известная файловая система FAT.
File
Allocation
Table
Имеет множество реализации как система управления файлами, например, FAT 16 под систему MS-DOS или Super FAT для OS/2 или FAT для Windows.
Для работы с файлами, организованные в соответствии с некоторыми файловыми системами для каждой операционной системы должна быть организована соответствующая система управления файлами. Она будет работать только в той операционной системе, для которой она разработана. Для удобства пользования с операционной системой может использоваться дополнительные интерфейсные оболочки. Их основное назначение, либо расширить возможность операционной системы, либо изменить встроенные в систему возможности. Классическим примером интерфейсных оболочек можно назвать:
1) X Windows в системах семейства Unix;
2) KDE – K Desktop Environment;
3) PM Shell;
4) Object Desktop.
Существуют различные варианты интерфейса для семейства операционной системы Windows, которые заменяют Explover, в файле system.ini.
В операционной системе заменяемой является только интерфейсная оболочка. Операционная среда определяется программными интерфейсами.
Application
Program
Interface
API – интерфейс прикладного программирования, включает в себя управление процессами, памятью и вводом/выводом.
Ряд операционных систем может выполнять ряд программ, созданных для выполнения в других операционных системах. Соответствующая среда организуется в рамках данной машины. Аналогично, в Linux можно создать условия для выполнения программ, написанных для Windows 98.
Под утилитами понимают специальные системы программирования, с помощью которых можно обслужить операционную систему, выполнять обработку данных, осуществляющих оптимизацию данных на носителе и производить работы по обслуживанию операционной системы.
К утилитам относится программа разбиения накопителя на магнитных дисках на разделы и программу форматирования, программу переноса основных системных файлов самой операционной системой. Утилиты могут работать только в соответствующей операционной системе.