Тема 6. Обзор современных операционных систем и оболочек

advertisement
Тема 6. Обзор современных операционных систем и оболочек. Файл tema6.doc C. 1 из 5
Тема 6. Обзор современных операционных систем и оболочек
1. ОС семейств Windows и Unix как доминирующие операционные системы
1.1. ОС Windows
1.2. ОС Unix
2. Характеристики и классы ОС
1. ОС семейств Windows и Unix как доминирующие операционные системы
1.1. ОС Windows
 История развития
В период, предшествующий появлению Windows 2000 (середина-конец 90-х г.г.), ОС Windows
фактически имела две различных ветви: Windows 9х как настольная ОС и Windows NT как серверная. Аббревиатура “NT” означает “New Technology”. Разработчики NT пошли своим путем, создав
операционную систему, весьма отличающуюся от других систем Microsoft, мало с ними совместимую и претендовавшую на роль определяющей основное направление развития ОС Windows.
Каждая из ветвей обладала своими преимуществами согласно назначению, но создавала неудобства при альтернативном использовании. Так, надежная сетевая Windows NT не полностью
устраивала как настольная; например она не поддерживала API DirectX, предназначенный для работы с графикой и звуком.
В итоге возможности первой ветви были добавлены к возможностям Windows NT 4.0 (последней из
NT), результатом чего стала ОС Windows 2000 (коммерческое название ОС, заменившее рабочее
– Windows NT 5.0).
Таким образом, Windows NT трансформировалась в Windows 2000. Сейчас закончили свое существование и операционные системы Windows 9х (в том числе WinMe). В мае 2004 г. Фирма Intel
объявила о прекращении поддержки Windows 98 в драйверах материнских плат, которые начинают
выпускаться с указанного месяца.
 Версии
ОС Windows 2000 позиционируется как серверная и для профессиональных применений. Выпускается в четырех модификациях:




Windows 2000 Professional;
Windows 2000 Server;
Windows 2000 Advanced Server;
Windows 2000 Datacenter Server.
Windows 2000 Professional является ведущей настольной ОС компьютеров всех основных
категорий, ориентированной на профессиональное применение.
Windows 2000 Server предназначена для создания небольших и средних серверных систем (локальные сети и Web-серверы, базы данных). Windows 2000 Advanced Server – более мощная система для сетевых серверов крупных организаций и провайдеров; хорошо подходит для распределенных баз данных. Windows 2000 Datacenter Server – наиболее мощная и функциональная
серверная ОС фирмы Microsoft.
В предыдущих темах речь шла об ОС Windows NT. При этом название «Windows NT» было использовано сознательно как знаковое, поскольку эта ОС символизирует ведущую идеологию фирмы Майкрософт. Поэтому основные положения, изложенные ранее, полностью относятся к
Windows 2000.
ОС Windows XP является более поздним ответвлением Windows 2000 в сторону развития как
настольной домашней ОС. Ядро остается тем же. Фактические различия заключаются в оформлении GUI и наличии некоторых функций, ориентированных на пользователя и повышающих надежность работы с позиций учета человеческого фактора (восстановление случайно поврежденных
файлов за счет резервных копий, откат драйверов и т.п.). Как программный комплекс эта ОС менее надежна, чем Windows 2000, но реально является самой распространенной из настольных ОС.
Тема 6. Обзор современных операционных систем и оболочек. Файл tema6.doc C. 2 из 5
1.2. ОС Unix
 История развития. Материал этого пункта взят из Интернет. Обзор краток, содержателен и
