Автор работы: Пользователь скрыл имя, 18 Сентября 2015 в 11:36, лекция
1. Операционная система. Операционные оболочки и среды
1.1. Определение и основные функции ОС
1.2. Операционные оболочки и среды
2. История развития и поколения ОС
3. Классификация ОС
4. Функциональные компоненты ОС
5. Требования к современным ОС
1.1. Определение и основные функции ОС
1.2. Операционные оболочки и среды
1.1.
Определение и основные
Операционная система (ОС) – система программ, реализующая интерфейс1 между аппаратурой ЭВМ и пользователями. Согласно своему назначению ОС выполняет два вида взаимосвязанных функций и рассматривается в двух аспектах:
Схематично роль ОС в организации вычислительного процесса представлена на рис. 1.1.
Рис. 1.1. ОС в организации вычислительного процесса
ОС как менеджер ресурсов должна обеспечивать:
При этом в современных вычислительных системах реализуются следующие возможности:
В итоге можно сказать, что функцией ОС как менеджера ресурсов является распределение процессоров, памяти, устройств и данных между процессами, конкурирующими за эти ресурсы согласно выбранным критериям эффективности. Критерии рассматриваются далее (это, например, пропускная способность или реактивность системы).
Для решения общих задач управления ресурсами разные ОС используют различные алгоритмы, что в конечном счете и определяет их облик в целом, включая характеристики производительности, область применения и пользовательский интерфейс.
ОС как виртуальная машина должна предоставлять некий интерфейс, избавляющий пользователя от непосредственной работы с аппаратурой и организации вычислительного процесса (в частности, распределения ресурсов и их защиты). Здесь можно говорить о двух уровнях (или видах) интерфейсов:
1.2. Операционные оболочки и среды
Операционная оболочка (operation shell) – комплекс программ, ориентированных на определенную операционную систему и предназначенный для облегчения диалога между пользователем и компьютером при выполнении определенных видов деятельности на компьютере.
Операционные оболочки дополняют и расширяют пользовательский интерфейс ОС за счет наглядного представления объектов (файлов, каталогов, дисков), использования систем меню и горячих клавиш.
Операционные оболочки предоставляют следующие услуги:
В соответствии со способом представления объектов оболочки можно разделить на два класса:
Это разделение не является жестким, поскольку в большей или меньшей степени средства одного класса присутствуют и в другом.
Виды операционных оболочек и формы их использования определяются основным назначением операционной системы, кругом решаемых задач и уровнем профессионализма пользователя.
● Для современных ОС Windows (настольных ОС общего назначения) графические оболочки являются «родными», т.е. неотделимы от ОС, тогда как оболочки другого класса устанавливаются как отдельные приложения. Первые ориентированы на предоставление возможности работы с ОС пользователю с минимальным уровнем подготовки, прежде всего непрофессионалу, и не предполагают решения какого-либо специфического класса задач с помощью компьютера. Вторые используются как правило профессионалами, поскольку в подавляющем большинстве реальных применений повышают надежность и эффективность (скорость и качество) работы с данными.
Классическим и наиболее известным представителем неграфических оболочек является Norton Commander – оболочка для ОС MS DOS, принципы построения и функционирования которой легли в основу построения последующих оболочек. В настоящее время для ОС Windows в основном используются оболочки Far Manager и Total Commander, которые постоянно развиваются.
● ОС Unix как профессиональная серверная, напротив, исходно предполагает только интерфейс командной строки; использование оболочек диктуется желанием повысить удобство работы. ОС Linux, базируясь на принципах Unix, но, претендуя на ту же роль, что и Windows, занимает некое промежуточное положение и исходно предполагает использование оболочек, устанавливаемых как компоненты системы, хотя они и представляют собой отдельные приложения. Тем не менее подход к работе с операционными оболочками в этих системах один.
Здесь из популярных текстовых оболочек можно назвать, например, Midnight Commander. Работа с графическими оболочками реализуется несколько иначе, чем в Windows. Подсистема графического интерфейса имеет два компонента. Первый представлен модулем X-server, входящим в ядро ОС. Второй компонент являет собой ряд приложений («менеджеров окон») под общим наименованием X-client; каждое из которых может взаимодействовать с X-server’ом по протоколу TCP/IP. Совокупность «X-server + X-client» образует подсистему графического интерфейса, реализующую графическую оболочку. Вариант последней зависит от вида X-client’а; популярны, например, менеджеры KDE, Gnome, Afterstep и др.
● Наиболее совершенной в плане предоставления пользователю удобств посредством операционных оболочек является операционная система MacOS, располагающая одновременно всеми видами оболочек. Так, система имеет встроенную поддержку графического интерфейса. Для удобства работы профессионалов в версии X имеется юниксоподобная консоль. Также имеется встроенная оболочка Finder, объединяющая в себе основные черты Norton-подобных оболочек и графический интерфейс и системы меню Windows.
Операционные среды. Под операционной средой (operating environment) понимается комплекс средств, обеспечивающих разработку и выполнение прикладных программ и представляющих собой набор функций и сервисов операционной системы и правил обращения к ним. Это понятие отражает аспект рассмотрения операционной системы как виртуальной машины. В общем случае операционная среда включает операционную систему, программное обеспечение, интерфейсы прикладных программ, сетевые службы, базы данных, языки программирования и другие средства выполнения работы на компьютере – в зависимости от решаемых задач. Очевидно, что операционные оболочки являются компонентами операционной среды.
В такой трактовке примерами операционных сред могут служить следующие:
ОС Windows +Delphi + вспомогательные средства – операционная среда разработчика прикладных приложений;
ОС Windows + Adobe Photoshop + Adobe Illustrator + Macromedia Dreamweaver + Internet Explorer + вспомогательные средства – операционная среда WEB-разработчика;
ОС FreeBSD + WEB-сервер Apache + сервер СУБД MySQL + интерпретатор PHP + программы защиты + вспомогательные средства – операционная среда для создания приложений, работающих на стороне сервера.
Однако использование термина «операционная среда» объясняется прежде всего тем, что одна операционная система может поддерживать несколько операционных сред путем эмуляции функций других операционных систем. Такая поддержка на разных этапах развития ОС в зависимости от целей и класса ОС может быть более или менее целесообразной.
Так, для ОС Unix существует ряд приложений, например, WINE, которые позволяют в некоторой степени эмулировать интерфейс прикладного программирования WIN32API и, таким образом, позволяют запускать некоторые приложения, разработанные для ОС Windows. Однако практическая значимость такой деятельности невелика.
На профессиональных компьютерах и под ОС Unix, и под ОС Windows достаточно успешно эмулируются мобильные ОС, что дает возможность разработки и эксплуатации соответствующих приложений в отсутствие самой мобильной платформы. С усложнением мобильных платформ такая разработка будет все более и более усложняться, и целесообразность ее может снизиться.
Для ОС Windows в период с 1995 года и практически до настоящего времени имела место ситуация, когда 32-разрядные ОС путем эмуляции предшествующих, 16-разрядных, позволяли создать соответствующие операционные среды и, таким образом, работать с приложениями, написанными для старших ОС.
Такая эмуляция более старого программного обеспечения (legacy 2) обеспечивает совместимость более ранних версий ОС с более поздними. Например, Windows 95/98 позволяли запускать программы для MS DOS.
Для Windows 2000/XP эта возможность тоже есть, но играет весьма незначительную роль, а с выходом обновления и дополнения Service Pack 2 к Windows XP при установке последнего она вообще убирается. Это объясняется появлением летом 2005 г. 64-разрядной ОС WINXP64E, в связи с чем все ныне функционирующее программное обеспечение переводится в статус legacy, а предшествующее legacy должно прекратить свое существование.
· Отдельные этапы развития операционных систем определяются как развитием элементной базы компьютеров, так и появлением новых идей в использовании последних и эволюцией информационных технологий в целом. Поэтому выделять эти этапы и говорить о поколениях ОС можно в большой степени условно, вплоть до того, что в настоящее время такая классификация скорее является данью традиции (аналогичная ситуация имеет место в классификации компьютеров по поколениям, утратившей актуальность еще раньше).
Первоначально поколения ОС определялись в соответствии с элементной базой компьютеров, на которых ОС ставилась, но очень скоро к этому классификационному признаку добавились характеристики организации вычислительного процесса, программного обеспечения, области использования, и классификация практически сразу потеряла четкость и приобрела черты исторического экскурса. Ниже эта история кратко приводится так, как она сложилась.
· Первый период (1945 -1955)
Реально отсчет эры ЭВМ начинается с 40-х годов, когда были созданы первые ламповые вычислительные устройства (1946-48гг.). В то время одна и та же группа людей участвовала и в проектировании, и в эксплуатации, и в программировании вычислительной машины. Это была скорее научно-исследовательская работа в области вычислительной техники, а не использование компьютеров в качестве инструмента решения каких-либо практических задач из других прикладных областей. Программирование осуществлялось исключительно на машинном языке. Об операционных системах не было и речи, все задачи организации вычислительного процесса решались вручную каждым программистом с пульта управления. Не было никакого другого системного программного обеспечения, кроме библиотек математических и служебных подпрограмм.
· Второй период (1955 - 1965)
С середины 50-х годов начался новый период в развитии вычислительной техники, связанный с появлением новой технической базы - полупроводниковых элементов. Компьютеры второго поколения стали более надежными, теперь они смогли непрерывно работать настолько долго, чтобы на них можно было возложить выполнение действительно практически важных задач. Именно в этот период произошло разделение персонала на программистов и операторов, эксплуатационников и разработчиков вычислительных машин.
В эти годы появились первые алгоритмические языки, а следовательно, и первые системные программы - компиляторы. Стоимость процессорного времени возросла, что потребовало уменьшения непроизводительных затрат времени между запусками программ. Появились первые системы пакетной обработки, которые просто автоматизировали запуск одной программ за другой и тем самым увеличивали коэффициент загрузки процессора. Системы пакетной обработки явились прообразом современных операционных систем, они стали первыми системными программами, предназначенными для управления вычислительным процессом. В ходе реализации систем пакетной обработки был разработан формализованный язык управления заданиями, с помощью которого программист сообщал системе и оператору, какую работу он хочет выполнить на вычислительной машине. Совокупность нескольких заданий, как правило в виде колоды перфокарт, получила название пакета заданий.