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