радует наличием сведений за последний период. Сохранен без изменений. К сожалению, автор
не указан.
http://linuxshop.ru/linuxbegin/article380.html
История легендарной операционной системы UNIX
Середина 1960-х - начало 1970-х
Bell Telephone Laboratories, подразделение американского гиганта AT&T, решает создать совершенно новую операционную систему для компьютеров третьего поколения. К разработке присоединяются корпорация General Electric Company и Массачусеттский институт технологии MIT
(Massachusetts Institute of Technology). ОС, получившая название MULTICS (MULTiplexed
Information and Computing System), должна была стать многозадачной операционной системой с
разделением времени и новым пользовательским интерфейсом, обеспечивающей одновременную
работу нескольких сотен пользователей. Затраты на разработку ОС себя не оправдали, система
получилась ненадежной и громоздкой. Были допущены некоторые серьезные ошибки (в частности,
основным языком программирования выбрали PL/I, далеко не идеально справлявшийся с возложенными на него надеждами), работу над MULTICS прекратили. В 1969 году Bell Labs (в которой
особого внимания заслуживают Ken Tompson и Dennis Ritchie) выходит из проекта. Однако, во
время работы над MULTICS у разработчиков появились новые идеи (в том числе, об архитектуре
файловой системы), которые позже были воплощены в жизнь. Tompson, Ritchie и множество других сотрудников Bell Labs начинают разработку новой операционной системы, стараясь внести в
нее все лучшее, что было в MULTICS. Всеобщими усилиями создаются первая версия ядра, свой
ассемблер, необходимые утилиты. Новую операционную систему, работающую на PDP-7, в память умершей MULTICS называют UNICS (Uniplexed Information and Computing System). Название
придумал еще один важный деятель - Brian Kernighan. Система полностью написана на ассемблере, официальным днем ее рождения стало 1 января 1970 года, начало эпохи (с этого момента и
ведется отсчет времени в секундах в функциях некоторых языков программирования).
Начало - конец 1970-х
В 1971 году патентному подразделению Bell Labs потребовалась система обработки текста. В качестве операционной системы была выбрана UNIX, теперь работающая на более мощном компьютере PDP-11. Сама система занимала 12 (16?) килобайт, прикладные программы - 8 кб, максимальный размер файла ограничивался 64 кб. Assembler стал неудобен из-за слабой переносимости UNIX на разные платформы. Tompson, занимаясь созданием компилятора FORTRAN, придумывает новый язык - B. Ritchie же в свою очередь переработал его в C, способный генерировать
машинный код. В 1973 году большая часть ядра UNIX переписывается на C - теперь ОС может
быть легко перенесена на другие аппаратные платформы, что значительно повышает ее популярность. В Bell Labs уже работает 25 систем, появляется группа UNIX-системщиков - UNIX System
Group (USG). С 1974 года AT&T начинает распространять исходные коды системы в университеты.
Благодаря своей небольшой цене UNIX приобретает новых сторонников, количество ее разработчиков значительно возрастает. Появляются все новые и новые версии системы, называемые редакциями; всего их вышло 10 (с 1971 по 1989 гг.). Первые семь редакций (т.е. до 1979 года включительно) разрабатывались Компьютерной Исследовательской Группой CRG (Computer Research
Group) в Bell Labs при содействии USG и PWB (Programmer's WorkBench), занимающихся сопровождением системы и разработкой среды программирования соответственно; работали они под
PDP-11. После седьмой редакции разработкой занялась USG; работал UNIX под VAX. К 1977 году
число работающих UNIX-систем превысило 500. Тогда же было совершено первое портирование
системы на компьютер, отличный от PDP. В 1978 году выходит первая версия BSD UNIX, разработанная в Калифорнийском университете в Беркли и основанная на шестой редакции. В 1979 году
выходит 3BSD, теперь уже базирующаяся на седьмой редакции и ставшая первой BSD-системой,
перенесенной на VAX.
Начало - конец 1980-х
В 1980 году фирма Bolt, Beranek and Newman (BBN) подписала контракт с Отделом перспективных
исследовательских проектов (DARPA) Министерства обороны США на разработку поддержки протоколов TCP/IP в BSD UNIX. Работа над ней завершается в конце 1981 года, переносится в 4.2BSD
UNIX. В 1982 году AT&T объединила несколько существующих версий UNIX, создав System III.
Данная версия уже была предназначена не для внутреннего использования, а для распространения вне Bell Labs и AT&T. В 1983 году выходит System V, а лаборатория USDL (UNIX System
Development Laboratory), в которую переросла USG, выпускает ее модификацию - System V
Тема 6. Обзор современных операционных систем и оболочек. Файл tema6.doc C. 3 из 5
Release 2. В 1987 году ATTIS (AT&T Information Systems), новое подразделение AT&T, выпускает
System V Release 3. В 1988 году AT&T и Sun Microsystems заключили соглашение о сотрудничестве в разработке последующих версий System V. Другие компьютерные гиганты по-своему отвечают на данный ход - IBM, DEC, Hewlett-Packard создали организацию Open Software Foundation
(OSF). Результатом ее деятельности стала OSF/1 - UNIX операционная система, созданная независимо от AT&T. В 1989 году выходит System V Release 4, вобравшая в себя возможности SunOS
от Sun Microsystems, BSD Unix от Berkley Software Distribution и предыдущих версий System V.
Начало 1990-х - наши дни
В начале 1990-х начинает набирать обороты проект GNU, организованный Richard'ом Stallman'ом и
создающий бесплатное программное обеспечение. А в это время появляется новый человек, существенно повлиявший на дальнейшее развитие UNIX. Им стал Linus Torvalds из Хельсинки (Финляндия), который, будучи в 1991 году студентом второго курса местного университета, заявляет,
что ОС Minix (еще один UNIX-клон) его не устраивает и начинает разработку своей операционной
системы, позже названной Linux. 25 августа 1991 года приходит первое сообщение о появлении
Linux-ядра, а днем рождения Linux'а становится 17 сентября 1991 года, когда выходит версия
0.0.1. Распространяется система в качестве части проекта GNU (до этого главным его достижением был GNU C Compiler, но ему не хватало операционной системы, которой и стал GNU/Linux). Со
временем появляется огромное количество фирм, создающих свои версии Linux'а, берущих за основу общее ядро, модифицруемое тысячами разработчиками по всему миру (руководит процессом
по-прежнему Torvalds) и на свое усмотрение добавляющих существующие, а также свои, приложения. Наибольшей популярности достигают Red Hat Linux, Mandrake Linux, SuSE Linux, Debian
GNU/Linux, Slackware Linux (из русских - ASPLinux, ALT Linux). Кроме Linux'а повсеместно используются и другие многочисленные *nix-системы, среди которых *BSD (FreeBSD, OpenBSD,
NetBSD...), Sun Solaris (бывшая SunOS), AIX (от IBM), HP-UX (от Hewlett-Packard), Mac OS X (ОС от
Apple, с ядром Darwin, основывающемся на FreeBSD), QNX и многие-многие другие.
Примечание: при создании статьи использовались материалы книг "Операционная система UNIX"
А.М. Робачевского и "Эффективная работа: UNIX" С. Немнюгина, М. Чаунина, А. Комолкина.
 Версии и производители (перечень, не претендующий на полноту)
 Калифорнийский университет в Беркли
BSD (Berkley Software Distribution) – семейство ОС, различающихся направленностью на различные сферы применения.
Проект FreeBSD нацелен на повышение производительности и простоту в использовании конечными пользователями. FreeBSD очень ценят в среде веб-хостеров. Эта ОС работает на Intelсовместимых платформах, а также на платформе Alpha фирмы Compaq. Число пользователей
FreeBSD значительно превышает число пользователей других проектов BSD.
Проект NetBSD ставит целью максимальную мобильность (или портабельность) кода: девиз ``конечно, NetBSD работает на этом''. NetBSD поддерживает машины от крошечных палмтопов до
огромных серверов и использовалась NASA в космических миссиях. Это хороший выбор для старой не-Intel аппаратуры.
Проект OpenBSD нацелен на безопасность и ``чистоту'' кода. С помощью комбинирования концепций открытых исходников и скрупулёзного анализа кода проект демонстрирует чудеса корректности работы системы. В силу названных причин совершенно естественно, что OpenBSD выбирают организации, для которых очень важна защита информации, например банки, фондовые биржи
и различные департаменты правительства США. Также как и NetBSD, проект поддерживает целый
ряд аппаратных платформ.
 Sun Microsystems
Sun Solaris в различных версиях. Коммерческая. Мощная, дорогая ОС для больших серверов и
рабочих станций (т.е. направленная на профессиональное применение). Превосходит BSD по
уровню сервиса.
 Santa Crus Operation: SCO. Коммерческая ОС.
 AT&T, Sun, Microsoft
