Лекция 3. Классификация ОС. ОС мейнфреймов. Серверные ОС. Многопроцессорные ОС. ОС персонального компьютера. Встроенные ОС. ОС сенсорных узлов. ОС реального времени. ОС смарт-карт. (2-часа)
История операционных систем уже насчитывает более полувека. За это время было разработано огромное количество разнообразных операционных систем, но не все из них получили широкую известность. В данном разделе мы вкратце коснемся девяти операционных систем.
1. Операционные системы мейнфреймов
К высшей категории относятся операционные системы мейнфреймов (больших универсальных машин) — компьютеров, занимающих целые залы и до сих пор еще встречающихся в крупных центрах обработки корпоративных данных. Такие компьютеры отличаются от персональных компьютеров по объемам ввода-вывода данных. Мейнфреймы, имеющие тысячи дисков и петабайты данных — весьма обычное явление, а персональный компьютер с таким арсеналом стал бы предметом зависти. Мейнфреймы также находят применение в качестве мощных веб-серверов, серверов крупных интернет-магазинов и серверов, занимающихся межкорпоративными транзакциями.
Операционные системы мейнфреймов ориентированы преимущественно на одновременную обработку множества заданий, большинство из которых требует колоссальных объемов ввода-вывода данных. Обычно они предлагают три вида обслуживания: пакетную обработку, обработку транзакций и работу в режиме разделения времени.
Пакетная обработка — это одна из систем обработки стандартных заданий без участия пользователей. В пакетном режиме осуществляется обработка исков в страховых компаниях или отчетов о продажах сети магазинов.
Системы обработки транзакций справляются с большим количеством мелких запросов, к примеру обработками чеков в банках или бронированием авиабилетов. Каждая элементарная операция невелика по объему, но система может справляться с сотнями и тысячами операций в секунду.
Работа в режиме разделения времени дает возможность множеству удаленных пользователей одновременно запускать на компьютере свои задания, например запросы к большой базе данных. Все эти функции тесно связаны друг с другом, и зачастую операционные системы универсальных машин выполняют их в комплексе. Примером операционной системы универсальных машин может послужить OS/390, наследница OS/360. Однако эти операционные системы постепенно вытесняются вариантами операционной системы UNIX, например Linux.
2. Серверные операционные системы
Чуть ниже по уровню стоят серверные операционные системы. Они работают на серверах, которые представлены очень мощными персональными компьютерами, рабочими станциями или даже универсальными машинами. Они одновременно обслуживают по сети множество пользователей, предоставляя им общий доступ к аппаратным и программным ресурсам. Серверы могут предоставлять услуги печати, хранения файлов или веб-служб. Интернет-провайдеры для обслуживания своих клиентов обычно задействуют сразу несколько серверных машин. При обслуживании веб-сайтов серверы хранят веб-страницы и обрабатывают поступающие запросы. Типичными представителями серверных операционных систем являются Solaris, FreeBSD, Linux и Windows Server 200x.
3. Многопроцессорные операционные системы
Сейчас все шире используется объединение множества центральных процессоров в единую систему, что позволяет добиться вычислительной мощности, достойной высшей лиги.. В зависимости от того, как именно происходит это объединение, а также каковы ресурсы общего пользования, эти системы называются параллельными компьютерами, мультикомпьютерами или многопроцессорными системами.
Им требуются специальные операционные системы, в качестве которых часто применяются особые версии серверных операционных систем, оснащенные специальными функциями связи, сопряжения и синхронизации.
С недавним появлением многоядерных процессоров для персональных компьютеров операционные системы даже обычных настольных компьютеров и ноутбуков стали работать по меньшей мере с небольшой многопроцессорной системой. Со временем, похоже, число ядер будет только расти. К счастью, за годы предыдущих исследований были накоплены обширные знания о многопроцессорных операционных системах, и использование этого арсенала в многоядерных системах не должно вызвать особых осложнений. Труднее всего будет найти приложения, которые смогли бы использовать всю эту вычислительную мощь. На многопроцессорных системах могут работать многие популярные операционные системы, включая Windows и Linux.
4. Операционные системы персональных компьютеров
К следующей категории относятся операционные системы персональных компьютеров. Все их современные представители поддерживают многозадачный режим. При этом довольно часто уже в процессе загрузки на одновременное выполнение запускаются десятки программ. Задачей операционных систем персональных компьютеров является качественная поддержка работы отдельного пользователя.
Они широко используются для обработки текстов, создания электронных таблиц и доступа к Интернету. Типичными примерами могут послужить операционные системы Linux, FreeBSD, Windows Vista и Macintosh. Операционные системы персональных компьютеров известны настолько широко, что в особом представлении не нуждаются. По сути, многим людям даже невдомек, что существуют другие разновидности операционных систем.
5. Операционные системы карманных персональных компьютеров
Продолжая двигаться по нисходящей ко все более простым системам, мы дошли до карманных персональных компьютеров (КПК, или PDA, Personal Digital Assistant — персональных цифровых секретарей) — небольших компьютеров, умещающихся в кармане рубашки и выполняющих сравнительно небольшой набор функций, вроде электронного адресного справочника или записной книжки. Более того, от КПК уже практически ничем, кроме клавиатуры и экрана, не отличаются многие мобильные телефоны. В действительности КПК и мобильные телефоны по сути уже стали одним и тем же устройством, отличаясь, в основном, по размеру, весу и пользовательскому интерфейсу. Почти все они работают на базе 32-разрядных процессоров, имеющих защищенный режим, и под управлением довольно сложных операционных систем.
Операционные системы, работающие на этих карманных устройствах, все более и более усложняются, в них появляются возможности управления функциями, относящимися к телефонии, цифровой фотографии и другим областям.
На многих из них также работают приложения сторонних разработчиков.
Фактически некоторые из них начинают напоминать операционные системы персональных компьютеров десятилетней давности. Одно из основных отличий КПК от персональных компьютеров состоит в том, что первые не имеют жестких дисков емкостью, составляющей многие гигабайты, но положение быстро меняется.
Две наиболее популярные операционные системы, использующиеся в КПК, — это Symbian OS и Palm OS(Сейчас у нас сложно назвать популярной Palm OS. Зато явно стоит упомянуть Windows Mobile (встречающуюся в разных версиях) и различные специализированные версии ОС Linux, включая недавно появившуюся систему Android.).
6. Встроенные операционные системы
Встроенные системы работают на компьютерах, которые управляют различными устройствами. Поскольку на этих системах установка пользовательских программ не предусматривается, их обычно компьютерами не считают. Примерами устройств, где устанавливаются встроенные компьютеры, могут послужить микроволновые печи, телевизоры, автомобили, пишущие DVD, сотовые телефоны и МРЗ-плееры.
В основном встроенные системы тем, что на них ни при каких условиях не будет работать стороннее программное обеспечение. В микроволновую печь невозможно загрузить новое приложение, поскольку все ее программы записаны в ПЗУ.
Следовательно, отпадает необходимость в защите приложений друг от друга и операционную систему можно упростить. Наиболее популярными в этой области читаются операционные системы QNX и VxWorks.
7. Операционные системы сенсорных узлов
Сети, составленные из миниатюрных сенсорных узлов, связанных друг с другом и с базовой станцией по беспроводным каналам, развертываются для различных целей. Такие сенсорные сети используются для защиты периметров зданий, охраны государственной границы, для обнаружения возгораний в лесу, измерения температуры и уровня осадков в целях составления прогнозов погоды, сбора информации о перемещениях противника на поле боя и многого другого.
Узлы такой сети представляют собой миниатюрные компьютеры, питающиеся от батареи и имеющие встроенную радиосистему Они ограничены по мощности и должны работать длительный период времени в необслуживаемом режиме на открытом воздухе, часто в тяжелых климатических условиях. Сеть должна быть достаточно надежной и допускать отказы отдельных узлов, что по мере потери емкости батарей питания будет случаться все чаще.
Каждый сенсорный узел является настоящим компьютером, оснащенным процессором, оперативной памятью и постоянным запоминающим устройством, а также одним или несколькими датчиками. На нем работает небольшая, но настоящая операционная система, обычно управляемая событиями — откликающаяся на внешние события или периодически производящая измерения по сигналам встроенных часов. Операционная система должна быть небольшой по объему и несложной, поскольку основной проблемой этих узлов является малая емкость оперативной памяти и ограниченное время работы батарей. Так же как и у встроенных систем, все программы являются предварительно загруженными, и пользователи не могут внезапно запустить программу, загруженную из Интернета, что значительно упрощает всю конструкцию. Примером широко известной операционной системы для сенсорных узлов может послужить TinyOS.
8. Операционные системы реального времени
Еще одна разновидность операционных систем — это системы реального времени. Эти системы характеризуются тем, что время для них является ключевым параметром. Например, в системах управления производственными процессами компьютеры, работающие в режиме реального времени, должны собирать сведения о процессе и использовать их для управления станками на предприятии. Достаточно часто они должны отвечать очень жестким временным требованиям.
Например, когда автомобиль перемещается по сборочному конвейеру, то в определенные моменты времени должны осуществляться вполне конкретные операции.
Если сварочный робот приступит к сварке с опережением или запозданием, машина придет в негодность. Если операция должна быть проведена точно в срок (или в определенный период времени), то мы имеем дело с системой жесткого реального времени. Множество подобных систем встречается при управлении производственными процессами, в авиационно-космическом электронном оборудовании, в военной и других подобных областях применения. Эти системы должны давать абсолютные гарантии, что определенные действия будут осуществляться в конкретный момент времени.
Другой разновидностью подобных систем является система мягкого реального времени, в которой хотя и не желательно, но вполне допустимо несоблюдение срока какого-нибудь действия, что не наносит непоправимого вреда. К этой категории относятся цифровые аудио- или мультимедийные системы. Цифровые телефоны также являются системами мягкого реального времени.
Поскольку к системам реального времени предъявляются очень жесткие требования, иногда операционные системы представляют собой простую библиотеку, сопряженную с прикладными программами, где все тесно взаимосвязано и между частями этой системы не существует никакой защиты. Примером такой системы может послужить e-Cos.
Категории операционных систем для КПК, встроенных систем и систем реального времени в значительной степени перекрываются друг с другом по свойственным им признакам. Практически все они имеют по крайней мере некоторые аспекты систем мягкого реального времени. Встроенные системы и системы реального времени работают только с тем программным обеспечением, которое вложили в них разработчики этих систем; пользователи не могут добавить в этот арсенал собственное программное обеспечение, что существенно облегчает решение задач защиты. КПК и встроенные системы предназначены для индивидуальных потребителей, а системы реального времени больше используются в промышленном производстве. Тем не менее, несмотря на все это, у них есть определенное количество общих черт.
9. Операционные системы смарт-карт
Самые маленькие операционные системы работают на смарт-картах. Смарт-карта представляет собой устройство размером с кредитную карту, имеющее собственный процессор. На операционные системы для них накладываются очень жесткие ограничения по требуемой вычислительной мощности процессора и объему памяти.
Некоторые из смарт-карт получают питание через контакты считывающего устройства, в которое вставляются, другие — бесконтактные смарт-карты — получают питание за счет эффекта индукции, что существенно ограничивает их возможности.
Некоторые из них способны справиться с одной-единственной функцией, например с электронными платежами, но существуют и многофункциональные смарт-карты.
Зачастую они являются патентованными системами.
Некоторые смарт-карты рассчитаны на применение языка Java. Это значит, что ПЗУ смарт-карты содержит интерпретатор Java Virtual Machine (JVM — виртуальной машины Java). На карту загружаются Java-апплеты (небольшие программы), которые выполняются JVM-интерпретатором. Некоторые из этих карт способны справляться сразу с несколькими Java-апплетами, что влечет за собой работу в мультипрограммном режиме и необходимость установки очередности выполнения программ.
При одновременном выполнении двух и более апплетов приобретают актуальность вопросы управления ресурсами и защиты, которые должны быть решены с помощью имеющейся на карте операционной системы (как правило, весьма примитивной).
Поделиться с друзьями: