Операционная система OS/2

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    639,87 Кб
  • Опубликовано:
    2015-03-06
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Операционная система OS/2

Содержание

Введение

. Операционная система OS/2

Предыстория

Эволюция 11OS/

-ч разрядная IBM OS/2

OS/2 Warp

OS/2 для PowerPC

OS/2 WSeB

Эпоха eComStation

eComStation 2.0

. Архитектура OS/2

Многозадачность

Управление памятью

Устройства и файловая система

Средства взаимодействия

Другие свойства OS/2

Библиография

Введение

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

Назначение, функции и характеристики операционных систем.

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

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

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

Во-вторых, операционная система предоставляет возможность запуска программ. Для этого производится ряд действий, скрытых от пользователя: следует загрузить в основную память команды и данные, инициализировать устройства ввода-вывода и файлы, а также подготовить другие ресурсы. Операционная система выполняет всю эту рутинную работу вместо пользователя.

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

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

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

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

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

Переносимость. Новшества в аппаратном обеспечении возникают быстро и часто непредсказуемо. Например, RISC (Reduced Instructions Set Computer - компьютеры с сокращенным набором команд) - процессоры существенно отличаются от традиционных CISC (Complex Instruction Set Computer - компьютеры со сложным набором команд). Если операционная система написана на переносимом языке - это позволяет быстрее переходить от одной архитектуры компьютеров к другой, то есть использовать всю операционную систему целиком на машине с другим процессором или конфигурацией при минимальных изменениях исходного текста. Хотя операционные системы часто делят на «переносимые» и «непереносимые», строго говоря, переносимость в той или иной степени свойственна всем им. Вопрос не в том, можно ли перенести программу, поскольку, как правило, в конечном счете, это можно сделать, а в том, насколько сложно это сделать. Поэтому большинство современных операционных систем пишутся на языках высокого уровня, обладающих высокой переносимостью.

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

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

Распределенные вычисления. В связи с тем, что в 80-е годы 20-го века персональные компьютеры стали более доступными, характер вычислении необратимо изменился. Там, где раньше одна большая вычислительная машина обслуживала все предприятие или организацию, теперь появились персональные компьютеры для рядовых служащих. Улучшенные возможности работы в сети позволили малым компьютерам связываться друг с другом, зачастую совместно используя аппаратные или вычислительные ресурсы в форме файл-серверов, серверов печати и серверов вычислений. Учитывая эти изменения, разработчики операционных систем встраивают функции поддержки сети непосредственно в систему, тем самым, обеспечивая приложениям возможность распределять работу между несколькими вычислительными системами.

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

Совместимость. Несмотря на то, что новые версии операционной системы призваны расширять существующие технологии, ее пользовательский интерфейс, а также API (Application Programming Interface - интерфейс программирования приложений) должны быть совместимы с предыдущими версиями.

- Производительность. Система должна отвечать, всем требованиям, но при этом быть максимально быстрой и обеспечивать минимальное время отклика на каждой аппаратной платформе[1] <#"786338.files/image001.jpg">

Изображение 1 - Рабочее пространство пользователя OS/2 1.0 <#"786338.files/image002.jpg">

-Изображение 2  Эволюция OS/2 <#"786338.files/image003.jpg">

Изображение 3 - OS/2 1.1 с графическим интерфейсом <#"786338.files/image004.jpg">

Изображение 5 - Workplace Shell OS/2 2.0. <#"786338.files/image006.jpg">

-Изображение 6  Интерфейс OS/2 Warp. <#"786338.files/image007.jpg">

-Изображение 7  eComStation 1.1 <#"786338.files/image008.gif">

-Изображение 8  Архитектура OS/2 Warp. <#"786338.files/image009.gif">

Изображение 9 - Адресное пространство процесса OS/2 <#"786338.files/image010.gif">

а). структура тома HPFS

б). элемент каталога HPFS

Изображение 10 - Файловая система HPFS <http://khpi-iip.mipk.kharkiv.edu/library/spo/book/pi4_03b.gif>

Организация файлов и каталогов в HPFS включает в себя две структуры, показанные на изображении 10.б: элемент каталога (DIRBLK) и дескриптор файла или каталога (Fnode). В суперблоке содержится указатель на дескриптор корневого каталога. Каталог состоит из элементов каталога, которые организованы в сбалансированное двоичное дерево, упорядоченное для поиска по имени файла/каталога. В элементе каталога содержится указатель на дескриптор файла/каталога. Основное содержание дескриптора - план размещения файла. Как отмечалось выше, файловая система стремится разместить весь файл в одном экстенте, но не гарантирует такого размещения. Файлы, характеризующиеся значительной изменчивостью, могут занимать большое число экстентов. Элемент плана размещения состоит из начального адреса экстента и его длины. Описания 8 экстентов могут быть размещены непосредственно в дескрипторе. Если же файл состоит из большего числа экстентов, план его размещения структурируется в B-дерево с корневым узлом в дескрипторе.

Для повышения производительности HPFS использует кеширование данных при записи на диск и отложенную запись

Новая версия этой файловой системы - HPFS386 оптимизирована для работы с новыми поколениями процессоров Intel/Pentium и большими дисковыми системами. Она отличается тем, что значительная часть драйвера файловой системы работает на уровне защиты 0. В ней значительно увеличены размеры кешей, сняты некоторые ограничения, повышена надежность (поддерживается технология RAID-1). HPFS386 интегрируется с IBM LAN Server и обеспечивает хранение списков контроля доступа в файловой системе.

Средства взаимодействия

/2 обладает полным набором средств взаимодействия процессов.

В системе имеется 9 типов сигналов (в том числе 3 - пользовательских) с возможностью устанавливать их собственную обработку или игнорировать сигнал (кроме сигнала KILL).

Общие области памяти выделяются как сегменты и могут быть именованными или неименованными.

Неименованные каналы создаются специальным системным вызовом (одним вызовом создается один канал - для чтения или для записи), дальнейшая работа с каналом происходит с использованием API файлов. Для именованных каналов наряду с файловым API имеются специальные операции, обеспечивающие обмен данными в одном вызове (открытие канала, запись, чтение, закрытие).

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

В системе различаются 3 типа семафоров: семафоры событий, служащие для синхронизации нитей и процессов, семафоры взаимного исключения, служащие для защиты ресурсов от одновременного доступа, и семафоры множественного ожидания, обеспечивающие ожидание на нескольких семафорах событий или семафорах взаимного исключения одновременно. Для каждого типа семафоров имеется свой набор системных вызовов, обеспечивающих создание/уничтожение семафоров и выполнение семафорных операций.

Все именованные средства взаимодействия вписываются в пространство имен файловой системы, и имена их выгладят как имена файлов, расположенных в специальных каталогах.


Хотя OS/2 позиционировалась на рынке как серверная ОС, ее ядро продолжает оставаться однопользовательским, то есть, на уровне ядра OS/2 пользователей не различает. Защита в ядре относится прежде всего к защите ресурсов процессов, которая обеспечивается надежной изоляцией адресных пространств процессов друг от друга. Контроль доступа обеспечивается промежуточным программным обеспечением (IBM LAN Server и др.), поставляемым "в одной коробке" с OS/2.разрабатывала интерфейс OS/2 в непосредственном сотрудничестве с фирмой Microsoft, поэтому он не только внешне подобен образцу Windows 95, но и полностью воплощает его объектно-ориентированные свойства. Workplace Shell (рабочий стол) и Warp Center (панель быстрого доступа, подобная линейке программ в Windows 9x) являются приложениями, запускаемыми по выбору./2 может также работать и в режиме командной строки. Набор команд OS/2 является расширением набора команд MS DOS. Наиболее интересной из этого расширения нам представляется команда CALL, которая позволяет запустить программу без ожидания ее завершения. Именно команда CALL создает возможность запускать несколько процессов в одном сеансе OS/2. OS/2 имеет богатейшие возможности для командных файлов, которые обеспечиваются языком REXX, являющимся неотъемлемой частью ОС. Команды и программы, выполняемые в интерпретаторе REXX, имеют возможность обмениваться сигналами и данными, используя перенаправление ввода-вывода или интерфейс очередей.

В первые два года своего существования OS/2 Warp, а затем и ее версия 4 - Merlin - конкурировала на рынке персональных ОС с Windows 95. Так, OS/2 Merlin стала первой ОС со встроенной поддержкой мультимедиа, голосового ввода и Java-платформой. Несмотря на то, что по объективным показателям OS/2, по крайней мере, не уступала своему конкуренту, она потерпела поражение, прежде всего - из-за отсутствия должной рекламы. В 1998 г. фирма IBM решила, что рынок персональных систем не входит в сферу ее стратегических интересов, и позиционировала OS/2 как серверную систему. В таком качестве OS/2 приобрела значительное число корпоративных пользователей, особенно в Европе. Версия 5 OS/2 - Aurora, расширенная прежде всего поддержкой SMP-архитектуры и файловой системой JFS, заимствованной из ОС AIX , появилась в 1999 г. Долгое время она существовала только в серверном варианте, и только в 2001 г. появилась клиентская редакция этой версии. Хотя OS/2 продолжает эксплуатироваться и развиваться, в настоящее время фирма IBM исключила из своих стратегических интересов любые ОС для платформы Intel/Pentium (а возможно - и саму эту платформу) и не занимается продвижением OS/2 на рынке. Поскольку стратегия разработки приложений IBM в последнее время диктует ориентацию на платформенную независимость, IBM предлагает использовать OS/2 прежде всего как платформу для разработчиков Java-приложений с последующим переносом результатов на другие платформы. Предложение вполне разумное, так как OS/2 является, во-первых, чрезвычайно устойчивой, а во-вторых, виртуальная машина Java от IBM для OS/2 является одной из самых эффективных (если не самой эффективной) из всех существующих.

Вместе с тем, в движении Открытых Кодов существует стойкое и активное ядро сторонников OS/2, не желающих отказываться от нее даже как от настольной системы. Среди акций этого движения можно назвать давно и успешно развивающийся проект по обеспечению выполнения среде OS/2 приложений Win32, а также недавно начавшееся движение за перевод OS/2 в открытые коды[3] <http://khpi-iip.mipk.kharkiv.edu/library/spo/book/ii_g04.html>.

Библиография

1.      Грошев С. Основные понятия ОС [электронный ресурс] -<http://technomag.edu.ru/doc/48639.html>

.        История eComStation, OS/2 Warp [электронный ресурс] -<http://ru.ecomstation.ru/projects/history/?action=desc>

.        А.С.Деревянко, М.Н.Солощук 2002, Операционные системы, Часть II. Обзор операционных систем, глава 4 Операционная система OS/2 [электронный ресурс] - <http://khpi-iip.mipk.kharkiv.edu/library/spo/book/ii_g04.html>


Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!