System V Release <№ редакции> (SVR<№ редакции >). Последняя редакция – 5. Объединяет возможности нескольких версий UNIX (BSD, Sun Solaris, предыдущих редакций. UNIX System V считается классической. Позиционируется для мейнфреймов (?).
Тема 6. Обзор современных операционных систем и оболочек. Файл tema6.doc C. 4 из 5
 Hewlett Packard: HP-UX. Коммерческая серверная ОС.
 Множество организаций, верных делу Линуса Торвалдса (см. выше)
Многочисленные клоны Linux. Многоплатформенная ОС. Некоммерческая, с открытым кодом, свободно распространяемая. «Продается» не ОС, а связанные с ним услуги. Ближе к настольным, в
связи с чем многие клоны имеют графический интерфейс.
 Положение дел на практике
В реальной компьютерной жизни формирование вычислительной системы с UNIX в качестве ОС
осуществляется тремя путями.
 Компьютер приобретается вместе с ОС, т.е. ОС сразу ставится на соответствующую платформу
и настраивается конфигурация вычислительной системы.
Это дорогие заказные конфигурации, зачастую выполняемые на собственной платформе фирмы
(как, например, Sun, SGI).
Некоторые типичные конфигурации:
 очень мощный сервер Sun Sparc с ОС Solaris – в качестве сервера сети, рабочей станции,
Web-сервера;
 сервер Hewlett Packard с ОС HP-UX для тех же назначений.
 ОС приобретается отдельно и ставится на каноническую платформу (скорее всего на x86). Это
скорее всего FreeBSD, как вариант – Linux.
 Компьютер приобретается с уже установленной ОС Linux в качестве настольной системы. Такой
Linux имеет графический интерфейс и по своему жизненному циклу схож с Windows.
Эта тенденция имеет место везде, но особенно сильна в России и определяется тем, что фирмы
как правило сейчас продают компьютеры с предустановленной ОС, конфигурация же с ОС Linux в
силу ее бесплатности дешевле, чем с Windows.
 Резюме
Производится множество Unix’ов и Linux’ов организациями самого разного уровня: от крупных известных фирм до самодеятельных.
В зависимости от производителя ОС может быть коммерческой или некоммерческой, а код – открытым или закрытым.
По назначению ОС типа Unix – настольные или серверные; в основном – серверные и сетевые
(для рабочих станций).
Все эти ОС многоплатформенные.
Несмотря на бесчисленное множество клонов, версий, вариантов, существует некоторое множество типовых ситуаций использования ОС и соответствующее множество типовых конфигураций,
соответствующих требованиям пользователя и решаемым задачам.
2. Характеристики и классы ОС
Приводится ряд оснований классификации и соответствующее разделение ОС на классы. Классификация иллюстрируется в основном на доминирующих сейчас ОС Windows и Unix.
Построение единого дерева классификации нереально из-за того, что классификационные признаки в большинстве своем независимы, и ОС, относящиеся по одному признаку к разным классам,
могут по другому признаку входить в один класс.
 Область применения
Настольные
(Windows, Linux – широко
используется, например,
в Германии)
Серверные
(Unix, Windows – для
небольших серверов)
Специализированные,
в том числе встраиваемые
Мобильные
(PalmOS, Windows
CE)
 Аппаратная платформа (список платформ далеко не полон)
x86
(все
Windows и
Unix)
AMD-64 (некоторые
Windows,
многие Unix)
IA-64 (некоторые Windows,
некоторые Unix)
SUN
(Unix,
но не все)
Alpha
(Unix,
но не все)
PowerPC (некоторые Unix, например, SCO)
Тема 6. Обзор современных операционных систем и оболочек. Файл tema6.doc C. 5 из 5
 Число пользователей ОС
Однопользовательские ОС (MS DOS, специализированные)
Многопользовательские (все современные ОС
общего назначения)
 Многопользовательские ОС по числу одновременно работающих пользователей
С одиночным логином: перед входом в систему
очередного пользователя предыдущий должен
ее покинуть (Windows)
С мультилогином: пользователь может войти в
систему во время работы других пользователей
(Unix). Обязательно многозадачная
 Число задач
Однозадачные ( специализированные; DR DOS
– DOS для встраиваемых систем)
Многозадачные (все современные ОС общего
назначения)
 Интерфейс взаимодействия пользователя и ОС
ОС
MS DOS
Консоль (текстовый интерфейс, язык команд)
«родной» и единственно возможный
GUI (графический интерфейс)
отсутствует
Windows
формально есть, но малофункционален
родной, многофункциональный
Unix
родной, многофункциональный
неродной, вторичный
 Встроенная поддержка сетевых возможностей
Нет
(MS DOS)
Есть (Windows: встроенная поддержка протокола TCP/IP, в поставку входит броузер;
Unix: практически все сетевые сервисы входят в комплект поставки)
 Число процессоров
Однопроцессорные
Двухпроцессорные (очень рас- Многопроцессорные
пространенный вариант)
Windows: различные сборки под разное число процессоров. Например, Win2000 Professional поддерживает 2 процессора, вариации Server –4, 8 и 32 соответственно.
Unix: различное количество процессоров в зависимости от структуры ядра (Unix-сервер IBM p690 –
до 32 процессоров Power4)
 Централизация ОС (многопроцессорные ОС)
Симметричные (Windows)
Асимметричные
Unix – в зависимости от ядра
 Архитектура
Централизованное ядро
Микроядро
Unix: в основном с централизованным ядром; есть системы на базе микроядра.
Windows: промежуточное положение, реализация отклоняется от микроядерной концепции.
 Поддержка многопоточности (многонитевости) в рамках одного процесса
Есть (Windows)
Нет (Unix)
 Организация многозадачности
Невытесняющая многозадачность (Windows 3.x)
Вытесняющая многозадачность (Windows, Unix)
 Дисциплина планирования процессов в зависимости от критерия эффективности
Пакетная обработка
Режим реального времени
Режим разделения времени
Средство реализации в современных ОС: вытесняющая многозадачность с использованием приоритетов (плюс различные системные службы) (Windows, Unix)
 Механизм управления памятью
Сегментный (Unix; используется ядром для сегментов кода,
данных и стека процесса)
Страничный
(Windows, Unix)
Сегментностраничный
Related documents
Download