Коротко о главном помощнике в управлении компьютером и другими гаджетами для тех, кому лень читать Таненбаума.
Андрей Камардин
Ведущий системный инженер в «Ростелекоме». Эксперт Skillbox по администрированию Windows и работе с PowerShell.
Преподаёт в МАИ.
Компьютер, смартфон или планшет — это совокупность «железа», к которому относятся, например, процессор и видеокарта, и программного обеспечения. Они так бы и оставались всего лишь железом, если бы не операционная система, которая позволяет запускать на устройствах приложения, обеспечивает их совместную слаженную работу и взаимодействие с пользователем. С большинством ОС вы уже хорошо знакомы — это Windows, Linux, Android, iOS и другие.
В этой статье мы расскажем о том, как в общем устроена операционная система, какими были первые операционки и как они эволюционировали.
Что такое операционная система
Любые компьютеры, будь то ПК, ноутбуки, смартфоны или планшеты, состоят из двух групп компонентов:
- Аппаратной части — процессора, оперативной памяти, клавиатуры, компьютерной мыши и так далее.
- Программного обеспечения — системного и прикладного софта.
Чтобы они понимали друг друга, а пользователь мог взаимодействовать с устройством (запускать приложения), необходим посредник — операционная система.
Операционная система занимает промежуточное положение между пользователем и компонентами устройства
Инфографика: Майя Мальгина для Skillbox Media
ОС выполняет много функций:
- создаёт удобный для пользователя интерфейс;
- стандартизирует доступ к устройствам ввода и вывода, например к клавиатуре и дисплею;
- координирует распределение ресурсов между запущенным программным обеспечением;
- выполняет запросы софта к аппаратной части;
- фиксирует ошибки и проводит их отладку;
- обеспечивает многозадачность программ;
- и так далее.
Компоненты операционной системы
Операционная система представляет собой многослойную структуру, в центре которой находится ядро. Поверх него располагаются драйверы и службы, а оболочкой выступает пользовательский интерфейс.
Общая структура операционной системы
Инфографика: Майя Мальгина для Skillbox Media
Ядро
Это основа операционной системы. Ядро представляет собой часть программного обеспечения, работающую напрямую с компонентами компьютера. Также оно отвечает за управление процессами, памятью компьютера, файловой системой, обработку входных и выходных данных.
Ядра бывают монолитными и модульными. В первых все инструменты, необходимые для работы, находятся внутри одной программы. Например, такое ядро использовалось в DOS. Но сейчас монолитных ядер почти не осталось, так как все операционные системы перешли на модульную архитектуру.
В модульном ядре все компоненты разделены на небольшие блоки, которые работают независимо друг от друга. Такая структура более стабильна, так как ошибки в одном компоненте не приводят к остановке всей системы. ОС с модульными ядрами в свою очередь бывают двух видов: с микроядрами, как, например, QNX и Symbian, и монолитные с подгружаемыми модулями — Windows и Linux.
Драйверы
Это программное обеспечение, благодаря которому операционная система работает с подключённым в устройстве «железом». Без драйверов она не узнает, что могут делать видеокарта, клавиатура, принтер и другие комплектующие и как правильно отправлять к ним запросы.
Пользовательский интерфейс
Бывает графическим (GUI) и командным (CLI).
Виды операционных систем
Все существующие ОС можно классифицировать по нескольким признакам: разрядности, типу лицензии и области применения.
По разрядности
Битность операционной системы характеризует длину двоичных чисел, с которыми она способна работать (помним, что в компьютере вся информация, в том числе текст и изображения, представляется в виде 1 и 0). Чтобы рассчитать максимальную длину числа в 32-битной системе, нужно возвести 2 в 32-ю степень:
2^32 = 4 294 967 296
Это также означает, что максимальное значение адреса ячейки ОЗУ, к которой может обратиться 32-битная система, не может превышать 4 294 967 296. Отсюда и ограничение на объём оперативной памяти в 4 ГБ.
Все современные версии операционных систем на компьютерах и смартфонах являются 64-битными. 32-битные версии иногда используют в устройствах со слабым «железом».
По типу лицензии
Такие ОС можно свободно скачивать, распространять и даже модернизировать под себя. Главный пример — Linux, вариантов которого насчитывается уже более 500.
По области применения
История развития операционных систем
История развития операционных систем насчитывает около 70 лет. За это время простейший набор заданий для мейнфреймов, написанный на перфоленте, эволюционировал в то, что сейчас мы видим на экране компьютера или смартфона.
Всю историю можно разделить на три этапа.
Первый этап (1955–1965 годы)
История операционных систем начинается в 1955 году, когда инженер General Motors Роберт Л. Патрик и программист North American Airlines Оуэн Мок разработали для IBM 704 GM-NAA I/O. Её иногда называли системой ввода — вывода.
GM-NAA I/O позволяла мейнфрейму автоматически выполнять задания по проведению сложных математических вычислений. Их результаты выводились на подключённый принтер. Благодаря этому операторы мейнфрейма могли проводить вычисления без постоянной смены специальных плат.
IBM 704, на котором работала GM-NAA I/O
Фото: NASA
В 1964 году появилась ОС Multics, созданная совместными усилиями Мичиганского университета, General Electric и Bell Labs. В ней была реализована возможность параллельной работы нескольких программ, концепция виртуальной памяти и файловая система на основе дерева каталогов, используемые и сегодня.
Второй этап (1965–1980 годы)
В 1969 году в исследовательской лаборатории Bell Labs разработали ОС Unix. Она — основа современных операционных систем.
Unix поддерживала язык C и протокол TCP/IP. Это первая ОС, которую можно было установить на сервер. К ней могли подключиться компьютеры-клиенты, позволяя одновременно работать нескольким пользователям.
Unix версии 7, работающая в эмуляторе SIMH
Изображение: Robert M. Supnik / WIkimedia Commons
В 1973 году компания Xerox разработала первую операционную систему с графическим интерфейсом — Alto OS. В ней была реализована оконная система с различными типами элементов управления, такими как кнопки, поля ввода и списки.
Так как Alto OS работала только на компьютерах Xerox Alto, которые были дорогими, она использовалась только внутри самой компании Xerox и в некоторых университетах.
Интерфейс Xerox Alto
Изображение: Xerox Corporation
Третий этап (1980 — настоящее время)
В это время появляются персональные компьютеры, доступные не только корпорациям и университетам, но и обычным пользователям.
В 1984 году компания Apple выпускает первую систему для своих Macintosh под названием System 1, созданную на основе Alto OS. С её помощью Стив Возняк планировал избавить пользователей от сложности существующих ОС и вывести компьютеры компании на массовый рынок.
Интерфейс System 1
Изображение: Apple Inc.
Microsoft старалась не отставать и в 1985 году выпустила Windows 1.0. Операционная система не была инновационной, а представляла собой графическую оболочку для MS-DOS, предыдущего продукта, созданного для компании IBM.
Интерфейс Windows 1.0
Изображение: Microsoft Corporation
В 1991 году в игру включается независимый разработчик Линус Торвальдс. На основе Unix он создаёт собственную операционную систему Linux и выкладывает её в открытый доступ.
Так как исходный код Linux распространяется свободно, к развитию системы с самого начала подключается большое число независимых разработчиков. Но первая графическая оболочка для ОС GNOME появилась лишь в 1999 году.
GNOME — первый графический интерфейс для Linux Red Hat
Изображение: WIkimedia Commons
Операционные системы для смартфонов развивались параллельно. С 1998 года разрабатывалась Symbian — ОС для Nokia, а с 1999 года — BlackBerry OS для BlackBerry от компании RIM.
Из современных мобильных операционных систем первой в 2007 году появилась iOS, созданная на ядре Linux компанией Apple.
Инноваций было немного: первый мультитач в мобильном устройстве, виртуальная клавиатура, синхронизация с iTunes и браузер Safari. Главное преимущество той iOS — стабильная работа благодаря разработке под один конкретный девайс.
Интерфейс iPhone OS
Изображение: Apple Inc.
Главным конкурентом iOS стала разработанная в 2008 году Android OS. Её выпустила компания Android Inc., которую позже приобрёл Google. Эта система также создана на ядре Linux, но распространяется с открытым исходным кодом.
Основное отличие Android от конкурентов — возможность кастомизации дизайна и настроек на любом устройстве. Первая версия ОС вышла на смартфоне HTC Dream.
Интерфейс Android Astro
Изображение: HTC Corporation
Популярные операционные системы
С момента разработки первой операционной системы прошло больше 60 лет. Было выпущено огромное количество разных ОС, но к сегодняшнему дню популярность обрели продукты компаний-гигантов и модификации операционных систем с открытым исходным кодом.
Статистика операционных систем для компьютеров и мобильных устройств по доле рынка
Инфографика: Майя Мальгина для Skillbox Media
Любителям тонкой настройки операционной системы и инструментов с открытым исходным кодом подойдут бесплатные Linux-подобные ОС. В них удобно администрировать серверы, работать с базами данных и вообще делать всё то же самое, что и в Windows и macOS.
Такие преимущества ОС, как понятное управление, возможности широкой настройки интерфейса, большой магазин приложений, завоевали «Андроиду» популярность у производителей мобильных устройств и других портативных гаджетов.
Подведём итоги
- Операционная система — это набор программ, обеспечивающих работу компьютера или другого устройства и взаимодействие с ним пользователя.
- Структурно ОС состоит из ядра, драйверов и пользовательского интерфейса.
- Сегодня преимущественно используются 64-битные операционные системы с модульной архитектурой.
- Самые популярные ОС для ПК — Windows и macOS, а для мобильных устройств — Android и iOS.
Адресация — это способность компьютера обращаться к конкретным ячейкам памяти по их адресам.
Мейнфрейм — высокопроизводительный, отказоустойчивый компьютер с большим объёмом оперативной и постоянной памяти. Обычно используется в критически важных системах, таких как вычислительные центры крупных компаний и госучреждений.