ОС как расширенная машина

Определение операционной системы

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

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

· Предоставление пользователям возможностей общего управления машиной.

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

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

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

1) MS – DOS

2) WINDOWS

3) OS/2

4) UNIX (LINUX)

Кроме того, среди системных программ следует выделить программы–оболочки, которые являются своеобразными “надстройками” над ОС. Они предназначены для упрощения диалога пользователя с ОС. Самые популярные из них – Norton Commander (NC), Volkov Commander (VC), Dos Navigator (DN).

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

Использование большинства компьютеров на уровне машинного языка затруднительно, особенно это касается ввода-вывода. Например, для организации чтения блока данных с гибкого диска программист может использовать 16 различных команд, каждая из которых требует 13 параметров, таких как номер блока на диске, номер сектора на дорожке и т. п. Когда выполнение операции с диском завершается, контроллер возвращает 23 значения, отражающих наличие и типы ошибок, которые, очевидно, надо анализировать. Даже если не входить в курс реальных проблем программирования ввода-вывода, ясно, что среди программистов нашлось бы не много желающих непосредственно заниматься программированием этих операций. При работе с диском программисту-пользователю достаточно представлять его в виде некоторого набора файлов, каждый из которых имеет имя. Работа с файлом заключается в его открытии, выполнении чтения или записи, а затем в закрытии файла. Вопросы подобные таким, как следует ли при записи использовать усовершенствованную частотную модуляцию или в каком состоянии сейчас находится двигатель механизма перемещения считывающих головок, не должны волновать пользователя. Программа, которая скрывает от программиста все реалии аппаратуры и предоставляет возможность простого, удобного просмотра указанных файлов, чтения или записи - это, конечно, операционная система. Точно так же, как ОС ограждает программистов от аппаратуры дискового накопителя и предоставляет ему простой файловый интерфейс, операционная система берет на себя все малоприятные дела, связанные с обработкой прерываний, управлением таймерами и оперативной памятью, а также другие низкоуровневые проблемы. В каждом случае та абстрактная, воображаемая машина, с которой, благодаря операционной системе, теперь может иметь дело пользователь, гораздо проще и удобнее в обращении, чем реальная аппаратура, лежащая в основе этой абстрактной машины.

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