ОС. Лекция 1.. Точки зрения на операционные системы (ОС) Операционная система как виртуальная машина
Скачать 39.07 Kb.
|
Большинство пользователей имеет свой опыт эксплуатации операционных систем, но, тем не менее, затруднятся дать точное определение. Давайте кратко рассмотрим основные точки зрения. Точки зрения на операционные системы (ОС): Операционная система как виртуальная машина. Архитектура большинства компьютеров на уровне машинных команд очень неудобна для ее использования прикладными программами. Например, работа с диском предполагает знакомство с внутренним устройством его электронного компонента - контроллера для ввода команд вращения диска, поиска и форматирования дорожек, чтения и записи секторов и т.д. Ясно, что средний программист не в состоянии учитывать все особенности работы оборудования (в современной терминологии заниматься разработкой драйверов устройств), а должен иметь простую высокоуровневую абстракцию, скажем, представляя информационное пространство диска как набор файлов Файл можно открывать для чтения или записи, использовать для получения или сброса информации, а потом закрывать. Это концептуально проще, чем заботиться о деталях перемещения головок дисков или организации работы мотора. Аналогичным образом, с помощью простых и ясных абстракций, скрываются от программиста все ненужные ему подробности организации прерываний, работы таймера, управления памятью и т.д. Более того, на современных вычислительных комплексах может быть создана иллюзия неограниченного размера операционной памяти и числа процессоров. Всем этим занимается операционная система. Таким образом, операционная система представляется пользователю виртуальной машиной, с которой проще иметь дело, чем непосредственно с оборудованием компьютера. Операционная система как менеджер ресурсов. Операционная система предназначена для управления всеми частями весьма сложной архитектуры компьютера. Представим для примера, что случится, если несколько программ, работающих на одном компьютере, будут пытаться одновременно осуществлять вывод на принтер. Мы получили бы неупорядоченную смесь строчек и страниц, выведенных различными программами. Операционная система предотвращает хаос такого рода за счет буферизации информации, предназначенной для печати, на диске и организации очереди на печать. Для многопользовательских компьютеров, необходимость управления ресурсами и их защиты еще более очевидна. Следовательно, операционная система как менеджер ресурсов, осуществляет упорядоченное и контролируемое распределение процессоров, памяти и других ресурсов между различными программами, их использующими. Операционная система как защитник пользователей и программ. Если вычислительная система допускает совместную работу нескольких пользователей, то возникает проблема организации их безопасной деятельности. Необходимо обеспечить сохранность информации на диске, чтобы никто не мог удалить или повредить чужие файлы. Нельзя разрешить программам одних пользователей произвольно вмешиваться в работу программ других пользователей. Нужно пресекать попытки несанкционированного использования вычислительной системы. Всю эту деятельность осуществляет операционная система как организатор безопасной работы пользователей и их программ. С такой точки зрения операционная система выглядит системой безопасности в государстве, на которую возложены полицейские и контрразведывательные функции. Операционная система как постоянно функционирующее ядро. Наконец, можно дать и такое определение: операционная система это программа, постоянно работающая на компьютере и взаимодействующая со всеми прикладными программами. Казалось бы, это абсолютно правильное определение, но, как мы увидим дальше, во многих современных операционных системах постоянно работает на компьютере лишь часть операционной системы, которую принято называть ее ядром. Как видим, существует много точек зрения на то, что такое операционная система. Не существует ее адекватного строгого определения. Нам проще сказать, не что есть операционная система, а для чего она нужна, и что она делает. Для выяснения этого вопроса кратко рассмотрим историю развития вычислительных систем. Первый период (1945-1955) Прогресс в создании цифровых вычислительных машин произошел после окончания второй мировой войны. В середине сороковых годов были созданы первые ламповые вычислительные устройства. В тоже время происходило проектирование и программирование вычислительной машины. Это была научно-исследовательская работа в области решения различного рода практических задач из других прикладных областей. Программирование в то время осуществлялось исключительно на машинном языке. В силу отсутствия на то время операционных систем, все задачи решались вручную программистом со специального пульта управления. Не существовало иного системного программного обеспечения, кроме библиотек математических и служебных программ. Второй период (1955-1965) С середины 50-х годов начался новый период в развитии вычислительной техники, связанный с появлением новой технической базы - полупроводниковых элементов. Компьютеры второго поколения стали более надежными. Они смогли непрерывно работать достаточно долго, чтобы на них можно было возложить выполнение очень важных задач. Именно в этот период произошло разделение персонала на программистов и операторов, эксплуатационщиков и разработчиков вычислительных машин. В эти годы появились первые алгоритмические языки и первые системные программы - компиляторы. Стоимость процессорного времени возросла, что потребовало уменьшения непроизводительных затрат времени между запусками программ. Появились первые системы пакетной обработки, которые просто автоматизировали запуск одной программ за другой и тем самым увеличивали коэффициент загрузки процессора. Системы пакетной обработки явились прообразом современных операционных систем. В ходе реализации систем пакетной обработки был разработан формализованный язык управления заданиями, с помощью которого программист сообщал системе и оператору, какую работу он хочет выполнить на вычислительной машине. Совокупность нескольких заданий, как правило в виде колоды перфокарт, получила название пакета заданий. Третий период (1965 - 1980) Третий важный период развития вычислительных машин относится к 1965-1980 годам. В это время в технической базе произошел переход от отдельных полупроводниковых элементов типа транзисторов к интегральным микросхемам, что дало гораздо большие возможности новому, третьему поколению компьютеров. Для этого периода характерно также создание семейств программно-совместимых машин. Первым семейством программно-совместимых машин, построенных на интегральных микросхемах, явилась серия машин IBM/360. Построенное в начале 60-х годов это семейство значительно превосходило машины второго поколения по критерию цена/производительность. Вскоре идея программно-совместимых машин стала общепризнанной. Программное обеспечение требовало совместимости операционных систем. Такие операционные системы должны были работать и на больших, и на малых вычислительных системах, с большим и с малым количеством разнообразной периферии, в коммерческой области и в области научных исследований. Операционные системы, построенные с намерением удовлетворить всем этим противоречивым требованиям, оказались чрезвычайно сложными в своей структуре. Они состояли из многих миллионов ассемблерных строк, написанных тысячами программистов, и содержали тысячи ошибок, вызывающих нескончаемый поток исправлений. В каждой новой версии операционной системы исправлялись одни ошибки и вносились другие. Несмотря на необозримые размеры и множество проблем, OS/360 и другие ей подобные операционные системы машин третьего поколения действительно удовлетворяли большинству требований потребителей. Важнейшим достижением операционных систем данного поколения явилась реализация мультипрограммирования. Мультипрограммирование — это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются несколько программ. Пока одна программа выполняет операцию ввода-вывода, процессор не простаивает, как это происходило при последовательном выполнении программ (однопрограммный режим), а выполняет другую программу (многопрограммный режим). При этом каждая программа загружается в свой участок оперативной памяти, называемый разделом. Появилось еще одно нововведение - спулинг (spooling). Спулинг в то время определялся как способ организации вычислительного процесса, в соответствии с которым задания считывались с перфокарт на диск в том темпе, в котором они появлялись в помещении вычислительного центра, а затем, когда очередное задание завершалось, новое задание с диска загружалось в освободившийся раздел. Наряду с мультипрограммной реализацией систем пакетной обработки появился новый тип операционных систем - системы разделения времени. Четвертый период (1980 - настоящее время) Четвертый период в эволюции операционных систем связан с появлением больших интегральных схем (БИС). В эти годы произошло резкое возрастание степени интеграции и удешевление микросхем. Компьютер стал доступен каждому человеку, и наступила эра персональных компьютеров. С точки зрения архитектуры персональные компьютеры ничем не отличались от класса миникомпьютеров типа PDP-11, но цена у них существенно отличалась. Если миникомпьютер дал возможность иметь собственную вычислительную машину отделу предприятия или университету, то персональный компьютер сделал это возможным для каждого человека. Компьютеры стали широко использоваться обычными людьми, что потребовало разработки "дружественного" программного обеспечения. На рынке операционных систем доминировали две системы: MS-DOS и UNIX. Однопрограммная однопользовательская операционная система MS-DOS широко использовалась для компьютеров, построенных на базе микропроцессоров Intel 8088, а затем 80286, 80386 и 80486. Мультипрограммная многопользовательская операционная система UNIX доминировала в среде "не-интеловских" компьютеров, особенно построенных на базе высокопроизводительных RISC-процессоров. В середине 80-х стали бурно развиваться сети персональных компьютеров, работающие под управлением сетевых или распределенных операционных систем. В сетевых операционных системах пользователи должны быть осведомлены о наличии других компьютеров и должны делать логический вход в другой компьютер, чтобы воспользоваться его ресурсами, преимущественно файлами. Каждая машина в сети выполняет свою собственную локальную операционную систему, отличающуюся от ОС автономного компьютера наличием дополнительных средств, позволяющих компьютеру работать в сети. Сетевая ОС не имеет фундаментальных отличий от ОС однопроцессорного компьютера. Она обязательно содержит программную поддержку для сетевых интерфейсных устройств (драйвер сетевого адаптера), а также средства для удаленного входа в другие компьютеры сети и средства доступа к удаленным файлам, однако эти дополнения существенно не меняют структуру самой операционной системы. Распространенные операционные системы Unix История операционной системы UNIX начинается с 1969 года, когда в рамках научно-исследовательского проекта фирмы Bell Labs концерна AT&T была разработана небольшая операционная система разделения времени общего назначения, оказавшаяся достаточно эффективной. В 1976 году Bell Labs выпустила уже шестую версию этой системы (Sixth Edition), которая была широко известна как V6 и бесплатно распространялась в университетах. Через 3 года была выпущена седьмая версия (Version Seven). Она стала первой версией для широкого распространения (в основном в университетах и научно-исследовательских лабораториях) и послужила основой для большинства последующих версий UNIX. Университетам она предлагалась по цене $100, а всем остальным - за $21000. После выхода V7 в AT&T была создана "Группа поддержки UNIX" (UNIX Support Group - USG), впоследствии преобразованная в UNIX System Laboratories (USL). Задачей группы была "раскрутка" UNIX как коммерческого продукта. Разработку системы продолжали и Bell Labs, и USG, но в разных направлениях. Версии USL - System III и System V получили широкое распространение и оказали большое влияние на развитие современных систем. В 1992 году концерн AT&T продал все структуры, занимающиеся системой UNIX, компании Novell, которая на базе System V разработала систему под названием UnixWare, не получившую большой популярности (В настоящее время система UnixWare продана фирмой Novell фирме Santa Crouze Operation и называется SCO UnixWare). Поскольку большинство версий UNIX в той или иной степени построены на основе программ AT&T, Novell получает и лицензионные платежи от продажи UNIX другими поставщиками (Компания Sun Microsystems вместо этого произвела большой разовый платёж). Операционная система Berkley UNIX была создана в 1977 году, когда Исследовальтельская группа вычислительных систем (Computer Systems Research Group - CSRG) Калифорнийского университета в Беркли приобрела лицензию на исходный код V6 у AT&T. Версии, выпускаемые этой группой, сокращённо назывались BSD (от Berkley Software Distribution). Их выпуск начался в 1977 году с версии 1BSD для машины PDP-11 и достиг кульминации в 1993 году, когда вышла версия 4.4BSD. Поскольку BSD построена на базе UNIX варианта AT&T, то для её использования нужна была лицензия AT&T. Для государственных лабораторий и коммерческих структур исходные лицензии AT&T всегда стоили дорого. Для университетов они сначала были дешевыми, но по мере приобретения системой UNIX коммерческого признания цена быстро росла. В конце концов специалисты Berkley приняли решение убрать код AT&T из BSD. Работа предстояла долгая, утомительная и кропотливая. Незадолго до её завершения университет лишился финансирования в области исследований операционных систем, и Исследовательскую группу вычислительных систем (CSRG) расформировали. Перед расформированием Исследовательская группа выпустила свой второй сборник текстов программ без кода AT&T под названием Net/2. Некоторые компании, и прежде всего - BSDI (Berkley Software Design, Inc.), взяли эту версию за основу, дополнили её и стали продавать как дешевую и в то же время надёжную реализацию UNIX. Тем временем AT&T и Berkley обменивались судебными исками: AT&T за нарушение авторских прав, а Беркли - за несоблюдение условий контракта (в частности, за отказ от предоставления оговорённого кредита). Одновременно руководство AT&T подало в суд на BSDI за использование Net/2 в качестве основы для своего продукта. В феврале 1994 года компания Novell (которая к тому времени приобрела UNIX у AT&T) и Калифорнийский университет согласились отозвать свои иски друг к другу. Дело с участием BSDI тоже удалось быстро уладить. Подробности не стали достоянием публики, но университет прекратил продавать версию Net/2 и анонсировал более зрелый программный пакет - 4.4BSD-Lite. Компания Novell и Калифорнийский университет дали благословение на свободную перепродажу этого пакета. Компания BSDI объявила о своих планах реорганизовать свой продукт в 4.4BSD-Lite к середине 1995 года (Издательство O'Reilly & Associates продаёт комплект руководств по 4.4BSD и исходный(незагружаемый) код 4.4BSD-Lite на CD-ROM по довольно умеренной цене). В 80-е годы некоторые поставщики рабочих станций взялись сами разрабатывать собственные версии UNIX. Как правило, фирма брала одну из версий системы AT&T или BSD и продолжала разрабатывать её самостоятельно. Некоторые фирмы не хотели придерживаться какого-либо одного варианта и разрабатывали гибриды, в которых присутствовали особенности обеих версий. Когда хаос приобрёл огромные масштабы, сторонники различных стандартов начали кампанию по борьбе с распространением вариантов UNIX. Внезапно обнаружилось изобилие стандартов UNIX, причём каждый из них поддерживала хрупкая коалиция нескольких поставщиков. Вместо того, чтобы систематизировать существующие версии UNIX, эти стандарты способствовали появлению на рынке всё новых и новых ОС. Корпорация DEC - единственный крупный поставщик, который прекратил разработку своей версии UNIX в пользу стандарта (В настоящее время основным стандартом является разработанная консорциумом X/Open Единая спецификация UNIX, которая получила название Spec 1170 и содержала первоначально приблизительно 1170 интерфейсов прикладных программ (API). Spec 1170 поддерживают все основные производители операционной системы UNIX). Linux Операционная система Linux создана в 1991 г. и официально выпущена в 1994 г. Линусом Торвальдсом. Linux — единственная популярная ОС, созданная любителем (Торвальдс написал ее в качестве дипломного проекта). Данная операционная система поддерживается, развивается и дополняется программистами из разных стран мира. Linux - единственная свободно распространяемая (абсолютно бесплатная) операционная система. Свое происхождение многозадачная многопользовательская 32-разрядная система Linux ведет от класса универсальных ОС UNIX. Важным событием для Linux, стало появление удобных оболочек. Сочетание привычного Рабочего Стола и иконок Windows и мощи ядра Linux сразу же привлекло внимание разработчиков и пользователей. В 1999 году один из крупнейших поставщиков готовых компьютеров выбрал именно Linux для установки на собственные системы. В том же году известная корпорация Corel выпустила на рынок первую коммерческую версию Linux — составленный дистрибутивный пакет с оригинальной системой установки, благодаря которому процесс приобщения компьютера к Linux упростился до крайности. В настоящее время Linux устанавливается уже не только на серверы, но на готовые персональные компьютеры и д на ноутбуки. В 2000 году сторонники ОС, выпустили версию Linux, предназначенную для установки поверх Windows. OS/2 Операционная система OS/2 начиналась как совместная разработка IBM и Microsoft (1984 г.). Впоследствии проект распался, и Microsoft переделала свою версию OS/2 в Windows NT, а сама OS/2 продолжала разрабатываться в фирме IBM. Изначально OS/2 была задумана как замена MS-DOS. Концепции, согласно которым разрабатывалась новая ОС были многообещающими: OS/2 должна была поддерживать вытесняющую многозадачность, виртуальную память, графический пользовательский интерфейс и выполнять DOS-приложения. Однако большинство из этих замыслов не удалось притворить в жизнь. В первой версии OS/2 1.0, выпущенной в 1987 году, содержалось большинство свойств, необходимых для многозадачной ОС. Однако у нее не было графического представления, а также отсутствовали драйверы для многих популярных принтеров и других устройств. Кроме этого, она была достаточно требовательна к ресурсам компьютера; выполнение и взаимодействие DOS-приложений производились очень медленно, а подчас было невозможными; в каждый момент времени пользователь мог работать только с одним приложением, остальные же процессы выполнялись в фоновым режиме. С каждой новой версией OS/2 становилась всё лучше и лучше. Уже в OS/2 v2.00 (1992г.) основные недостатки первой версии были устранены, она была первой доступной и работающей 32-х битной операционной системой для персональных компьютеров, что несомненно привлекло к ней внимание на рынке ОС. Затем последовал выпуск достаточно удачных сетевых версий OS/2 (например, Warp 3, Warp Connect, Warp 4). С этого момента OS/2-подобные операционные системы стали разрабатываться больше, как сетевые. Windows Первая версия Windows вышла в 1985 году, оставшись совершенно незамеченной. Версия Windows 3.0, вышедшая в 1992 году сумела набрать большую популярность. Через два года после этого появились версии 3.1 и 3.11 (последняя включала такой значительный элемент, как полную поддержку мультимедиа и работу в локальной сети — потому и носила уточняющее название Windows For Workgroups). Устанавливалась Windows поверх уже имеющейся на компьютере ОС — DOS — и лишь расширяла ее возможности. Фактически, она представляла из себя лишь графическую оболочку, настройку над установленным на компьютере комплектом MS-DOS. Появилась многозадачность — хотя число одновременно запускаемых приложений было ограничено двумя-тремя, запустить больше не позволяло малое количество оперативной памяти. Исчез барьер 640 кбайт, и компьютер смог использовать всю установленную на нем оперативную память. Windows отличалась своей редкостной неустойчивостью, частыми «зависаниями» и большим количеством ошибок. Это было связано с тем, что программам в Windows приходилось жить в общем пространстве, где происходило деление оперативной памяти и мощности процессора. 32-разрядная Windows NT, первая версия, которая появилась на рынке в 1993-м, а последняя — в 1998 году, с самого начала создавалась как сверхстабильная, надежная система, рассчитанная, прежде всего на работу. В конце 1997г. Microsoft распространила копии предварительной рабочей версии Windows 98 среди сотен тысяч бета-тестеров. В 1999 г. была выпущена Win2000. Новая ОС должна была стать стандартом не только для «кор-поративного» рынка, но и обжиться на домашних ПК. Однако высокая требовательность к ресурсам компьютера оттолкнула от новой ОС часть домашних пользователей. Именно эти недостатки, а также то, что поддержка «игрового режима» в Windows 2000 даже после доводок и доработок была далека от идеала, заставили Microsoft отказаться от идеи сделать Windows 2000 «единой, универсальной операционной системой». Win XP появилась летом 2001 г. Это была линейка ОС «корпоративные» ОС Windows XP Server и Windows XP Professional и «домашняя» Windows XP Home. 30 января 2007 года появилась новая ОС WINDOWS VISTA. С самого релиза операционную систему Vista постоянно критиковали. Windows Vista нацелена стать технологичным выпуском, обеспечивать твердую основу, для включения технологий, многие из которых будут связаны с системными функциями, не сразу видимые пользователю. Windows 7 – это новая операционная система от компании Microsoft, пришедшая на смену Windows ХР и Windows Vista и выпущенная 22 октября 2009 года. Официально разработка Windows 7 началась сразу же после выпуска Windows Vista в конце 2006 года, но некоторые идеи были заложены еще в проекте Longhorn, работа над которым началась в 2001 году, после выхода операционной системы Windows ХР. Изначально в Longhorn планировалось реализовать целый комплекс фундаментальных новшеств, но за три года работы над этим проектом разработчикам так и не удалось создать полноценную рабочую систему. Сроки выхода Longhorn постоянно отодвигались, и для спасения проекта пришлось принимать радикальные меры. В середине 2004 года руководство Microsoft решило начать разработку операционной системы Longhorn заново, исключив из нее некоторые важные функции. Результатом этой работы стал выход в начале 2007 года операционной системы Windows Vista. Эта система получила неоднозначную оценку специалистов и пользователей. За два года после выхода Windows Vista на нее перешла лишь небольшая часть пользователей, а наиболее популярной оставалась проверенная временем Windows ХР. MacOS История эволюции персональных компьютеров Apple Macintosh началась в 1976 году, когда Стивом Джобсом и Стивом Возняком был собран первый экземпляр Apple, оснащенный 48 килобайтами оперативной памяти и процессором MOS 6502. Ранние модели Apple использовали простые консольные операционные системы, такие как SOS (Sophisticated Operating System) и DOS-3. В апреле 1984 года, выпустив на рынок компьютер Apple, компания смогла разработать и внедрить в серийное производство свою первую операционную систему с графическим оконным интерфейсом, которая получила название MacOS 1.0. Данная платформа, впервые представленная в январе 1985 года, стала настоящей сенсацией, поскольку до этого момента еще ни одной компании не удавалось создать настолько компактную, надежную и удобную в обращении систему. Рабочее пространство MacOS 1.0 включало панель задач, содержавшую набор из четырех выпадающих системных меню, корзину, в которую помещались удаляемые с диска объекты, диспетчер файлов, названный разработчиками "The Macintosh Finder", позволял пользователю производить различные операции с директориями и файловыми объектами. На рабочем столе размещались ярлыки системного диска и панели управления, включавшей диалоговую справочную систему и элементы настройки операционной среды, также оператор мог самостоятельно размещать здесь иконки папок и запускаемых программ. Управление MacOS 1.0 осуществлялось при помощи мыши. 26 ноября 1986 года Apple анонсировала выход графической оконной оболочки для компьютеров серии Apple II, которая была разработана на основе MacOS версии 1.0 и называлась Apple II Desktop. Данная оконная среда не содержала каких-либо серьезных отличий от первой версии MacOS, за исключением того, что Macintosh Finder был заменен разработчиками на более простой файловый менеджер под названием "Selector", позволявших производить элементарные операции с хранящимися на дисках данными и запускать на исполнение различные программы. Процедуры открытия и закрытия окон сопровождались теперь эффектами анимации, что делало интерфейс системы более приятным в использовании. Программный комплекс Apple II Desktop не являлся самостоятельной операционной системой, он был лишь удобной графической надстройкой, позволявшей пользователям работать с содержимым дисков их персонального компьютера более комфортно. Позже, с появлением ЭВМ серии Apple IIGS возникла объективная необходимость в усовершенствовании графического интерфейса для используемой этим компьютером операционной системы. Вскоре корпорация Apple выпустила на рынок новую реализацию MacOS, которая получила известность под названием GS/OS System 6.0.1. Текущая версия MacOS имеет обозначение X, она появилась на свет в конце 2001 года. Имеется широчайший набор программного обеспечения, рассчитанного на работу под управлением MacOS X, а сама платформа отличается поразительным быстродействием, эффективностью и надежностью. Мобильные операционные системы В настоящее время интерес пользователей привлекают смартфоны на различных операционных системах: Windows Phone, Boda, IOS. Самыми популярными из них являются iOS и Android. IOS — мобильная операционная система, созданная на ядре Linux и разрабатываемой и выпускаемой американской компанией Apple. Была выпущена в 2007 году изначально — для iPhone и iPod Touch. В настоящее время она установлена на всех устройствах Apple. Такие нововведения как мобильный браузер Safari, визуальная голосовая почта, виртуальная клавиатура сделали IOS одной из наиболее популярных систем для смартфонов. Андроид — система, которая наиболее динамично развивается, разработана для смартфонов (изначально для коммуникаторов). Она является упрощенным вариантом аналогичных систем Windows и Linux, используемых на стационарных ПК и ноутбуках, ориентированной для тачскрина. Платформа Андроид состоит из операционной системы, интерфейса, связывающего ПО и мощных приложений. Chrome OS позиционируется как операционная система для различных устройств — от маленьких нетбуков до полноразмерных настольных систем и поддерживает X86-и ARM-архитектуры процессоров. Новая ОС Google Chrome имеет открытый исходный код, основанный на оптимизированном Linux-ядре, и управляется браузером Chrome. Главной особенностью будет доминирование веб-приложений над обычными функциями ОС. Ключевая роль при этом отводится браузеру. Стратегия создания нового продукта подразумевает архитектуру, нетребовательную к аппаратным ресурсам персонального компьютера, используемого для выхода в сеть Интернет. Все приложения, которые запускает система — веб-сервисы. Фактически, все действия, проходящих на компьютере, выполняются в Интернете — нет необходимости устанавливать никаких офлайновых приложений. В связи с этим работа в Chrome OS не требует наличия у компьютера мощных ресурсов, все процессы запускаются не на самом компьютере, а на серверах соответствующих служб. |