СОДЕРЖАНИЕ
Введение
Глава I. Назначение операционных систем
1.1. Операционная система как расширенная машина
1.2. Операционная система как система управления ресурсами
Глава II. Основные функции операционных систем
Глава III. Классификация современных операционных систем
Заключение
Список используемой литературы
ВВЕДЕНИЕ
В данном реферате целью автора является раскрытие назначения, основных функций современных операционных систем, а также охарактеризовать тенденции их развития.
Операционная система в наибольшей степени определяет облик всей вычислительной системы в целом. Несмотря на это, пользователи, активно использующие вычислительную технику, зачастую испытывают затруднения при попытке дать определение операционной системе. Частично это связано с тем, что операционная система выполняет две по существу мало связанные функции: обеспечение пользователю-программисту удобств посредством предоставления для него расширенной машины и повышение эффективности использования компьютера путем рационального управления его ресурсами.
В работе была использована литература таких авторов, как Д.И. Иртегов (Введение в операционную систему), А. Джок (Операционные системы реального времени), Н.А. Олифер, В.Г. Олифер (Сетевые операционные системы), а также Э. Таненбаум (Современные операционные системы).
ГЛАВА I. НАЗНАЧЕНИЕ ОПЕРАЦИОННЫХ СИСТЕМ
1.1.Операционная система как расширенная машина
Использование большинства компьютеров на уровне машинного языка затруднительно, особенно это касается ввода-вывода. Например, для организации чтения блока данных с гибкого диска программист может использовать 16 различных команд, каждая из которых требует 13 параметров, таких как номер блока на диске, номер сектора на дорожке и т. п. Когда выполнение операции с диском завершается, контроллер возвращает 23 значения, отражающих наличие и типы ошибок, которые, очевидно, надо анализировать. Даже если не входить в курс реальных проблем программирования ввода-вывода, ясно, что среди программистов нашлось бы не много желающих непосредственно заниматься программированием этих операций. При работе с диском программисту-пользователю достаточно представлять его в виде некоторого набора файлов, каждый из которых имеет имя. Работа с файлом заключается в его открытии, выполнении чтения или записи, а затем в закрытии файла. Вопросы подобные таким, как следует ли при записи использовать усовершенствованную частотную модуляцию или в каком состоянии сейчас находится двигатель механизма перемещения считывающих головок, не должны волновать пользователя. Программа, которая скрывает от программиста все реалии аппаратуры и предоставляет возможность простого, удобного просмотра указанных файлов, чтения или записи - это, конечно, операционная система. Точно так же, как операционная система ограждает программистов от аппаратуры дискового накопителя и предоставляет ему простой файловый интерфейс, операционная система берет на себя все малоприятные дела, связанные с обработкой прерываний, управлением таймерами и оперативной памятью, а также другие низкоуровневые проблемы. В каждом случае та абстрактная, воображаемая машина, с которой, благодаря операционной системе, теперь может иметь дело пользователь, гораздо проще и удобнее в обращении, чем реальная аппаратура, лежащая в основе этой абстрактной машины.
С этой точки зрения функцией операционной системы является предоставление пользователю некоторой расширенной или виртуальной машины, которую легче программировать и с которой легче работать, чем непосредственно с аппаратурой, составляющей реальную машину.
1.2.Операционная система как система управления ресурсами
Идея о том, что операционная система прежде всего система, обеспечивающая удобный интерфейс пользователям, соответствует рассмотрению сверху вниз. Другой взгляд, снизу вверх, дает представление об операционной системе как о некотором механизме, управляющем всеми частями сложной системы. Современные вычислительные системы состоят из процессоров, памяти, таймеров, дисков, накопителей на магнитных лентах, сетевых коммуникационной аппаратуры, принтеров и других устройств. В соответствии со вторым подходом функцией операционной системы является распределение процессоров, памяти, устройств и данных между процессами, конкурирующими за эти ресурсы. Операционная система должна управлять всеми ресурсами вычислительной машины таким образом, чтобы обеспечить максимальную эффективность ее функционирования. Критерием эффективности может быть, например, пропускная способность или реактивность системы. Управление ресурсами включает решение двух общих, не зависящих от типа ресурса задач:
· планирование ресурса - то есть определение, кому, когда, а для делимых ресурсов и в каком количестве, необходимо выделить данный ресурс;
· отслеживание состояния ресурса - то есть поддержание оперативной информации о том, занят или не занят ресурс, а для делимых ресурсов, какое количество ресурса уже распределено, а какое свободно.
«Для решения этих общих задач управления ресурсами разные операционные системы используют различные алгоритмы, что в конечном счете и определяет их облик в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс. Так, например, алгоритм управления процессором в значительной степени определяет, является ли операционная система системой разделения времени, системой пакетной обработки или системой реального времени.»[1]
ГЛАВА II. ОСНОВНЫЕ ФУНКЦИИ ОПЕРАЦИОННЫХ СИСТЕМ
1. Стремясь обеспечить совместимость (compatible) новой операционной системы, разработчики операционных систем сохранили привычный интерфейс Windows и реализовали поддержку существующих файловых систем (таких, как FAT) и различных приложений (написанных для MS - Dos, OS/2 1. x, Windows 3. x и POSIX) . Разработчики также включили в состав операционной системы средства работы с различными сетевыми средствами.
2. Достигнута переносимость (portability) системы, которая может теперь работать как на CISC, так и на RISC - процессорах. К CISC относятся Intel - совместимые процессоры 80386 и выше ;RISC представлены системами с процессорами MIPS R4000, Digital Alpha AXP и Pentium серии P54 и выше.
3. Масштабируемость (scalability) означает, что операционная система не привязана к однопроцессорной архитектуре компьютеров, а способна полностью использовать возможности, предоставляемые симметричными мультипроцессорными системами. В настоящее время операционная система может функционировать на компьютерах с числом процессоров от 1 до 32. Кроме того, в случае усложнения стоящих перед пользователями задач и расширения предъявляемых к компьютерной среде требований, операционная система позволяет легко добавлять более мощные и производительные серверы и рабочие станции к корпоративной сети. Дополнительные преимущества даёт использование единой среды разработки и для серверов, и для рабочих станций.
4. Операционная система имеет однородную систему безопасности (security) удовлетворяющую спецификациям правительства США и соответствующую стандарту безопасности В2. В корпоративной среде критическим приложениям обеспечивается полностью изолированное окружение.
5. Распределённая обработка (distributed processing) означает, что операционная система имеет встроенные в систему сетевые возможности. операционная система также позволяет обеспечить связь с различными типами хост-компьютеров благодаря поддержке разнообразных транспортных протоколов и использованию средств “клиент-сервер” высокого уровня, включая именованные каналы, вызовы удалённых процедур (RPC - remote procedure call) и Windows - сокеты.
6. Надёжность и отказоустойчивость (reliability and robustness) обеспечивают архитектурными особенностями, которые защищают прикладные программы от повреждения друг другом и операционной системой. Операционная система использует отказоустойчивую структурированную обработку особых ситуаций на всех архитектурных уровнях, которая включает восстанавливаемую файловую систему NTFS и обеспечивает защиту с помощью встроенной системы безопасности и усовершенствованных методов управления памятью.
7. Возможности локализации (allocation) представляют средства для работы во многих странах мира на национальных языках, что достигается применением стандарта ISO Unicod (разработан международной организацией по стандартизации).
ГЛАВА III. КЛАССИФИКАЦИЯ СОВРЕМЕННЫХ ОПЕРАЦИОННЫХ СИСТЕМ
Операционные системы могут различаться особенностями реализации внутренних алгоритмов управления основными ресурсами компьютера (процессорами, памятью, устройствами), особенностями использованных методов проектирования, типами аппаратных платформ, областями использования и многими другими свойствами.
От эффективности алгоритмов управления локальными ресурсами компьютера во многом зависит эффективность всей сетевой операционной системы в целом. Поэтому, характеризуя сетевую операционную систему, часто приводят важнейшие особенности реализации функций ОС по управлению процессорами, памятью, внешними устройствами автономного компьютера. Так, например, в зависимости от особенностей использованного алгоритма управления процессором, операционные системы делят на многозадачные и однозадачные, многопользовательские и однопользовательские, на системы, поддерживающие многонитевую обработку и не поддерживающие ее, на многопроцессорные и однопроцессорные системы.
Поддержка многозадачности. По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:
· однозадачные (например, MS-DOS, MSX) и
· многозадачные (OC EC, OS/2, UNIX, Windows 95).
Однозадачные операционные системы в основном выполняют функцию предоставления пользователю виртуальной машины, делая более простым и удобным процесс взаимодействия пользователя с компьютером. Однозадачные операционные системы включают средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем.
Многозадачные операционные системы, кроме вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких как процессор, оперативная память, файлы и внешние устройства.
Поддержка многопользовательского режима. По числу одновременно работающих пользователей операционные системы делятся на:
· однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
· многопользовательские (UNIX, Windows NT).
Главным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Следует заметить, что не всякая многозадачная система является многопользовательской, и не всякая однопользовательская операционная система является однозадачной.
Вытесняющая и невытесняющая многозадачность. Важнейшим разделяемым ресурсом является процессорное время. Способ распределения процессорного времени между несколькими одновременно существующими в системе процессами (или нитями) во многом определяет специфику операционной системы. Среди множества существующих вариантов реализации многозадачности можно выделить две группы алгоритмов:
· невытесняющая многозадачность (NetWare, Windows 3.x);
· вытесняющая многозадачность (Windows NT, OS/2, UNIX).
Основным различием между вытесняющим и невытесняющим вариантами многозадачности является степень централизации механизма планирования процессов. В первом случае механизм планирования процессов целиком сосредоточен в операционной системе, а во втором - распределен между системой и прикладными программами. При невытесняющей многозадачности активный процесс выполняется до тех пор, пока он сам, по собственной инициативе, не отдаст управление операционной системе для того, чтобы та выбрала из очереди другой готовый к выполнению процесс. При вытесняющей многозадачности решение о переключении процессора с одного процесса на другой принимается операционной системой, а не самим активным процессом.
Поддержка многонитевости. «Важным свойством операционных систем является возможность распараллеливания вычислений в рамках одной задачи. Многонитевая операционная система разделяет процессорное время не между задачами, а между их отдельными ветвями (нитями)».[1]
Многопроцессорная обработка. Другим важным свойством операционной системы является отсутствие или наличие в ней средств поддержки многопроцессорной обработки - мультипроцессирование. Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами.
В наши дни становится общепринятым введение в операционную систему функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.
Многопроцессорные операционные системы могут классифицироваться по способу организации вычислительного процесса в системе с многопроцессорной архитектурой: асимметричные операционные системы и симметричные операционные системы. Асимметричная операционная система целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам. Симметричная операционная система полностью децентрализована и использует весь пул процессоров, разделяя их между системными и прикладными задачами.
Выше были рассмотрены характеристики операционной системы, связанные с управлением только одним типом ресурсов - процессором. Важное влияние на облик операционной системы в целом, на возможности ее использования в той или иной области оказывают особенности и других подсистем управления локальными ресурсами - подсистем управления памятью, файлами, устройствами ввода-вывода.
Специфика операционной системы проявляется и в том, каким образом она реализует сетевые функции: распознавание и перенаправление в сеть запросов к удаленным ресурсам, передача сообщений по сети, выполнение удаленных запросов. При реализации сетевых функций возникает комплекс задач, связанных с распределенным характером хранения и обработки данных в сети: «ведение справочной информации о всех доступных в сети ресурсах и серверах, адресация взаимодействующих процессов, обеспечение прозрачности доступа, тиражирование данных, согласование копий, поддержка безопасности данных.»[2]
ЗАКЛЮЧЕНИЕ
На данный момент мировая компьютерная индустрия развивается очень стремительно. Производительность систем возрастает, а следовательно возрастают возможности обработки больших объёмов данных.
Операционные системы класса MS-DOSа уже не справляются с таким потоком данных и не могут целиком использовать ресурсы современных компьютеров. Поэтому в последнее время происходит переход на более мощные и наиболее совершенные операционные системы класса UNIX, примером которых и является Windows NT, выпущенная корпорацией Microsoft.
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
1. Введение в операционную систему. Иртегов Д.И., Пресс – Спб, 2001 г. – 127 с.
2. Операционные системы реального времени. Джок А., Computerworld, №24, 2001 г. – 52 с.
3. Сетевые операционные системы. Олифер Н.А., Олифер В.Г., Пресс – Спб, 2001 г. – 130 с.
4. Современные операционные системы. Таненбаум Э., Пресс – Спб, 2002 г.- 156 с.
[1] Сетевые операционные системы, Олифер Н. А., Олифер В. Г. , Пресс - СПб, 2001 – с.80
[2] Сетевые операционные системы, Олифер Н. А., Олифер В. Г. , Пресс - СПб, 2001 – с.83
[1] Операционные системы реального времени, Джок А. - Computerworld, № 24, 2001 – с.10